Resolve a content name to a content ID
Look up content in your organization by exact title, case-insensitively, so an agent can turn a human-supplied name into the content_id every other content endpoint needs. Requires the read:content scope (a write-only key cannot enumerate titles) and a plan with content optimization; orgs below that plan get 403. Read-only, no side effects.
The match is exact-but-case-insensitive (lower(title) = lower(name)), scoped to your organization, and excludes trashed content. It is NOT a fuzzy or partial search. Always branch on status:
- ok — exactly one match; content_id is returned and nothing else.
- not_found — no match; only status is present.
- needs_disambiguation — two or more matches; candidates (at most 10), total_matches, and truncated are returned. When truncated is true, total_matches is a LOWER BOUND (11), not a real count: at most 11 rows are ever read, so treat it as "at least this many" and ask for a more specific name rather than paginating. Candidates are ordered newest-updated first.
name is trimmed, must be 1-255 characters and must not contain control characters (any byte below 0x20, or 0x7F) — those are rejected with 400 rather than smuggled into audit logs.
CORS preflight is supported (OPTIONS returns 204; allowed methods POST, OPTIONS; allowed headers Content-Type, X-API-KEY).
Request
- Base URL: https://next.frase.io/api/v1
- URL: https://next.frase.io/api/v1/content/resolve
- Auth: API key in header X-API-KEY
Request body
Response
Resolution result. Always 200 — a name that matches nothing is status: not_found, not a 404.
Changes
No recorded changes to this operation across all 1 revision of this API.