looot Provider Target Catalogs API

The Provider Target Catalogs API from looot — 10 operation(s) for provider target catalogs.

Operations 11

GET /v1/provider-target-catalogs List immutable external provider target catalog versions #
POST /v1/provider-target-catalogs Submit an immutable compare-and-set provider target catalog version #
GET /v1/provider-target-catalogs/{catalogId} Get the current or digest-selected provider target catalog version #
GET /v1/provider-target-catalogs/{catalogId}/diff Diff added, removed, and structurally changed provider targets #
POST /v1/provider-target-catalogs/{catalogId}/imports Quarantine a supplied OpenAPI document against one exact stored catalog digest… #
POST /v1/provider-target-catalogs/{catalogId}/import-plans Plan selected added or changed catalog targets without importing #
POST /v1/provider-target-catalogs/{catalogId}/batch-imports Quarantine supplied OpenAPI documents for selected added or changed targets #
GET /v1/provider-target-catalogs/{catalogId}/progress Page exact-digest catalog targets by durable import and candidate-review stage #
POST /v1/provider-target-catalogs/{catalogId}/review-plans Plan individual candidate review for selected added or changed catalog targets #
POST /v1/provider-target-catalogs/{catalogId}/review-batches Start review for ready selected catalog targets using compare-and-set only #
POST /v1/provider-target-catalogs/{catalogId}/compatibility-batches Create fourteen-gate drafts for accepted receipt-pinned catalog operations #

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/looot:looot-provider-target-catalogs-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

looot-provider-target-catalogs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: looot Provider Target Catalogs API
  version: 0.1.0
  description: Discover, inspect, run, and pay for real (or fixture) provider operations through one bearer token.
servers:
- url: https://api.looot.ai
  description: Public API (default)
- url: https://coset-gateway.onrender.com
  description: Legacy host -- still live, for tokens issued before the public domain existed
- url: http://127.0.0.1:8787
  description: Local development
security:
- bearerAuth: []
tags:
- name: Provider Target Catalogs
paths:
  /v1/provider-target-catalogs:
    get:
      summary: List immutable external provider target catalog versions
      responses:
        '200':
          description: Catalog versions
        '403':
          description: candidates:read scope required
      tags:
      - Provider Target Catalogs
      operationId: getV1ProviderTargetCatalogs
      x-operation-id-source: derived
    post:
      summary: Submit an immutable compare-and-set provider target catalog version
      responses:
        '200':
          description: Idempotent existing version
        '201':
          description: New content-addressed version
        '400':
          description: Invalid manifest
        '403':
          description: candidates:write scope required
        '409':
          description: Stale parent digest
      tags:
      - Provider Target Catalogs
      operationId: postV1ProviderTargetCatalogs
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}:
    get:
      summary: Get the current or digest-selected provider target catalog version
      responses:
        '200':
          description: Immutable catalog version
        '403':
          description: candidates:read scope required
        '404':
          description: Catalog version not found
      tags:
      - Provider Target Catalogs
      operationId: getV1ProviderTargetCatalogsByCatalogId
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}/diff:
    get:
      summary: Diff added, removed, and structurally changed provider targets
      responses:
        '200':
          description: Non-mutating structural diff
        '403':
          description: candidates:read scope required
        '404':
          description: Catalog version not found
      tags:
      - Provider Target Catalogs
      operationId: getV1ProviderTargetCatalogsByCatalogIdDiff
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}/imports:
    post:
      summary: Quarantine a supplied OpenAPI document against one exact stored catalog digest…
      responses:
        '200':
          description: Idempotent existing quarantine with catalog lineage
        '201':
          description: Unreviewed candidates with catalog lineage
        '400':
          description: Blocked evidence, invalid document, or operation mismatch
        '403':
          description: candidates:write scope required
        '404':
          description: Exact catalog digest or target not found
        '409':
          description: Partial prior import state
      tags:
      - Provider Target Catalogs
      operationId: postV1ProviderTargetCatalogsByCatalogIdImports
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}/import-plans:
    post:
      summary: Plan selected added or changed catalog targets without importing
      responses:
        '200':
          description: Read-only target import plan
        '400':
          description: Invalid, duplicate, or unchanged selection
        '403':
          description: candidates:read scope required
        '404':
          description: Catalog version not found
      tags:
      - Provider Target Catalogs
      operationId: postV1ProviderTargetCatalogsByCatalogIdImportPlans
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}/batch-imports:
    post:
      summary: Quarantine supplied OpenAPI documents for selected added or changed targets
      responses:
        '200':
          description: Per-target created, existing, blocked, or invalid outcomes with exact catalog lineage
        '400':
          description: Invalid, duplicate, or unchanged selection
        '403':
          description: candidates:write scope required
        '404':
          description: Catalog version not found
      tags:
      - Provider Target Catalogs
      operationId: postV1ProviderTargetCatalogsByCatalogIdBatchImports
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}/progress:
    get:
      summary: Page exact-digest catalog targets by durable import and candidate-review stage
      parameters:
      - name: digest
        in: query
        required: true
        schema:
          type: string
      - name: stage
        in: query
        schema:
          type: string
      - name: limit
        in: query
        schema:
          type: integer
          minimum: 1
          maximum: 100
      - name: cursor
        in: query
        schema:
          type: string
          pattern: ^target_[a-z0-9_]{1,100}$
          maxLength: 107
      responses:
        '200':
          description: Non-mutating catalog target progress page
        '400':
          description: Invalid filter, limit, or cursor
        '403':
          description: candidates:read scope required
        '404':
          description: Exact catalog version not found
      tags:
      - Provider Target Catalogs
      operationId: getV1ProviderTargetCatalogsByCatalogIdProgress
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}/review-plans:
    post:
      summary: Plan individual candidate review for selected added or changed catalog targets
      responses:
        '200':
          description: Receipt-pinned non-mutating review plan
        '400':
          description: Invalid, duplicate, or unchanged selection
        '403':
          description: candidates:read scope required
        '404':
          description: Exact catalog version not found
      tags:
      - Provider Target Catalogs
      operationId: postV1ProviderTargetCatalogsByCatalogIdReviewPlans
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}/review-batches:
    post:
      summary: Start review for ready selected catalog targets using compare-and-set only
      responses:
        '200':
          description: Per-target transitioned, unchanged, blocked, missing, or conflict outcomes
        '400':
          description: Invalid, duplicate, or unchanged selection
        '403':
          description: candidates:write scope required
        '404':
          description: Exact catalog version not found
      tags:
      - Provider Target Catalogs
      operationId: postV1ProviderTargetCatalogsByCatalogIdReviewBatches
      x-operation-id-source: derived
  /v1/provider-target-catalogs/{catalogId}/compatibility-batches:
    post:
      summary: Create fourteen-gate drafts for accepted receipt-pinned catalog operations
      responses:
        '200':
          description: Per-target created, existing, blocked, missing, not accepted, or conflict outcomes
        '400':
          description: Invalid, duplicate, or unchanged selection
        '403':
          description: candidates:write scope required
        '404':
          description: Exact catalog version not found
      tags:
      - Provider Target Catalogs
      operationId: postV1ProviderTargetCatalogsByCatalogIdCompatibilityBatches
      x-operation-id-source: derived
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer