Event Registry Suggest API

Resolve entity names to URIs for use in search filters.

OpenAPI Specification

event-registry-suggest-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Event Registry (NewsAPI.ai) Articles Suggest API
  description: 'Event Registry (NewsAPI.ai) is the world''s leading news intelligence platform providing a REST API for accessing global news articles, trending topics, event detection, named entities, sentiment analysis, and media monitoring across 150,000+ sources in 60+ languages, with historical archive access dating back to 2014. All requests are POST with JSON bodies and require an apiKey field.

    '
  version: 1.0.0
  contact:
    name: Event Registry Support
    email: info@eventregistry.org
    url: https://newsapi.ai
  termsOfService: https://newsapi.ai/terms
  license:
    name: Proprietary
    url: https://newsapi.ai/plans
servers:
- url: https://eventregistry.org/api/v1
  description: Production API server
security:
- apiKeyAuth: []
tags:
- name: Suggest
  description: Resolve entity names to URIs for use in search filters.
paths:
  /suggestConceptsFast:
    post:
      operationId: suggestConcepts
      summary: Suggest concept URIs by name prefix
      description: 'Look up concept URIs (people, organizations, locations, things) by name prefix. Always resolve entity names to URIs using this endpoint before passing them to conceptUri filters in search operations.

        '
      tags:
      - Suggest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ApiKeyParam'
              properties:
                prefix:
                  type: string
                  description: Short name prefix to search for (1-3 words). Performs prefix matching.
                lang:
                  type: string
                  description: Language for label display and matching. Default "eng".
                conceptType:
                  type: string
                  description: Filter by concept type — "person", "org", "loc", "wiki".
              required:
              - prefix
            example:
              apiKey: YOUR_API_KEY
              prefix: Tesla
              lang: eng
      responses:
        '200':
          description: List of matching concept suggestions with URIs.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SuggestResult'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /suggestCategoriesFast:
    post:
      operationId: suggestCategories
      summary: Suggest category URIs by name prefix
      description: 'Look up news topic category URIs (business, tech, sports, etc.) by name prefix. Use returned URIs in categoryUri filters.

        '
      tags:
      - Suggest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ApiKeyParam'
              properties:
                prefix:
                  type: string
                  description: Short category name prefix to search for.
                lang:
                  type: string
                  description: Language for label display. Default "eng".
              required:
              - prefix
            example:
              apiKey: YOUR_API_KEY
              prefix: Business
      responses:
        '200':
          description: List of matching category suggestions with URIs.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SuggestResult'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /suggestSourcesFast:
    post:
      operationId: suggestSources
      summary: Suggest news source URIs by name prefix
      description: 'Look up news source URIs (e.g., Reuters, BBC) by name prefix. Use returned URIs in sourceUri filters.

        '
      tags:
      - Suggest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ApiKeyParam'
              properties:
                prefix:
                  type: string
                  description: Short source name prefix to search for.
                lang:
                  type: string
                  description: Language for matching. Default "eng".
              required:
              - prefix
            example:
              apiKey: YOUR_API_KEY
              prefix: Reuters
      responses:
        '200':
          description: List of matching source suggestions with URIs.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SuggestResult'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /suggestLocationsFast:
    post:
      operationId: suggestLocations
      summary: Suggest location URIs by name prefix
      description: 'Look up location URIs (countries, cities, regions) by name prefix. Use returned URIs in locationUri or sourceLocationUri filters. Always use English location names.

        '
      tags:
      - Suggest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ApiKeyParam'
              properties:
                prefix:
                  type: string
                  description: Short location name prefix in English.
                lang:
                  type: string
                  description: Language for label display. Default "eng".
              required:
              - prefix
            example:
              apiKey: YOUR_API_KEY
              prefix: Germany
      responses:
        '200':
          description: List of matching location suggestions with URIs.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SuggestResult'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /suggestAuthorsFast:
    post:
      operationId: suggestAuthors
      summary: Suggest author URIs by name prefix
      description: 'Look up journalist/author URIs by name prefix. Use returned URIs in authorUri filters.

        '
      tags:
      - Suggest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ApiKeyParam'
              properties:
                prefix:
                  type: string
                  description: Short author name prefix to search for.
                lang:
                  type: string
                  description: Language for matching. Default "eng".
              required:
              - prefix
            example:
              apiKey: YOUR_API_KEY
              prefix: John Smith
      responses:
        '200':
          description: List of matching author suggestions with URIs.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SuggestResult'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
        message:
          type: string
    ApiKeyParam:
      type: object
      required:
      - apiKey
      properties:
        apiKey:
          type: string
          description: Your NewsAPI.ai API key.
    SuggestResult:
      type: object
      properties:
        uri:
          type: string
          description: Unique URI for the entity, for use in search filters.
        label:
          type: object
          additionalProperties:
            type: string
          description: Display label keyed by language code.
        type:
          type: string
          description: Entity type (concept, source, location, category, author).
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: query
      name: apiKey
      description: 'API key obtained from newsapi.ai/register. Include as a field in the JSON POST body or as a query parameter named apiKey.

        '
externalDocs:
  description: Official API Documentation
  url: https://newsapi.ai/documentation