IntegrationOS · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the One API

8 actions 8 updates servers
Generated by API Evangelist Written by API Evangelist tooling for IntegrationOS's API. It is a proposal applied on top of the contract, not a document IntegrationOS publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

serverscontacttermsOfServicex-documentationx-changelogx-status-pagex-license-notex-error-envelope

Targets 3

$
$.info
$.paths['/v1/passthrough/{key}']

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the One API
  version: 1.0.0
x-provenance:
  generated: '2026-09-13'
  method: generated
  source: openapi/integration-os-one-api-openapi.json
  extends: openapi/integration-os-one-api-openapi.json
  note: >-
    This overlay records API Evangelist's enhancements to the harvested contract. It is never applied
    to the original — the original stays verbatim as the provider published it at
    https://api.withone.ai/docs. Every action below adds information we established by probing or
    reading the provider's own docs, or flags a defect in the published spec.
actions:
  - target: $
    description: >-
      Add the servers[] block the published spec omits entirely. The host is established three ways:
      the OAuth flows in the spec itself point at https://api.withone.ai/oauth/*, the agent card at
      https://withone.ai/.well-known/agent.json declares "api": "https://api.withone.ai", and the
      spec is served from https://api.withone.ai/docs. This is the single most consequential gap in
      the document — as published, a generated client has no base URL.
    update:
      servers:
        - url: https://api.withone.ai
          description: Production API host (established by probe, 2026-09-13)
  - target: $.info
    description: Add the contact, terms and licence links the published info block leaves empty.
    update:
      contact:
        name: One
        url: https://www.withone.ai/contact
      termsOfService: https://www.withone.ai/terms
      x-documentation: https://www.withone.ai/docs/api-reference/introduction
      x-changelog: https://www.withone.ai/changelog
      x-status-page: https://status.withone.ai/
      x-license-note: >-
        info.license.name is an empty string in the published spec. No API licence is stated; the
        knowledge base is separately licensed at https://www.withone.ai/licenses/knowledge.
  - target: $
    description: >-
      Record the platform's OWN error contract, error-envelope shape and correlation header as
      top-level extensions, so a consumer does not have to infer them from response schemas.
    update:
      x-error-envelope:
        schema: '#/components/schemas/ErrorResponse'
        media_type: application/json
        rfc9457: false
        correlation_header: x-one-correlation-id
        artifact: errors/integration-os-problem-types.yml
  - target: $
    description: Record the agent-facing surfaces the REST contract does not mention.
    update:
      x-mcp-server:
        remote: https://mcp.withone.ai/mcp
        transport: streamable-http
        auth: oauth
        local_package: '@withone/mcp'
        tools: 4
        artifact: mcp/integration-os-mcp.yml
      x-agent-card: https://withone.ai/.well-known/agent.json
      x-llms-txt: https://withone.ai/llms.txt
      x-protected-resource-metadata: https://mcp.withone.ai/.well-known/oauth-protected-resource
      x-authorization-server-metadata: https://mcp.withone.ai/.well-known/oauth-authorization-server
  - target: $
    description: >-
      Record the published rate limits and plan ladder, neither of which appears in the contract.
    update:
      x-rate-limits:
        free: 100/min
        starter: 500/min
        pro: 1000/min
        enterprise: custom
        headers_documented: false
        artifact: rate-limits/integration-os-rate-limits.yml
      x-plans:
        count: 4
        artifact: plans/integration-os-plans-pricing.yml
  - target: $
    description: >-
      Record the idempotency and reversibility verdicts an agent needs before it writes.
    update:
      x-idempotency:
        coverage: partial
        header: null
        artifact: conventions/integration-os-conventions.yml
      x-reversibility:
        grade: documented
        windows_published: false
        artifact: conventions/integration-os-conventions.yml
  - target: $.paths['/v1/passthrough/{key}']
    description: >-
      DEFECT FLAG, not a fix. All five Passthrough methods (GET, POST, PUT, PATCH, DELETE) share the
      single operationId `passthrough`, which violates the OpenAPI uniqueness requirement and breaks
      code generation. We do not rewrite the ids — that would put words in the provider's mouth — but
      we record it so the defect is visible and reportable.
    update:
      x-api-evangelist-defect:
        kind: duplicate-operationId
        operationId: passthrough
        affected_methods:
          - get
          - post
          - put
          - patch
          - delete
        severity: high
  - target: $
    description: >-
      Record the spec-content gaps measured on 2026-09-13 so a follow-up with the provider has
      numbers rather than adjectives.
    update:
      x-api-evangelist-coverage:
        operations: 248
        with_operationId: 248
        with_summary: 155
        with_description: 148
        with_tags: 248
        operations_with_inline_example: 45
        schema_level_example_fields: 7
        deprecated: 0
        component_schemas: 224
        webhooks_block: empty
        note: >-
          93 of 248 operations carry no summary and 100 carry no description; only 45 operations
          carry an inline example anywhere in their own object, and components.schemas declares just
          7 `example` fields across 224 schemas. The OpenAPI 3.1 `webhooks:` block is empty although
          15 webhook event types are documented in prose at https://www.withone.ai/docs/webhooks.