AMIRA — Africa Multiple Research Data
Read-only access to AMIRA, the Africa Multiple research-data platform on Omeka S.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (1)
- LOWen fetch
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"amira-mcp-server": {
"url": "https://data.africamultiple.uni-bayreuth.de/mcp"
}
}
}Puntos de conexión remotos
https://data.africamultiple.uni-bayreuth.de/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (35)
🟢get_collection_overview
Start here: corpus counts, text coverage, breakdowns, dates, snapshot freshness and refresh status.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"collection_name": {
"type": "string"
},
"site_url": {
"type": "string"
},
"counts": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"universities": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"items_by_university": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"items_by_research_section": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"items_by_resource_type": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"items_by_language": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"research_sections": {
"type": "array",
"items": {
"type": "string"
}
},
"content_date_range": {
"anyOf": [
{
"type": "object",
"properties": {
"earliest": {
"type": "number"
},
"latest": {
"type": [
"number",
"null"
]
}
},
"required": [
"earliest",
"latest"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"metadata_exposure": {
"type": "string"
},
"data_snapshot": {
"type": "object",
"properties": {
"source": {
"type": "string"
},
"fetched_at": {
"type": "string"
},
"max_modified": {
"type": [
"string",
"null"
]
},
"api_base": {
"type": "string"
},
"note": {
"type": "string"
}
},
"required": [
"source",
"fetched_at",
"max_modified",
"api_base",
"note"
],
"additionalProperties": false
},
"refresh": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"in_flight": {
"type": "boolean"
},
"last_attempt": {
"type": [
"string",
"null"
]
},
"last_success": {
"type": [
"string",
"null"
]
},
"error_class": {
"type": [
"string",
"null"
]
}
},
"required": [
"enabled",
"in_flight",
"last_attempt",
"last_success",
"error_class"
],
"additionalProperties": false
}
},
"required": [
"collection_name",
"site_url",
"counts",
"items_by_resource_type",
"content_date_range",
"data_snapshot",
"refresh"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢search_research_items(keyword, subject, location, location_id, country, ...)
Search digitised research items. Filters are AND-combined; empty results suggest a filter to relax or a stored place name. export links all matches as a file.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Every word must occur in the title, description, abstract, contents or identifiers; quote a phrase to match it exactly",
"type": "string",
"maxLength": 1000
},
"subject": {
"description": "Subject heading, partial (e.g. 'Architecture'). Subjects absorb the former free-form tags — there is no tag filter",
"type": "string",
"maxLength": 1000
},
"location": {
"description": "A place at ANY level of the city→country hierarchy: 'Nigeria' finds Lagos items, 'Lagos' finds only Lagos",
"type": "string",
"maxLength": 1000
},
"location_id": {
"description": "Exact location authority ID, including descendants; avoids homonym matches",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"country": {
"description": "Country only, exact name or common alias ('Côte d'Ivoire' = 'Ivory Coast'). Use `location` for cities",
"type": "string",
"maxLength": 1000
},
"contributor": {
"description": "A person/organisation credited on the item; either name order works",
"type": "string",
"maxLength": 1000
},
"project_id": {
"description": "Project Omeka id",
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "number"
}
]
},
"research_section": {
"description": "e.g. 'Arts & Aesthetics', 'Mobilities'",
"type": "string",
"maxLength": 1000
},
"university": {
"description": "ubt | unilag | ujkz | ufba | external — code or full name",
"type": "string",
"maxLength": 1000
},
"resource_type": {
"description": "e.g. 'Image', 'Text', 'Audio', 'Moving image'",
"type": "string",
"maxLength": 1000
},
"genre": {
"description": "Format/genre descriptor, partial (e.g. 'interview', 'letter', 'photograph')",
"type": "string",
"maxLength": 1000
},
"collection": {
"description": "Item-set title (partial) or id from list_collections",
"type": "string",
"maxLength": 1000
},
"language": {
"description": "Name or ISO code — 'French', 'fr', 'fra' and legacy 'fre' all match",
"type": "string",
"maxLength": 1000
},
"year_from": {
"description": "Keep items whose content dates overlap from this year",
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"year_to": {
"description": "Keep items whose content dates overlap up to this year",
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"has_media": {
"description": "true: only items with digitised files",
"type": "boolean"
},
"added_since": {
"description": "Added to AMIRA on or after this ISO date",
"type": "string",
"maxLength": 40
},
"modified_since": {
"description": "Changed on or after this ISO date",
"type": "string",
"maxLength": 40
},
"export": {
"description": "Return a file link instead of rows",
"type": "string",
"enum": [
"csv",
"jsonl"
]
},
"limit": {
"description": "Default 20, max 100",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_research_item(id, citation_format)
Research-item metadata, linked entities, rights, media files, IIIF manifest and a generated citation (BibTeX/RIS/CSL-JSON). Long fields cap at 25,000 characters.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "number"
}
],
"description": "Omeka id (the number ending its amira_url, e.g. 7392) or a typed id such as research_item:7392"
},
"citation_format": {
"description": "Export format for the generated citation: bibtex (default) → `bibtex`, ris → `ris`, csl-json → `csl_json`",
"type": "string",
"enum": [
"bibtex",
"ris",
"csl-json"
]
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢search_projects(keyword, university, research_section, principal_investigator, member, ...)
Search project names, descriptions and membership. Returns cited summaries and item counts; use get_project for detail.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Matches the project name, an acronym or the description",
"type": "string",
"maxLength": 1000
},
"university": {
"description": "ubt | unilag | ujkz | ufba | external — code or name. A data facet, not a full AMRC list",
"type": "string",
"maxLength": 1000
},
"research_section": {
"description": "Name or id, e.g. 'Knowledges'",
"type": "string",
"maxLength": 1000
},
"principal_investigator": {
"description": "A PI name; either order works ('Oliver Baumann' finds 'Baumann, Oliver')",
"type": "string",
"maxLength": 1000
},
"member": {
"description": "A project member's name; either order works",
"type": "string",
"maxLength": 1000
},
"institution": {
"description": "Funding/affiliated institution name, partial",
"type": "string",
"maxLength": 1000
},
"limit": {
"description": "Default 25, max 100",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_project(id)
Project description, team, sections, funders, item counts by type, top subjects and ten sample research items, with citation links.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"maxLength": 256
},
{
"type": "number"
}
],
"description": "Project Omeka id (e.g. 37700) or typed id project:37700"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_research_sections
Cluster research sections, funding phases, project/item counts and citation links. Includes the external-collection grouping.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_research_section(name, id)
One research section's description, team and projects, each with its research-item count.
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"description": "Section name, e.g. 'Arts & Aesthetics'",
"type": "string",
"maxLength": 1000
},
"id": {
"description": "Section Omeka id or typed id section:218",
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "number"
}
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢search_persons(keyword, affiliation, limit, offset)
Find canonical person authority records. Names accept either order and ignore accents. Use resolve_entity to disambiguate homonyms.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Matches the name, a name variant or an affiliation",
"type": "string",
"maxLength": 1000
},
"affiliation": {
"description": "Matches the person's affiliations only",
"type": "string",
"maxLength": 1000
},
"limit": {
"description": "Default 25, max 100",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_person(name, id)
Person affiliations, authority identifiers, PI/member projects, credited items, publications and top collaborators. Lists cap at 50 with totals. Use id to disambiguate.
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"description": "Full name in either order, with or without accents: 'Beier, Ulli' and 'Ulli Beier' both resolve",
"type": "string",
"maxLength": 1000
},
"id": {
"description": "Exact person Omeka id or typed id (person:123); required to disambiguate homonyms",
"anyOf": [
{
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
{
"type": "string",
"maxLength": 64
}
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_institutions(keyword, limit, offset)
Browse institution authorities by name or acronym (e.g. 'UJKZ'), with project counts and citation links.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Name or acronym, partial",
"type": "string",
"maxLength": 1000
},
"limit": {
"description": "Default 50, max 200",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_institution(name, id)
Institution or group profile: identifiers, members, funded projects and credited items, with citation links.
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"description": "Institution or group name, or an acronym",
"type": "string",
"maxLength": 1000
},
"id": {
"description": "Omeka id or typed id organisation:1224",
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "number"
}
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_cluster_partners(category)
Cluster partner institutions grouped by catalogue category, with citation links.
Esquema de entrada
{
"type": "object",
"properties": {
"category": {
"description": "Optional: amrc | privileged | cooperation | global, or a category label",
"type": "string",
"maxLength": 1000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_groups(keyword, limit, offset)
Browse research groups and associations by name, with citation links.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Name or acronym, partial",
"type": "string",
"maxLength": 1000
},
"limit": {
"description": "Default 50, max 200",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_subjects(keyword, vocabulary, limit, offset)
Subject headings (LCSH or free tags) ranked by distinct research-item count. Feed a heading into search_research_items.subject.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Substring filter on the subject heading",
"type": "string",
"maxLength": 1000
},
"vocabulary": {
"description": "Only Library of Congress headings or only free tags",
"type": "string",
"enum": [
"lcsh",
"tag"
]
},
"limit": {
"description": "Default 50, max 300",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_locations(filters, country, keyword, near, bbox, ...)
Research places with coordinates and ancestor rollups. One item can count under both city and country. Feed a name into search_research_items.location.
Esquema de entrada
{
"type": "object",
"properties": {
"filters": {
"description": "Research-item filters applied before place counts",
"type": "object",
"properties": {
"keyword": {
"type": "string",
"maxLength": 1000
},
"subject": {
"type": "string",
"maxLength": 1000
},
"location": {
"type": "string",
"maxLength": 1000
},
"country": {
"type": "string",
"maxLength": 1000
},
"contributor": {
"type": "string",
"maxLength": 1000
},
"location_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"project_id": {
"anyOf": [
{
"type": "string",
"maxLength": 256
},
{
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
]
},
"research_section": {
"type": "string",
"maxLength": 1000
},
"university": {
"type": "string",
"maxLength": 1000
},
"resource_type": {
"type": "string",
"maxLength": 1000
},
"genre": {
"type": "string",
"maxLength": 1000
},
"collection": {
"type": "string",
"maxLength": 1000
},
"language": {
"type": "string",
"maxLength": 1000
},
"year_from": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"year_to": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"has_media": {
"type": "boolean"
},
"added_since": {
"type": "string",
"maxLength": 40
},
"modified_since": {
"type": "string",
"maxLength": 40
}
},
"additionalProperties": false
},
"country": {
"description": "One country, exact name or alias, plus its cities",
"type": "string",
"maxLength": 1000
},
"keyword": {
"description": "Substring filter on the place name",
"type": "string",
"maxLength": 1000
},
"near": {
"description": "Places within km of a point",
"type": "object",
"properties": {
"latitude": {
"type": "number"
},
"longitude": {
"type": "number"
},
"km": {
"type": "number",
"exclusiveMinimum": 0
}
},
"required": [
"latitude",
"longitude",
"km"
],
"additionalProperties": false
},
"bbox": {
"description": "[west, south, east, north]",
"minItems": 4,
"maxItems": 4,
"type": "array",
"items": {
"type": "number"
}
},
"limit": {
"description": "Default 50, max 300",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_collections(keyword, limit, offset)
Omeka item sets ranked by research-item count, with catalogue links. Feed an ID into search_research_items.collection.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Substring filter on the collection title",
"type": "string",
"maxLength": 1000
},
"limit": {
"description": "Default 50, max 200",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_categories(category, keyword, limit, offset)
Ranked formats, languages or resource types used by research items. Feed values into the corresponding search filters.
Esquema de entrada
{
"type": "object",
"properties": {
"category": {
"type": "string",
"enum": [
"formats",
"genres",
"languages",
"resource_types"
],
"description": "'genres' is an alias of 'formats'. The former 'tags' facet is merged into subjects — use list_subjects"
},
"keyword": {
"description": "Substring filter on the value",
"type": "string",
"maxLength": 1000
},
"limit": {
"description": "Default 100, max 500",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"required": [
"category"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_years(filters, bucket, from, to, sort, ...)
Research-item year/decade histogram with dated and undated counts. A date range counts in each spanned bucket. Supports shared item filters and pagination.
Esquema de entrada
{
"type": "object",
"properties": {
"filters": {
"description": "Research-item filters applied before bucketing",
"type": "object",
"properties": {
"keyword": {
"type": "string",
"maxLength": 1000
},
"subject": {
"type": "string",
"maxLength": 1000
},
"location": {
"type": "string",
"maxLength": 1000
},
"country": {
"type": "string",
"maxLength": 1000
},
"contributor": {
"type": "string",
"maxLength": 1000
},
"location_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"project_id": {
"anyOf": [
{
"type": "string",
"maxLength": 256
},
{
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
]
},
"research_section": {
"type": "string",
"maxLength": 1000
},
"university": {
"type": "string",
"maxLength": 1000
},
"resource_type": {
"type": "string",
"maxLength": 1000
},
"genre": {
"type": "string",
"maxLength": 1000
},
"collection": {
"type": "string",
"maxLength": 1000
},
"language": {
"type": "string",
"maxLength": 1000
},
"year_from": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"year_to": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"has_media": {
"type": "boolean"
},
"added_since": {
"type": "string",
"maxLength": 40
},
"modified_since": {
"type": "string",
"maxLength": 40
}
},
"additionalProperties": false
},
"bucket": {
"description": "Default 'year'",
"type": "string",
"enum": [
"year",
"decade"
]
},
"from": {
"description": "Earliest year to report (inclusive)",
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"to": {
"description": "Latest year to report (inclusive)",
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"sort": {
"description": "Default 'chronological' (oldest first); 'count' ranks by item count",
"type": "string",
"enum": [
"chronological",
"count"
]
},
"limit": {
"description": "Default 200, max 500",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"count": {
"type": "number"
},
"total_matches": {
"type": "number"
},
"offset": {
"type": "number"
},
"has_more": {
"type": "boolean"
},
"next_offset": {
"type": "number"
},
"bucket": {
"type": "string"
},
"sort": {
"type": "string"
},
"distinct_buckets": {
"type": "number"
},
"dated_items": {
"type": "number"
},
"undated_items": {
"type": "number"
},
"year_range": {
"type": "object",
"properties": {
"min": {
"type": "number"
},
"max": {
"type": "number"
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"item_count": {
"type": "number"
},
"year": {
"type": "number"
},
"decade": {
"type": "string"
},
"from": {
"type": "number"
},
"to": {
"type": "number"
}
},
"required": [
"item_count"
],
"additionalProperties": false
}
}
},
"required": [
"count",
"total_matches",
"offset",
"has_more",
"bucket",
"sort",
"distinct_buckets",
"dated_items",
"undated_items",
"results"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": {}
}🟢search_publications(keyword, author, type, venue, subject, ...)
AND-filtered bibliography, newest first. Keyword includes PDF text and returns match snippets. citation_format returns citations per page; export links every match as one file. Cite amira_url.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Title, abstracts, venue, subjects or full text; every word must match, quote a phrase",
"type": "string",
"maxLength": 1000
},
"author": {
"description": "Author/editor name, either name order",
"type": "string",
"maxLength": 1000
},
"type": {
"description": "Exact type; discover values with list_publication_facets",
"type": "string",
"maxLength": 1000
},
"venue": {
"description": "Journal/book title, partial",
"type": "string",
"maxLength": 1000
},
"subject": {
"description": "Subject heading, partial",
"type": "string",
"maxLength": 1000
},
"language": {
"description": "Language name or ISO code",
"type": "string",
"maxLength": 1000
},
"has_fulltext": {
"description": "Filter by extracted full-text availability",
"type": "boolean"
},
"year_from": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"year_to": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"added_since": {
"description": "Added to AMIRA on or after this ISO date",
"type": "string",
"maxLength": 40
},
"citation_format": {
"description": "Omit for summaries; pages carry bibtex, ris or csl_json",
"type": "string",
"enum": [
"bibtex",
"ris",
"csl-json"
]
},
"export": {
"description": "Return a file link instead of rows",
"type": "string",
"enum": [
"csv",
"jsonl",
"bibtex",
"ris",
"csl-json"
]
},
"limit": {
"description": "Default 25; max 100 summaries or 25 exports, also byte-bounded",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_publication(id, citation_format, include_fulltext, fulltext_offset, fulltext_max_chars)
Publication metadata and citation export (BibTeX default). Full text is opt-in and paginated. Cite amira_url; DOI/repository links are additional sources.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "number"
}
],
"description": "Publication Omeka id or typed id publication:29919"
},
"citation_format": {
"description": "Default bibtex; selects bibtex, ris or csl_json field",
"type": "string",
"enum": [
"bibtex",
"ris",
"csl-json"
]
},
"include_fulltext": {
"description": "Default false — set true to include the extracted full text",
"type": "boolean"
},
"fulltext_offset": {
"description": "Start offset into the full text (chars), with include_fulltext",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"fulltext_max_chars": {
"description": "Max full-text characters to return (default/max 25000)",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_publication_facets(facet, keyword, author, type, venue, ...)
Ranked facets for the entire filtered bibliography before pagination. Uses the same selection rules as search_publications.
Esquema de entrada
{
"type": "object",
"properties": {
"facet": {
"type": "string",
"enum": [
"type",
"year",
"language",
"subject",
"author",
"venue"
]
},
"keyword": {
"description": "Title, abstracts, venue, subjects or full text; every word must match, quote a phrase",
"type": "string",
"maxLength": 1000
},
"author": {
"description": "Author/editor name, either name order",
"type": "string",
"maxLength": 1000
},
"type": {
"description": "Exact type; discover values with list_publication_facets",
"type": "string",
"maxLength": 1000
},
"venue": {
"description": "Journal/book title, partial",
"type": "string",
"maxLength": 1000
},
"subject": {
"description": "Subject heading, partial",
"type": "string",
"maxLength": 1000
},
"language": {
"description": "Language name or ISO code",
"type": "string",
"maxLength": 1000
},
"has_fulltext": {
"description": "Filter by extracted full-text availability",
"type": "boolean"
},
"year_from": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"year_to": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"added_since": {
"description": "Added to AMIRA on or after this ISO date",
"type": "string",
"maxLength": 40
},
"limit": {
"description": "Default 25, max 100",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"required": [
"facet"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"facet": {
"type": "string"
},
"total_publications": {
"type": "number"
},
"missing_values": {
"type": "number"
},
"count": {
"type": "number"
},
"total_matches": {
"type": "number"
},
"offset": {
"type": "number"
},
"has_more": {
"type": "boolean"
},
"next_offset": {
"type": "number"
},
"filters": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"requested_limit": {
"type": "number"
},
"effective_limit": {
"type": "number"
},
"response_limited": {
"type": "boolean"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "string"
},
"publication_count": {
"type": "number"
},
"amira_url": {
"type": "string"
}
},
"required": [
"value",
"publication_count"
],
"additionalProperties": false
}
}
},
"required": [
"facet",
"total_publications",
"missing_values",
"count",
"total_matches",
"offset",
"has_more",
"results"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_journals(keyword, limit, offset)
Publication venues ranked by linked bibliography records, with ISSN and catalogue links.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Substring filter on the journal title",
"type": "string",
"maxLength": 1000
},
"limit": {
"description": "Default 50, max 200",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢find_related(entity_type, value, limit)
Subjects, people, places and projects connected through shared records. Per-corpus counts deduplicate each record; subject/person seeds also include publications. Returns ambiguity and cited samples.
Esquema de entrada
{
"type": "object",
"properties": {
"entity_type": {
"type": "string",
"enum": [
"subject",
"location",
"person",
"project"
],
"description": "What the value denotes. Tags are merged into subjects — there is no tag pivot"
},
"value": {
"type": "string",
"maxLength": 1000,
"description": "The entity to pivot on. subject: substring of a heading ('Islam'). location: any level of the city→country hierarchy ('Nigeria' includes Lagos items). person: a name in either order, accent-insensitive ('Beier, Ulli'). project: an Omeka id ('37700'), a legacy key, or a substring of the project label"
},
"limit": {
"description": "Per-list cap, default 20, max 50",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"entity_type",
"value"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢search_podcasts(keyword, series, person, language, year_from, ...)
Search podcast metadata and transcripts. Text-only hits include snippets; full transcripts require get_podcast with opt-in.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Every word must occur in the title, abstract or transcript; quote a phrase to match it exactly",
"type": "string",
"maxLength": 1000
},
"series": {
"description": "Series title, partial (e.g. 'Cluster Conversations')",
"type": "string",
"maxLength": 1000
},
"person": {
"description": "A speaker/host name; either name order works",
"type": "string",
"maxLength": 1000
},
"language": {
"description": "Name or ISO code — 'French', 'fr', 'fra' all match",
"type": "string",
"maxLength": 1000
},
"year_from": {
"description": "Earliest year",
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"year_to": {
"description": "Latest year",
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"limit": {
"description": "Default 20, max 100",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_podcast(id, include_transcript, transcript_offset, transcript_max_chars)
Podcast detail, duration, audio file and citation link; says which model generated the transcript. Transcript is opt-in, bounded and pageable.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "number"
}
],
"description": "Podcast id from search_podcasts, e.g. 39121, or podcast:39121"
},
"include_transcript": {
"description": "Default false — set true to include the transcript text",
"type": "boolean"
},
"transcript_offset": {
"description": "Start offset into the transcript (chars), with include_transcript",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"transcript_max_chars": {
"description": "Max transcript characters to return (default/max 25000)",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢search_videos(keyword, playlist, speaker, language, year_from, ...)
Search video metadata and transcripts. Text-only hits include snippets; full transcripts require get_video with opt-in.
Esquema de entrada
{
"type": "object",
"properties": {
"keyword": {
"description": "Every word must occur in the title, abstract or transcript; quote a phrase to match it exactly",
"type": "string",
"maxLength": 1000
},
"playlist": {
"description": "Playlist title, partial",
"type": "string",
"maxLength": 1000
},
"speaker": {
"description": "A speaker name; either name order works",
"type": "string",
"maxLength": 1000
},
"language": {
"description": "Name or ISO code — 'French', 'fr', 'fra' all match",
"type": "string",
"maxLength": 1000
},
"year_from": {
"description": "Earliest year",
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"year_to": {
"description": "Latest year",
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"limit": {
"description": "Default 20, max 100",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_video(id, include_transcript, transcript_offset, transcript_max_chars)
Video detail, thumbnail and citation link; says how the transcript was produced when recorded. Transcript is opt-in, bounded and pageable.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"anyOf": [
{
"type": "string",
"maxLength": 1000
},
{
"type": "number"
}
],
"description": "Video id from search_videos, e.g. 39218, or video:39218"
},
"include_transcript": {
"description": "Default false — set true to include the transcript text",
"type": "boolean"
},
"transcript_offset": {
"description": "Start offset into the transcript (chars), with include_transcript",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"transcript_max_chars": {
"description": "Max transcript characters to return (default/max 25000)",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢resolve_entity(query, type, limit, offset)
Resolve a label or typed ID to cited candidates. Returns ambiguity instead of merging names. Use a returned id with get_entity_graph or get_* tools.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"type": {
"type": "string",
"enum": [
"person",
"project",
"section",
"organisation",
"location",
"subject",
"format",
"language",
"collection",
"research_item",
"publication",
"journal",
"podcast",
"video",
"playlist"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"count": {
"type": "number"
},
"total_matches": {
"type": "number"
},
"offset": {
"type": "number"
},
"has_more": {
"type": "boolean"
},
"next_offset": {
"type": "number"
},
"requested_limit": {
"type": "number"
},
"effective_limit": {
"type": "number"
},
"response_limited": {
"type": "boolean"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"person",
"project",
"section",
"organisation",
"location",
"subject",
"format",
"language",
"collection",
"research_item",
"publication",
"journal",
"podcast",
"video",
"playlist"
]
},
"label": {
"type": "string"
},
"omeka_id": {
"type": [
"number",
"null"
]
},
"amira_url": {
"type": [
"string",
"null"
]
},
"resolved": {
"type": "boolean"
}
},
"required": [
"id",
"type",
"label",
"omeka_id",
"amira_url",
"resolved"
],
"additionalProperties": false
}
},
"ambiguous": {
"type": "boolean"
},
"snapshot_id": {
"type": "string"
}
},
"required": [
"count",
"total_matches",
"offset",
"has_more",
"results",
"ambiguous",
"snapshot_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_entity_graph(seed, max_nodes, max_edges, edge_id, snapshot_id, ...)
One-hop graph from a typed ID: explicit catalogue links and derived co-occurrence with distinct-record counts and cited evidence. Pass edge_id to page its evidence; pin snapshot_id across pages.
Esquema de entrada
{
"type": "object",
"properties": {
"seed": {
"type": "string",
"minLength": 1,
"maxLength": 256
},
"max_nodes": {
"description": "Default 40, max 100",
"type": "integer",
"minimum": 2,
"maximum": 9007199254740991
},
"max_edges": {
"description": "Default 50, max 200",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"edge_id": {
"type": "string",
"maxLength": 64
},
"snapshot_id": {
"type": "string",
"maxLength": 64
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
},
"limit": {
"description": "Evidence page size, default 20, max 50",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"seed"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"snapshot_id": {
"type": "string"
},
"seed": {
"type": "string"
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"person",
"project",
"section",
"organisation",
"location",
"subject",
"format",
"language",
"collection",
"research_item",
"publication",
"journal",
"podcast",
"video",
"playlist"
]
},
"label": {
"type": "string"
},
"omeka_id": {
"type": [
"number",
"null"
]
},
"amira_url": {
"type": [
"string",
"null"
]
},
"resolved": {
"type": "boolean"
}
},
"required": [
"id",
"type",
"label",
"omeka_id",
"amira_url",
"resolved"
],
"additionalProperties": false
}
},
"edges": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"source": {
"type": "string"
},
"target": {
"type": "string"
},
"kind": {
"type": "string",
"enum": [
"explicit",
"cooccurrence"
]
},
"relation": {
"type": "string"
},
"count": {
"type": "number"
},
"research_item_count": {
"type": "number"
},
"publication_count": {
"type": "number"
},
"video_count": {
"type": "number"
},
"podcast_count": {
"type": "number"
},
"evidence": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"corpus": {
"type": "string"
},
"title": {
"type": "string"
},
"amira_url": {
"type": "string"
}
},
"required": [
"id",
"corpus",
"title",
"amira_url"
],
"additionalProperties": false
}
},
"evidence_total": {
"type": "number"
}
},
"required": [
"id",
"source",
"target",
"kind",
"relation",
"count",
"research_item_count",
"publication_count",
"video_count",
"podcast_count",
"evidence",
"evidence_total"
],
"additionalProperties": false
}
},
"total_edges": {
"type": "number"
},
"truncated": {
"type": "boolean"
},
"bounds": {
"type": "object",
"properties": {
"max_nodes": {
"type": "number"
},
"max_edges": {
"type": "number"
},
"hops": {
"type": "number"
}
},
"required": [
"max_nodes",
"max_edges",
"hops"
],
"additionalProperties": false
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"corpus": {
"type": "string"
},
"title": {
"type": "string"
},
"amira_url": {
"type": "string"
}
},
"required": [
"id",
"corpus",
"title",
"amira_url"
],
"additionalProperties": false
}
},
"count": {
"type": "number"
},
"total_matches": {
"type": "number"
},
"offset": {
"type": "number"
},
"has_more": {
"type": "boolean"
},
"next_offset": {
"type": "number"
},
"requested_limit": {
"type": "number"
},
"effective_limit": {
"type": "number"
},
"response_limited": {
"type": "boolean"
}
},
"required": [
"snapshot_id",
"seed"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_text_passages(ids, keyword, radius, offset, limit)
Find literal accent-insensitive keyword passages in selected publication/video/podcast IDs. Original UTF-16 offsets, bounded context, and citations. Requires full text exposure; no semantic ranking.
Esquema de entrada
{
"type": "object",
"properties": {
"ids": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "string",
"maxLength": 64
},
"description": "publication:, video: or podcast: ids"
},
"keyword": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"radius": {
"type": "integer",
"minimum": 20,
"maximum": 500
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
},
"limit": {
"description": "Default 10, max 20",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"required": [
"ids",
"keyword"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"count": {
"type": "number"
},
"total_matches": {
"type": "number"
},
"offset": {
"type": "number"
},
"has_more": {
"type": "boolean"
},
"next_offset": {
"type": "number"
},
"requested_limit": {
"type": "number"
},
"effective_limit": {
"type": "number"
},
"response_limited": {
"type": "boolean"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"amira_url": {
"type": "string"
},
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"match_start": {
"type": "number"
},
"match_end": {
"type": "number"
},
"text": {
"type": "string"
}
},
"required": [
"id",
"title",
"amira_url",
"start",
"end",
"match_start",
"match_end",
"text"
],
"additionalProperties": false
}
},
"snapshot_id": {
"type": "string"
},
"scanned_matches_capped": {
"type": "boolean"
},
"unavailable_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"count",
"total_matches",
"offset",
"has_more",
"results",
"snapshot_id",
"scanned_matches_capped",
"unavailable_ids"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢compare_collections(cohorts, filters)
Compare 2–4 projects or item sets with identical research-item filters. Reports denominators, missingness, dates and top types/languages; collections can overlap.
Esquema de entrada
{
"type": "object",
"properties": {
"cohorts": {
"minItems": 2,
"maxItems": 4,
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"project",
"collection"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 256
}
},
"required": [
"type",
"id"
],
"additionalProperties": false
}
},
"filters": {
"type": "object",
"properties": {
"keyword": {
"type": "string",
"maxLength": 1000
},
"subject": {
"type": "string",
"maxLength": 1000
},
"location": {
"type": "string",
"maxLength": 1000
},
"country": {
"type": "string",
"maxLength": 1000
},
"contributor": {
"type": "string",
"maxLength": 1000
},
"location_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"project_id": {
"anyOf": [
{
"type": "string",
"maxLength": 256
},
{
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
]
},
"research_section": {
"type": "string",
"maxLength": 1000
},
"university": {
"type": "string",
"maxLength": 1000
},
"resource_type": {
"type": "string",
"maxLength": 1000
},
"genre": {
"type": "string",
"maxLength": 1000
},
"collection": {
"type": "string",
"maxLength": 1000
},
"language": {
"type": "string",
"maxLength": 1000
},
"year_from": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"year_to": {
"type": "integer",
"minimum": 0,
"maximum": 2200
},
"has_media": {
"type": "boolean"
},
"added_since": {
"type": "string",
"maxLength": 40
},
"modified_since": {
"type": "string",
"maxLength": 40
}
},
"additionalProperties": false
}
},
"required": [
"cohorts"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"snapshot_id": {
"type": "string"
},
"overlap_note": {
"type": "string"
},
"cohorts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"id": {
"type": "number"
},
"name": {
"type": "string"
},
"amira_url": {
"type": "string"
},
"total_items": {
"type": "number"
},
"matched_items": {
"type": "number"
},
"missing": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"resource_types": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"languages": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"date_range": {
"anyOf": [
{
"type": "object",
"properties": {
"earliest": {
"type": "number"
},
"latest": {
"type": "number"
}
},
"required": [
"earliest",
"latest"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"type",
"id",
"name",
"amira_url",
"total_items",
"matched_items",
"missing",
"resource_types",
"languages",
"date_range"
],
"additionalProperties": false
}
}
},
"required": [
"snapshot_id",
"overlap_note",
"cohorts"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_data_quality
Snapshot coverage and missing metadata, unresolved loaded-authority links, and sanitized refresh status. Missing catalogue metadata is not evidence of real-world absence.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"snapshot_id": {
"type": "string"
},
"fetched_at": {
"type": "string"
},
"schema_version": {
"type": "number"
},
"counts": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"missing": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"unresolved_entities": {
"type": "number"
},
"literal_entities": {
"type": "number"
},
"refresh": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"in_flight": {
"type": "boolean"
},
"last_attempt": {
"type": [
"string",
"null"
]
},
"last_success": {
"type": [
"string",
"null"
]
},
"error_class": {
"type": [
"string",
"null"
]
}
},
"required": [
"enabled",
"in_flight",
"last_attempt",
"last_success",
"error_class"
],
"additionalProperties": false
}
},
"required": [
"snapshot_id",
"fetched_at",
"schema_version",
"counts",
"missing",
"unresolved_entities",
"literal_entities",
"refresh"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_snapshot_changes(from_id, to_id, corpus, offset, limit)
Page added/updated/deleted records between retained snapshots from this Omeka instance. Lists available snapshot IDs when fewer than two exist. For recent additions without history, use added_since on the search tools.
Esquema de entrada
{
"type": "object",
"properties": {
"from_id": {
"type": "string",
"maxLength": 64
},
"to_id": {
"type": "string",
"maxLength": 64
},
"corpus": {
"type": "string",
"enum": [
"persons",
"organisations",
"locations",
"projects",
"research_sections",
"research_items",
"publications",
"journals",
"podcasts",
"videos",
"playlists",
"languages",
"item_sets",
"subjects"
]
},
"offset": {
"type": "integer",
"minimum": 0,
"maximum": 100000
},
"limit": {
"description": "Default 30, max 100",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"ready",
"history_unavailable"
]
},
"snapshots": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"fetched_at": {
"type": "string"
}
},
"required": [
"id",
"fetched_at"
],
"additionalProperties": false
}
},
"from_id": {
"type": "string"
},
"to_id": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"corpus": {
"type": "string"
},
"id": {
"type": "number"
},
"change": {
"type": "string",
"enum": [
"added",
"updated",
"deleted"
]
},
"title": {
"type": "string"
},
"amira_url": {
"type": "string"
}
},
"required": [
"corpus",
"id",
"change",
"title",
"amira_url"
],
"additionalProperties": false
}
},
"count": {
"type": "number"
},
"total_matches": {
"type": "number"
},
"offset": {
"type": "number"
},
"has_more": {
"type": "boolean"
},
"next_offset": {
"type": "number"
},
"requested_limit": {
"type": "number"
},
"effective_limit": {
"type": "number"
},
"response_limited": {
"type": "boolean"
}
},
"required": [
"status",
"snapshots"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢search(query, limit, types)
Ranked search across items, publications, videos, podcasts, projects and sections. Returns typed IDs, titles and citation URLs. Fetch selected records for evidence.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 1000,
"description": "A few keywords, names, places or themes — e.g. 'Yoruba architecture'. Terms are matched individually, so concise queries beat full sentences"
},
"limit": {
"description": "Default 10, max 50",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"types": {
"description": "Restrict to these record kinds",
"type": "array",
"items": {
"type": "string",
"enum": [
"item",
"publication",
"video",
"podcast",
"project",
"section"
]
}
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Typed record id, e.g. 'item:7392'"
},
"title": {
"type": "string"
},
"url": {
"type": "string",
"description": "The AMIRA/Omeka public record page"
}
},
"required": [
"id",
"title",
"url"
],
"additionalProperties": false
}
},
"requested_limit": {
"type": "number"
},
"effective_limit": {
"type": "number"
}
},
"required": [
"results"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fetch(id, include_transcript, transcript_offset, transcript_max_chars, include_fulltext, ...)
Read a typed search result as a cited document. Full text/transcripts are opt-in and pageable; metadata and text respect exposure policy. Unknown ID returns an error.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 1000,
"description": "A typed record id from search (item:7392, pub:30001, video:…, podcast:…, project:…, section:…) or resolve_entity"
},
"include_transcript": {
"description": "Default false — set true to append the video/podcast transcript",
"type": "boolean"
},
"transcript_offset": {
"description": "Start offset into the transcript (chars), with include_transcript",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"transcript_max_chars": {
"description": "Max transcript characters to return (default/max 25000)",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"include_fulltext": {
"description": "Default false — set true to append a publication's extracted full text",
"type": "boolean"
},
"fulltext_offset": {
"description": "Start offset into the full text (chars), with include_fulltext",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"fulltext_max_chars": {
"description": "Max full-text characters to return (default/max 25000)",
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
},
"max_chars": {
"description": "Cap on the whole returned text body, default/max 25000",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string"
},
"metadata": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"error": {
"description": "Present instead of the record when the id is unknown",
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"suggested_tool": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"additionalProperties": false
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Comunidad
Evidencia