Page cross-references
shamela_get_page_servicesإشارات الصفحة
Read the per-page service markers (Qur'anic verses cited, hadith keys, isnād markers) for a specific (book_id, page_id). Returns has_services plus ayat (cumulative aya_ids), hadeeth (hadith keys), esnad and esnad_count. NOTE: esnad entries are Shamela's RAW markers — «02464 s 2651 3234 1580 …» is a hadith key, a marker, then internal narrator IDS, not names, and they mean nothing on their own; call shamela_get_isnad(book_id, page_id) to get the same chains resolved to narrator names, death years and variant routes. Many books — particularly non-hadith works — have no services and return has_services:false cleanly. Useful to pivot from a search hit to what it cites: pair aya_ids with shamela_get_aya, or hadith keys with shamela_get_books_for_hadith.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| book_id | Yes | The book id. | |
| page_id | Yes | The page id. | |
| response_format | No | Output format for the human-readable text. 'markdown' (default) is best for direct display; 'json' returns the same data as a single JSON code block; 'none' skips the rendered text entirely and returns a one-line pointer, leaving `structuredContent` as the whole answer. The structured data is returned in `structuredContent` regardless of this setting, so a caller that parses it should pass 'none' — the character budget is measured over BOTH channels, and the unread copy is otherwise spending most of it. Requires the 'response_format.none' capability (see shamela_brief). | markdown |