Credit Benchmark entity-resolution API

Entity name resolution endpoints.

OpenAPI Specification

credit-benchmark-entity-resolution-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Credit Benchmark analytics entity-resolution API
  description: 'Authentication, entity resolution, data, analytics, and metadata endpoints.

    '
  version: 1.0.0
  contact:
    name: Credit Benchmark API Support
    email: api-support@creditbenchmark.com
    url: https://creditbenchmark.com/support
  license:
    name: Proprietary
    url: https://creditbenchmark.com/terms
servers:
- url: https://gateway.creditbenchmark.com
  description: Production gateway
security:
- BearerAuth: []
tags:
- name: entity-resolution
  description: Entity name resolution endpoints.
  x-group: Entity Resolution
paths:
  /matching/text/match_external:
    post:
      tags:
      - entity-resolution
      summary: Entity Resolution
      description: Resolves entity names to Credit Benchmark identifiers. Returns ranked candidates with confidence scores.
      operationId: matchExternalEntities
      x-mint:
        href: /api-reference/entity-name-resolution
        metadata:
          title: Entity Resolution
          sidebarTitle: Entity Resolution
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalMatchBody'
            example:
              entities:
              - entity_name: JPMorgan Chase & Co.
                industry: Financials
                country: United States
              - entity_name: Apple Inc.
                lei: 5493000X0X4X4X4X4X4X
              limit: 3
      responses:
        '200':
          description: Entity name resolution results
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MatchExternalResponse'
              example:
                results:
                - entity: JPMorgan Chase & Co.
                  candidates:
                  - rank: 1
                    CBId: CB0000022706
                    CBEntityName: JPMORGAN CHASE & CO
                    CBCountryOfRiskISO: US
                    isConsensus1M: true
                    confidence: 0.82
                  - rank: 2
                    CBId: CB0000118034
                    CBEntityName: JPMORGAN CHASE BANK NA
                    CBCountryOfRiskISO: US
                    isConsensus1M: true
                    confidence: 0.09
                - entity: Apple Inc.
                  candidates:
                  - rank: 1
                    CBId: CB0000000456
                    CBEntityName: APPLE INC
                    CBCountryOfRiskISO: US
                    isConsensus1M: true
                    confidence: 0.97
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '422':
          $ref: '#/components/responses/FrameworkValidationError'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  responses:
    Forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SimpleError'
          example:
            error: Client-backed analytics inputs require contributor entitlement.
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UnauthorizedError'
          example:
            detail: Unauthorized request
    FrameworkValidationError:
      description: Validation error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FastApiValidationErrorResponse'
          example:
            detail:
            - loc:
              - body
              - effective_date
              msg: Input should be a valid integer
              type: int_parsing
    InternalServerError:
      description: Server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SimpleError'
          example:
            error: An error occurred while processing your request. Please try again later.
  schemas:
    MatchExternalResponse:
      type: object
      required:
      - results
      properties:
        results:
          type: array
          description: Table-style results keyed by input entity.
          items:
            $ref: '#/components/schemas/ExternalMatchRow'
    FastApiValidationErrorResponse:
      type: object
      required:
      - detail
      properties:
        detail:
          type: array
          items:
            $ref: '#/components/schemas/FastApiValidationErrorDetail'
    ExternalCandidate:
      type: object
      required:
      - rank
      - CBId
      - CBEntityName
      - confidence
      properties:
        rank:
          type: integer
          description: 1-based rank of the candidate.
        CBId:
          type: string
          description: Credit Benchmark entity identifier.
        CBEntityName:
          type: string
          description: Credit Benchmark entity name.
        CBCountryOfRiskISO:
          type: string
          description: ISO 3166-1 alpha-2 country code when available.
        isConsensus1M:
          type: boolean
          description: 1-month consensus availability flag when available.
        confidence:
          type: number
          description: Matching confidence score.
    FastApiValidationErrorDetail:
      type: object
      properties:
        loc:
          type: array
          items:
            oneOf:
            - type: string
            - type: integer
        msg:
          type: string
        type:
          type: string
    ExternalMatchRow:
      type: object
      required:
      - entity
      - candidates
      properties:
        entity:
          type: string
          description: Original input `entity_name`.
        candidates:
          type: array
          description: Ordered candidates limited by the requested `limit`.
          items:
            $ref: '#/components/schemas/ExternalCandidate'
    ExternalMatchBody:
      type: object
      additionalProperties: false
      properties:
        entities:
          type: array
          description: 'Entities to match using the external route contract. Empty arrays are allowed and return `results: []`.'
          items:
            $ref: '#/components/schemas/ExternalMatchEntity'
          default: []
        limit:
          type: integer
          default: 3
          description: Maximum candidates to return per entity row. Valid integer values are 1 through 10. Omitted or out-of-range integers are normalized to 3; malformed non-integer values fail validation.
    SimpleError:
      type: object
      required:
      - error
      properties:
        error:
          type: string
    UnauthorizedError:
      type: object
      required:
      - detail
      properties:
        detail:
          type: string
    ExternalMatchEntity:
      type: object
      additionalProperties: false
      required:
      - entity_name
      properties:
        entity_name:
          type: string
          minLength: 1
          description: The company or entity name to match. Whitespace is trimmed and blank values are rejected.
        country:
          type: string
          description: Optional country name or ISO 3166-1 alpha-2 country code. Blank values are treated as omitted.
        industry:
          type: string
          description: Optional industry hint. Blank values are treated as omitted.
        lei:
          type: string
          description: Optional LEI hint. Blank values are treated as omitted.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT bearer token.