{"result":{"depiction_url":null,"edges":{"observes":{"objects":[{"created":"2026-11-11T10:47:30Z","object_id":{"id":2017,"is_a":["text","documentation","reference","notification"],"name":"doc_notification_content_types_dispatch","title":"observe_content_types_dispatch\/3","uri":"https:\/\/zotonic.com\/id\/2017"},"seq":1},{"created":"2026-11-11T10:47:30Z","object_id":{"id":2286,"is_a":["text","documentation","reference","notification"],"name":"doc_notification_resource_headers","title":"observe_resource_headers\/3","uri":"https:\/\/zotonic.com\/id\/2286"},"seq":2}],"predicate":{"id":2550,"is_a":["meta","predicate"],"name":"observes","title":{"_type":"trans","tr":{"en":"Observes"}},"uri":"https:\/\/zotonic.com\/id\/observes"}},"subject":{"objects":[{"created":"2026-11-11T10:47:30Z","object_id":{"id":2555,"is_a":["categorization","keyword","keyword_information_type"],"name":"zotonic_topic_reference","title":"Reference","uri":"https:\/\/zotonic.com\/id\/2555"},"seq":1},{"created":"2026-11-11T10:47:30Z","object_id":{"id":2566,"is_a":["categorization","keyword","keyword_audience"],"name":"zotonic_topic_operator","title":"Operator","uri":"https:\/\/zotonic.com\/id\/2566"},"seq":2},{"created":"2026-11-11T10:47:30Z","object_id":{"id":2635,"is_a":["categorization","keyword","keyword_architecture"],"name":"zotonic_topic_module","title":"Module","uri":"https:\/\/zotonic.com\/id\/2635"},"seq":3},{"created":"2026-11-11T10:47:30Z","object_id":{"id":2665,"is_a":["categorization","keyword","keyword_data_type"],"name":"zotonic_topic_structured_data","title":"Structured data","uri":"https:\/\/zotonic.com\/id\/2665"},"seq":4},{"created":"2026-11-11T10:47:30Z","object_id":{"id":2676,"is_a":["categorization","keyword","keyword_technology"],"name":"zotonic_topic_http","title":"HTTP","uri":"https:\/\/zotonic.com\/id\/2676"},"seq":5}],"predicate":{"id":308,"is_a":["meta","predicate"],"name":"subject","title":{"_type":"trans","tr":{"en":"Keyword"}},"uri":"http:\/\/purl.org\/dc\/elements\/1.1\/subject"}}},"export_revision":20,"id":3184,"is_a":["text","documentation","reference","module"],"links":[{"rel":"self","target":"https:\/\/zotonic.com\/.zotonic\/websub\/topic\/3184"},{"rel":"hub","target":"https:\/\/zotonic.com\/.zotonic\/websub"}],"medium":null,"medium_url":null,"name":"doc_module_mod_agent_discovery","page_url":{"en":"https:\/\/zotonic.com\/docs\/3184\/mod_agent_discovery","x-default":"https:\/\/zotonic.com\/docs\/3184\/mod_agent_discovery"},"preview_url":null,"resource":{"version":6,"pivot_location_lat":null,"title":"mod_agent_discovery","is_authoritative":true,"body":"<p>Advertise bounded anonymous reads and existing resource export through <code>\/llms.txt<\/code>,\n<code>\/.well-known\/api-catalog<\/code>, <code>\/openapi.json<\/code> and <code>\/api-help<\/code>.<\/p>\n<p>Enable this module on public publishing sites. Templates using the standard\n<code>{% all include &quot;_html_head.tpl&quot; %}<\/code> hook receive discovery links automatically.\nDiscovery stays in HTTP headers, the HTML head and dedicated documents; no links\nare added to human-facing page bodies or footers.\nResource response headers use the same links and preserve existing Link values.<\/p>\n<p>Discovery metadata and resource visibility checks always use an anonymous\ncontext. Existing model APIs retain their own ACL and authentication behavior.\nThis module does not change permissions, robots rules or API indexing headers.\nAdditional JSON-LD and Turtle support awaits the SPARQL implementation merge.<\/p>\n<p>The <code>description<\/code> configuration is optional public text describing the site.\nIt is not a license grant. Site templates can override <code>agent_api_help.tpl<\/code>.<\/p>\n<p>Discovery model: <code>m.agent_discovery.info<\/code> and <code>m.agent_discovery.links[id]<\/code>.\nContent model: <code>m.agent_content<\/code> provides bounded search, resource, related and\nschema reads. Markdown uses category-aware <code>_agent_content.tpl<\/code> composition and\n<code>_agent_block_&lt;type&gt;.tpl<\/code> renderers. Survey blocks are always excluded.\nContent routes support GET\/HEAD and require ETag revalidation after anonymous\npermission\/publication checks. See the agent discovery guide for request limits.<\/p>","slug":"mod_agent_discovery","doc_module_config":[{"default":"&lt;&lt;&gt;&gt;","description":"Public description of the information available on this site.","has_default":true,"key":"description","module":"mod_agent_discovery","type":"string"}],"is_protected":false,"visible_for":0,"tz":"UTC","language":["en"],"doc_source_hash":"cba0a340b240aace503f9df20d12cfc398858301ed6171dcadb79d7b8aa4966c","is_featured":false,"content_group_id":{"id":2551,"is_a":["meta","content_group"],"name":"content_group_imported_docs","title":"Imported documentation","uri":"https:\/\/zotonic.com\/id\/content_group_imported_docs"},"category_id":{"id":320,"is_a":["meta","category"],"name":"module","title":"Modules","uri":"https:\/\/test.zotonic.com\/id\/320"},"doc_source_path":"apps\/zotonic_mod_agent_discovery\/src\/mod_agent_discovery.erl","publication_start":"2026-11-11T10:47:29Z","github_url":"https:\/\/github.com\/zotonic\/zotonic\/blob\/master\/apps\/zotonic_mod_agent_discovery\/src\/mod_agent_discovery.erl","pivot_location_lng":null,"doc_source_kind":"module","name":"doc_module_mod_agent_discovery","is_unfindable":false,"is_published":true,"pivot_geocode":null,"created":"2026-11-11T10:47:29Z","uri":null,"doc_status":"current","is_dependent":false,"erlang_app":"zotonic_mod_agent_discovery","publication_end":"9999-06-01T00:00:00Z","modifier_id":{"id":1,"is_a":["person"],"name":"administrator","title":"Site Administrator","uri":"https:\/\/zotonic.com\/id\/1"},"privacy":0,"doc_source_commit":"8e6aad17c4d86dee983db46a656ed6f6a930bcbb\n","creator_id":{"id":1,"is_a":["person"],"name":"administrator","title":"Site Administrator","uri":"https:\/\/zotonic.com\/id\/1"},"modified":"2026-11-11T14:06:56Z","title_slug":"mod_agent_discovery"},"uri":"https:\/\/zotonic.com\/id\/3184","uri_template":"https:\/\/zotonic.com\/id\/:id","version":20,"websub":{"hub":"https:\/\/zotonic.com\/.zotonic\/websub","topic":"https:\/\/zotonic.com\/.zotonic\/websub\/topic\/3184"}},"status":"ok"}