# info.description
Structured content and editable baseline direction for agents. Content contract 1.1.0 is the active purchase contract. Legacy products are retired from new sales; settled receipts retain exact recovery. Deliveries are production-material JSON, not audio or provider execution.

# paths./api/v1/samples/content-production-material.json.get.summary
Free synthetic content-format example for evaluation only

# paths./api/v1/samples/content-production-material.json.get.description
Complete Content Artifact 1 shape, not a purchased production resource. Synthetic text; no payment or commercial production licence. Never appears as a purchasable catalogue item.

# paths./api/v1/samples/content-production-material.json.get.responses.200.description
Evaluation-only JSON with exact-byte Content-Digest and ETag

# paths./api/v1/resources.json.get.summary
Discover content and production material before purchase

# paths./api/v1/resources.json.get.description
No query returns the unchanged full {contractVersion,data} catalogue. Any valid nonempty query enables pagination with filters combined by AND and records sorted by id ascending. Optional q searches public metadata only, without relevance ranking, semantic search, translation or paid full-text search. Pagination contains page, limit, total, snapshot, next and previous. Links are canonical absolute URLs retaining filters, limit, page and snapshot; absent links are null. Out-of-range pages return empty data, no next link and a previous link to the last available page. Unknown, duplicate, empty or malformed parameters are rejected. Contract 1.1.0 and paid artifacts are unchanged.

# paths./api/v1/resources.json.get.parameters[].description
Public metadata search: title, metadata.themes, characterLabels, sceneTitles and bibliography person names in all four roles. At most 200 UTF-8 bytes before normalization and 10 whitespace-separated tokens; whitespace is trimmed and collapsed, control characters and queries without any letter or number are rejected. Every token must match a literal case-insensitive Unicode substring somewhere in those labels (AND); punctuation is literal, not query syntax. No full text, relevance ranking, synonyms or translation. Send short topic terms, not user prompts or personal data.

# paths./api/v1/resources.json.get.parameters[].description
Exact, case-sensitive resource type match.

# paths./api/v1/resources.json.get.parameters[].description
Runtime offer availability; only literal true or false is accepted.

# paths./api/v1/resources.json.get.parameters[].description
Positive decimal integer, without signs, leading zeros or fractions.

# paths./api/v1/resources.json.get.parameters[].description
Positive decimal integer, without signs, leading zeros or fractions.

# paths./api/v1/resources.json.get.parameters[].description
SHA-256 token of the complete filtered records before pagination. Follow returned links to preserve it. If records or runtime offers change, 409 catalogue_changed requires restarting from page 1 without a snapshot.

# paths./api/v1/resources.json.get.responses.200.description
Metadata only; no full text or scene direction. Unavailable offers have no purchase URL or payment requirements. Optional pagination does not alter record shape.

# paths./api/v1/resources.json.get.responses.200.headers.Link.description
Fixed service-meta link to the API index and its RFC6570 search URI template, service-desc link to OpenAPI, and service-doc link to the search guide. Available to cross-origin clients through Access-Control-Expose-Headers. Links contain no request query values.

# paths./api/v1/resources.json.get.responses.400.description
invalid_query: unknown, duplicate, empty or malformed query parameter.

# paths./api/v1/resources.json.get.responses.400.headers.Link.description
Fixed service-meta link to the API index and its RFC6570 search URI template, service-desc link to OpenAPI, and service-doc link to the search guide. Available to cross-origin clients through Access-Control-Expose-Headers. Links contain no request query values.

# paths./api/v1/resources.json.get.responses.409.description
catalogue_changed: snapshot no longer matches the filtered catalogue; restart at page 1 without snapshot.

# paths./api/v1/resources.json.get.responses.409.headers.Link.description
Fixed service-meta link to the API index and its RFC6570 search URI template, service-desc link to OpenAPI, and service-doc link to the search guide. Available to cross-origin clients through Access-Control-Expose-Headers. Links contain no request query values.

# paths./api/v1/content.terms.json.get.responses.200.description
Content terms 1.1.0 and runtime payment availability

# paths./api/v1/resources/abner-der-jude-der-nichts-gesehen-hat/content..get.summary
Buy complete content and editable baseline direction in one JSON

# paths./api/v1/resources/abner-der-jude-der-nichts-gesehen-hat/content..get.description
Discover the exact offer through resources.json and content.terms.json. Validate a fresh challenge before authorizing. Replay the identical signed request to recover the same bytes without another settlement. No audio, provider access, guaranteed duration or verification service is included. Representative purchasable resource for discovery probes. Find every current offer at https://api.textus.dev/api/v1/resources.json; full parameterized API: https://api.textus.dev/api/openapi.json.

# paths./api/v1/resources/abner-der-jude-der-nichts-gesehen-hat/content..get.responses.200.description
Settled or recovered exact content artifact

# paths./api/v1/resources/abner-der-jude-der-nichts-gesehen-hat/content..get.responses.404.description
Unknown or editorially unreleased resource; no challenge

# paths./api/v1/resources/abner-der-jude-der-nichts-gesehen-hat/content..get.responses.503.description
Payments unavailable or reconciliation required

# components.schemas.ContentArtifact.properties.basisDirection.properties.nonSpokenSpans.description
Original source spans retained for context but excluded from spoken output, including speaker labels and stage directions. Offsets use paragraph-relative Unicode codepoints.

# components.schemas.ContentArtifact.$defs.rights.properties.evaluationOnly.description
When true, this free synthetic example grants evaluation use only; permittedUses describes the paid contract, not a commercial grant for the sample.

# components.schemas.ResourceDiscovery.properties.pagination.description
Present only for queries. Records are filtered before paging, ordered by id ascending. Follow the canonical links, preserving the snapshot; a changed filtered catalogue returns 409 catalogue_changed.