Structify match API

The match API from Structify — 2 operation(s) for match.

Operations 2

POST /match/create_jobs Create match jobs for all entities in a source table to match against a target table. #
GET /match/list_results Get all match results for entities in a source table. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/structify-match-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

structify-match-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: team@structify.ai
    name: Structify Team
  description: Every enterprise's data team.
  license:
    name: Discuss directly with founders for license.
    url: https://structify.ai
  title: Structify account Match API
  version: 0.1.0
servers:
- description: Production server
  url: https://api.structify.ai
- description: Local server
  url: http://localhost:8080
security:
- api_key: []
- session_token: []
tags:
- name: match
paths:
  /match/create_jobs:
    post:
      description: 'This endpoint creates one job per entity in the source table. Each job will attempt to find

        a matching entity in the target table using LLM-based matching.'
      operationId: create_match_jobs
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateMatchJobsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateMatchJobsResponse'
          description: Successfully created match jobs
      security:
      - api_key: []
      - session_token: []
      summary: Create match jobs for all entities in a source table to match against a target table.
      tags:
      - match
  /match/list_results:
    get:
      description: 'Returns paginated match results showing which entities from the source table

        were matched to entities in target tables, along with the reasoning.'
      operationId: list_match_results
      parameters:
      - description: Dataset name
        in: query
        name: dataset
        required: true
        schema:
          type: string
      - description: Source table name to get matches for
        in: query
        name: source_table
        required: true
        schema:
          type: string
      - description: 'Number of results to return (default: 1000, max: 1000)'
        in: query
        name: limit
        required: false
        schema:
          minimum: 0
          type: integer
      - description: 'Offset for pagination (default: 0)'
        in: query
        name: offset
        required: false
        schema:
          minimum: 0
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/MatchResult'
                type: array
          description: List of match results for the source table
      security:
      - api_key: []
      summary: Get all match results for entities in a source table.
      tags:
      - match
components:
  schemas:
    CreateMatchJobsResponse:
      properties:
        count:
          description: Number of jobs created
          minimum: 0
          type: integer
        job_ids:
          description: IDs of the created match jobs
          items:
            $ref: '#/components/schemas/JobId'
          type: array
      required:
      - job_ids
      - count
      type: object
    EntityId:
      format: uuid
      type: string
    MatchResultId:
      format: uuid
      type: string
    CreateMatchJobsRequest:
      properties:
        conditioning:
          description: Optional conditioning prompt for the LLM matcher
          type: string
        dataset:
          description: Dataset name
          type: string
        node_id:
          allOf:
          - $ref: '#/components/schemas/WorkflowSessionNodeId'
        source_table:
          description: Source table name (entities to match from)
          type: string
        target_table:
          description: Target table name (entities to match to)
          type: string
      required:
      - dataset
      - source_table
      - target_table
      - conditioning
      type: object
    WorkflowSessionNodeId:
      format: uuid
      type: string
    MatchResult:
      properties:
        confidence_score:
          format: double
          type:
          - number
          - 'null'
        created_at:
          format: date-time
          type: string
        id:
          $ref: '#/components/schemas/MatchResultId'
        job_id:
          $ref: '#/components/schemas/JobId'
        match_reason:
          type: string
        source_entity_id:
          $ref: '#/components/schemas/EntityId'
        source_entity_index:
          format: int32
          type:
          - integer
          - 'null'
        target_entity_id:
          $ref: '#/components/schemas/EntityId'
        target_entity_index:
          format: int32
          type:
          - integer
          - 'null'
      required:
      - id
      - job_id
      - source_entity_id
      - target_entity_id
      - match_reason
      - created_at
      type: object
    JobId:
      format: uuid
      type: string
  securitySchemes:
    api_key:
      in: header
      name: api_key
      type: apiKey
    session_token:
      scheme: bearer
      type: http