Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/vufind-org/vufind/llms.txt

Use this file to discover all available pages before exploring further.

The authority API provides access to VuFind’s authority index (SolrAuth), which contains controlled vocabulary records for persons, corporate bodies, geographic names, and subject headings. These endpoints share the same parameter structure as the bibliographic search and record endpoints, but operate against authority data rather than catalog records.

Endpoints

GET /api/v1/authority/search
POST /api/v1/authority/search
GET /api/v1/authority/record
POST /api/v1/authority/record
The authority API uses the same permission model as the bibliographic search and record endpoints. Access is governed by the access.api.Search and access.api.Record permissions respectively. See the API overview for details.

Search endpoint: /api/v1/authority/search

Search the authority index for matching records. The behavior and available parameters mirror the bibliographic search endpoint.

Parameters

lookfor
string
default:""
The search query string. Leave empty to retrieve all authority records.
type
string
The search handler to use against the authority index. Valid values depend on your VuFind authority search configuration. Defaults to the configured default handler.
sort
string
Sort order for results. Valid values depend on your authority sort configuration.
page
integer
default:"1"
Page number (1-indexed). Ignored when resumptionToken is provided.
limit
integer
default:"20"
Number of records per page. Must be between 0 and the configured maximum (default 100).
facet[]
string[]
Authority index facet fields to compute alongside results. Repeat the parameter for multiple facets.
filter[]
string[]
Facet filters to narrow the result set. Use fieldName:value syntax.
field[]
string[]
Authority record fields to include in the response. If omitted, the default fields (id, title, institutions) are returned. See available authority fields below.
resumptionToken
string
Token for cursor-based iteration over large result sets. Pass * to begin from the start. Pass the token returned in a previous response to fetch the next batch. At least one field[] value is required when using cursor mode.

Record endpoint: /api/v1/authority/record

Retrieve one or more authority records by their unique identifiers.

Parameters

id
string | string[]
required
The unique identifier(s) of the authority record(s) to retrieve.
  • Single record: ?id=auth_12345
  • Multiple records: ?id[]=auth_12345&id[]=auth_67890
field[]
string[]
Authority record fields to include in the response. If omitted, the default fields are returned.
prettyPrint
boolean
default:"false"
When true, formats the JSON response with indentation.
callback
string
When provided, wraps the response in a JSONP callback with this function name.

Available authority fields

The following fields can be requested via field[]. Fields marked as default are returned automatically when no field[] parameter is provided.
FieldTypeDefaultDescription
idstringyesRecord unique ID
titlestringyesHeading or name (title including any subtitle)
institutionsstring[]yesInstitutions the record belongs to
fullrecordstringnoFull authority record
The authority record field set is intentionally minimal in the default VuFind configuration. The AuthorityApiRecordFields.yaml file documents placeholders for additional string, keyword, and RDA fields that can be added by customizing the configuration.

Response structure

Both endpoints return the same JSON envelope used by the bibliographic API.

Search response

status
string
required
"OK" on success, "ERROR" on failure.
resultCount
integer
required
Total number of authority records matching the query.
records
array
Array of authority record objects containing the requested fields.
facets
object
Facet results keyed by field name. Present only when facet[] parameters were supplied.
resumptionToken
object
Present only in cursor-based search responses.

Record response

status
string
required
"OK" on success, "ERROR" on failure.
resultCount
integer
required
Number of records returned.
records
array
Array of authority record objects containing the requested fields.

Examples

curl "https://your-vufind-instance.example.org/api/v1/authority/search?\
lookfor=Darwin+Charles\
&limit=5"
{
  "status": "OK",
  "resultCount": 3,
  "records": [
    {
      "id": "auth_n79021383",
      "title": "Darwin, Charles, 1809-1882",
      "institutions": ["Library of Congress"]
    },
    {
      "id": "auth_n85099083",
      "title": "Darwin, Charles Galton, 1887-1962",
      "institutions": ["Library of Congress"]
    }
  ]
}

Error responses

ScenarioHTTP codestatusMessage
id parameter not provided on record endpoint400"Missing id"
More than maxLimit IDs requested400"Record limit (100) exceeded"
Record cannot be loaded400"Error loading record"
Invalid limit value400"Invalid limit"
Invalid search syntax400"Invalid search"
Invalid or expired resumption token400"Invalid or expired token"
No field[] provided with resumptionToken400"Invalid record fields defined"
Permission denied403"Permission denied"
API key required but not provided401(key mode message)
Authority record IDs returned from the search endpoint can be used directly in the record endpoint to fetch full records. Store the id field in search results to enable efficient batch lookups.

Build docs developers (and LLMs) love