Secton API · OpenAPI Overlay 1.0.0

API Evangelist enhancements — Secton Models API

7 actions 7 updates documentation extends ../openapi/secton-api-models-api-openapi.yml
Derived by API Evangelist Built from the contracts Secton API publishes. Secton API did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

descriptioncontacttermsOfServicesecurityx-paginationx-agentic-access401ErrorResponse

Targets 7

$.info
$
$.components.securitySchemes.ApiKeyAuth
$.paths['/v1/models'].get
$.paths['/v1/models'].get.responses
$.components.schemas
$.components.schemas.ModelSchema

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements — Secton Models API
  version: 1.0.0
extends: ../openapi/secton-api-models-api-openapi.yml
x-provenance:
  generated: '2026-08-16'
  method: generated
  source: >-
    Enhancements derived from live probes of https://api.secton.org/v1/models (2026-08-16), the
    first-party npm `secton` 1.0.2 README, https://secton.org/blog/throb-deprecation, and
    https://secton.org/legal/console-terms. The original specification is never mutated.
actions:
  - target: $.info
    description: Add contact, terms and a real description.
    update:
      description: >-
        Model discovery for the Secton inference API. A single GET returns the model identifiers
        available to the calling API key, in the OpenAI `{"object":"list","data":[...]}` envelope.
      contact:
        name: Secton
        url: https://console.secton.org/api
        email: management@secton.org
      termsOfService: https://secton.org/legal/console-terms

  - target: $
    description: >-
      Apply the declared API-key scheme at the document root. The published spec defines
      `ApiKeyAuth` but never applies it, so as written the operation reads as anonymous — while the
      live API returns 401 without a key.
    update:
      security:
        - ApiKeyAuth: []

  - target: $.components.securitySchemes.ApiKeyAuth
    description: Document how the credential is actually transmitted and where it is obtained.
    update:
      description: >-
        API key issued at https://console.secton.org/api, sent in the `Authorization` request
        header. Both `Authorization: <key>` and `Authorization: Bearer <key>` were accepted when
        probed on 2026-08-16.

  - target: $.paths['/v1/models'].get
    description: Describe the operation and record that the list is unpaginated and key-scoped.
    update:
      description: >-
        List the models available to the calling API key. The response is the complete set — there
        is no cursor, page, limit or offset parameter, and no filtering. Visibility is scoped to
        the credential, so two keys may see different lists.
      x-pagination: none
      x-agentic-access:
        action-class: read
        consequence: none
        reversible: true

  - target: $.paths['/v1/models'].get.responses
    description: >-
      Add the 401 the live API actually returns. The published spec declares only 200, so a
      generated client has no error model.
    update:
      '401':
        description: Missing, invalid or expired API key. Observed live 2026-08-16.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ErrorResponse'
            examples:
              missing:
                summary: No Authorization header
                value:
                  error: >-
                    API key is missing from bearer. Get your API key at
                    https://console.secton.org/api
              invalid:
                summary: Unrecognised or expired credential
                value:
                  error: Invalid or expired API key

  - target: $.components.schemas
    description: Add the error envelope the API returns but never declared.
    update:
      ErrorResponse:
        type: object
        description: >-
          Secton's error envelope. Not RFC 9457, and carries no machine-readable code.
        properties:
          error:
            type: string
            description: Human-readable failure message.
        required:
          - error

  - target: $.components.schemas.ModelSchema
    description: >-
      Record the only two model identifiers Secton has published anywhere. The live list could not
      be enumerated because the endpoint requires a key.
    update:
      description: >-
        A model available to the calling key. Secton publishes no model catalogue outside the
        console; the only identifiers it has named in public are `throb-v1`
        (https://secton.org/blog/throb-deprecation, 2025-07-27) and `copilot-zero` (the npm SDK
        README example). Treat both as examples, not as an exhaustive list.
      x-known-values:
        - throb-v1
        - copilot-zero

Work with this as data

Every overlay 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 openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • 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 overlay
curl "https://apis.io/api/v1/overlays/secton-api-models-api-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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.