micro1 · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the micro1 Public API

5 actions 5 updates update extends openapi/micro1-ai-recruiter-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for micro1's API. It is a proposal applied on top of the contract, not a document micro1 publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-slugx-apievangelist-artifactsx-apievangelist-notesx-apievangelist-contract-gapsx-apievangelist-conventionsx-apievangelist-auth-profilex-apievangelist-key-sourcex-apievangelist-undeclared-failures

Targets 3

$.info
$.servers
$.components.securitySchemes.apiKey

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the micro1 Public API
  version: 1.0.0
extends: openapi/micro1-ai-recruiter-openapi.yml
x-generated: '2026-07-31'
x-method: generated
x-source: >-
  Generated from the harvested spec (https://ai-recruiter.micro1.ai/openapi.json) plus the artifacts
  derived in this repo. Captures API Evangelist annotations only — the harvested spec is never
  mutated. Every statement below is grounded in an observed fact recorded in conventions/, errors/,
  lifecycle/, conformance/, asyncapi/ or security/.
actions:
- target: $.info
  update:
    x-apievangelist-slug: micro1
    x-apievangelist-artifacts:
      authentication: authentication/micro1-authentication.yml
      conventions: conventions/micro1-conventions.yml
      errors: errors/micro1-problem-types.yml
      lifecycle: lifecycle/micro1-lifecycle.yml
      conformance: conformance/micro1-conformance.yml
      data_model: data-model/micro1-data-model.yml
      webhooks: asyncapi/micro1-webhooks.yml
      agentic_access: agentic-access/micro1-agentic-access.yml
      mcp: mcp/micro1-mcp.yml
      agent_card: a2a/micro1-a2a.yml
      skills: skills/_index.yml
    x-apievangelist-notes: >-
      micro1's agent surface (A2A agent card, hosted MCP server, published Agent Skill, llms.txt) is
      materially ahead of its API surface (no idempotency, no rate-limit signalling, no API
      versioning, no RFC 9457 errors, no webhook signing, no published compliance program).
- target: $.info
  update:
    x-apievangelist-contract-gaps:
    - id: no-versioning
      detail: No version segment, header or date pinning. info.version 1.0.0 is the only marker.
      evidence: lifecycle/micro1-lifecycle.yml
    - id: no-idempotency
      detail: >-
        No Idempotency-Key on any write. POST /interview/invite and POST /job/{jobId}/applicant
        duplicate on retry.
      evidence: conventions/micro1-conventions.yml
    - id: auth-errors-undeclared
      detail: >-
        401 and 403 are documented in prose on the authentication page but declared on zero
        operations, so generated clients do not model the auth failure path.
      evidence: errors/micro1-problem-types.yml
    - id: opaque-operation-ids
      detail: >-
        15 of 18 operationIds are UUID-suffixed (aiInterviewer-ce2743c0-2309-41eb-8ff2-...), which
        generates unusable client method names and unstable agent tool names.
      evidence: openapi/micro1-ai-recruiter-openapi.yml
    - id: no-declared-tags-object
      detail: Operations carry tags but the root tags[] object is absent, so tags have no descriptions.
      evidence: openapi/micro1-ai-recruiter-openapi.yml
    - id: uuid-schema-names
      detail: >-
        All 75 component schemas are keyed by UUID rather than by name; the human-readable name only
        appears in the schema `title`. Titles are duplicated wholesale — BadRequestResponse and
        InternalServerErrorResponse each appear 18 times as 18 separate schemas — so nothing is reused.
      evidence: openapi/micro1-ai-recruiter-openapi.yml
    - id: no-webhook-signing
      detail: No signature or timestamp header documented for webhook deliveries.
      evidence: asyncapi/micro1-webhooks.yml
    - id: no-hsts-on-api-host
      detail: HSTS is present on www and docs hosts but absent on public.api.micro1.ai.
      evidence: security/micro1-domain-security.yml
- target: $.info
  update:
    x-apievangelist-conventions:
      response_envelope: '{ status: boolean, message: string, data: object|array }'
      pagination: {style: offset, params: [page, limit], filter: keyword}
      auth: {scheme: apiKey, header: x-api-key}
      idempotency: false
      rate_limit_headers: false
- target: $.servers
  update:
  - url: https://public.api.micro1.ai
    description: Production server
    x-apievangelist-probe:
      fetched: '2026-07-31'
      tls: TLSv1.3
      hsts: false
      note: >-
        AWS API Gateway. Unmatched paths return 403 {"message":"Missing Authentication Token"},
        which is a routing miss rather than an authorization denial.
- target: $.components.securitySchemes.apiKey
  update:
    x-apievangelist-auth-profile: authentication/micro1-authentication.yml
    x-apievangelist-key-source: micro1 dashboard (client portal)
    x-apievangelist-undeclared-failures: [401, 403]