Fixture Email API

Fixture Email API as documented publicly: 28 operations. Contract generated from the documentation by API Evangelist (2026-11-08); not the provider's own document.

GitHub OpenAPI

Operations 28

POST /api/attachments/upload stage an attachment ≥ 1 MB (25 MB cap); returns an attachmentId #
DELETE /api/callbacks fixture.email — Docs #
GET /api/callbacks List callbacks (never the signing secret) #
POST /api/callbacks fixture.email — Docs #
DELETE /api/callbacks/{id} fixture.email — Docs #
GET /api/docs Swagger UI for that document (X‑API‑Key required; not public) #
DELETE /api/keys fixture.email — Docs #
GET /api/keys fixture.email — Docs #
POST /api/keys manage API keys #
POST /api/mailboxes POST /api/mailboxes #
GET /api/mailboxes/$MAILBOX/cancel-cleanup fixture.email — Email Testing API #
GET /api/mailboxes/$MAILBOX/disable fixture.email — Email Testing API #
GET /api/mailboxes/$MAILBOX/enable fixture.email — Email Testing API #
GET /api/mailboxes/$MAILBOX/safe-cleanup fixture.email — Email Testing API #
DELETE /api/mailboxes/{mailbox} disable the mailbox (does NOT schedule cleanup) #
GET /api/mailboxes/{mailbox} a mailbox's current state (enabled, scheduledForCleanup, createdAt) #
POST /api/mailboxes/{mailbox}/cancel-cleanup fixture.email — Docs #
POST /api/mailboxes/{mailbox}/disable fixture.email — Docs #
POST /api/mailboxes/{mailbox}/enable re‑enable a disabled mailbox #
POST /api/mailboxes/{mailbox}/safe-cleanup fixture.email — Docs #
GET /api/messages GET /api/messages #
GET /api/openapi.json fixture.email — Docs #
POST /api/send POST /api/send #
POST /api/send/upload send a raw .eml (multipart); optional From/To envelope overrides #
GET /api/usage outbound quota + reputation snapshot #
GET /health fixture.email — Docs #
GET /llms.txt This documentation (no auth) #
GET /mcp GET /mcp #

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/fixture-email:fixture-email-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

fixture-email-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: Fixture Email API
  version: '2026-11-08'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-11-08: 28 operation(s) read from 2 public documentation page(s) (each operation
    names its page in x-source). This is not the provider''s published contract; Fixture Email has published no machine-readable contract that
    the pipeline could find. Engine: local.'
  x-evidence-tiers:
    code-example: 12
    documentation: 16
    pages-with-code: 2
    pages-read: 2
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-11-08'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://fixture.email/docs
  - https://fixture.email/llms.txt
servers:
- url: https://send.fixture.email
paths:
  /api/attachments/upload:
    post:
      operationId: post_api_attachments_upload
      tags:
      - Api
      summary: stage an attachment ≥ 1 MB (25 MB cap); returns an attachmentId
      x-source: https://fixture.email/docs
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostApiAttachmentsUploadResponse'
      x-evidence:
        kind: documentation
  /api/callbacks:
    delete:
      operationId: delete_api_callbacks
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    get:
      operationId: get_api_callbacks
      tags:
      - Api
      summary: List callbacks (never the signing secret)
      x-source: https://fixture.email/llms.txt
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiCallbacksResponse'
      x-evidence:
        kind: documentation
    post:
      operationId: post_api_callbacks
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/callbacks/{id}:
    delete:
      operationId: delete_api_callbacks_id
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/docs:
    get:
      operationId: get_api_docs
      tags:
      - Api
      summary: Swagger UI for that document (X‑API‑Key required; not public)
      x-source: https://fixture.email/llms.txt
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/keys:
    delete:
      operationId: delete_api_keys
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    get:
      operationId: get_api_keys
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    post:
      operationId: post_api_keys
      tags:
      - Api
      summary: manage API keys
      x-source: https://fixture.email/docs
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/mailboxes:
    post:
      operationId: post_api_mailboxes
      tags:
      - Api
      summary: POST /api/mailboxes
      x-source: https://fixture.email/docs
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -sS -X POST https://send.fixture.email/api/mailboxes -H "X-API-Key: $KEY"'
  /api/mailboxes/$MAILBOX/cancel-cleanup:
    get:
      operationId: get_api_mailboxes_MAILBOX_cancel_cleanup
      tags:
      - Api
      summary: fixture.email — Email Testing API
      x-source: https://fixture.email/llms.txt
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiMailboxesMailboxCancelCleanupResponse'
      x-evidence:
        kind: documentation
  /api/mailboxes/$MAILBOX/disable:
    get:
      operationId: get_api_mailboxes_MAILBOX_disable
      tags:
      - Api
      summary: fixture.email — Email Testing API
      x-source: https://fixture.email/llms.txt
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiMailboxesMailboxDisableResponse'
      x-evidence:
        kind: documentation
  /api/mailboxes/$MAILBOX/enable:
    get:
      operationId: get_api_mailboxes_MAILBOX_enable
      tags:
      - Api
      summary: fixture.email — Email Testing API
      x-source: https://fixture.email/llms.txt
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiMailboxesMailboxEnableResponse'
      x-evidence:
        kind: documentation
  /api/mailboxes/$MAILBOX/safe-cleanup:
    get:
      operationId: get_api_mailboxes_MAILBOX_safe_cleanup
      tags:
      - Api
      summary: fixture.email — Email Testing API
      x-source: https://fixture.email/llms.txt
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/mailboxes/{mailbox}:
    delete:
      operationId: delete_api_mailboxes_mailbox
      tags:
      - Api
      summary: disable the mailbox (does NOT schedule cleanup)
      x-source: https://fixture.email/docs
      parameters:
      - name: mailbox
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    get:
      operationId: get_api_mailboxes_mailbox
      tags:
      - Api
      summary: a mailbox's current state (enabled, scheduledForCleanup, createdAt)
      x-source: https://fixture.email/docs
      parameters:
      - name: mailbox
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetApiMailboxesMailboxResponse'
      x-evidence:
        kind: documentation
  /api/mailboxes/{mailbox}/cancel-cleanup:
    post:
      operationId: post_api_mailboxes_mailbox_cancel_cleanup
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      parameters:
      - name: mailbox
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/mailboxes/{mailbox}/disable:
    post:
      operationId: post_api_mailboxes_mailbox_disable
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      parameters:
      - name: mailbox
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/mailboxes/{mailbox}/enable:
    post:
      operationId: post_api_mailboxes_mailbox_enable
      tags:
      - Api
      summary: re‑enable a disabled mailbox
      x-source: https://fixture.email/docs
      parameters:
      - name: mailbox
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/mailboxes/{mailbox}/safe-cleanup:
    post:
      operationId: post_api_mailboxes_mailbox_safe_cleanup
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      parameters:
      - name: mailbox
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/messages:
    get:
      operationId: get_api_messages
      tags:
      - Api
      summary: GET /api/messages
      x-source: https://fixture.email/docs
      parameters:
      - name: mailbox
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl -sS https://send.fixture.email/api/messages?mailbox=<id> -H \"X-API-Key: $KEY\" \n Authentication \n Every /api/* route\
          \ authenticates with an org-scoped API key .\n The MCP accepts that key as an X-API-Key header (or\n Authorization: Bearer <key> ),\
          \ while OAuth-capable clients can follow the\n MCP sign-in challenge and authenticate the single account owner. OAuth creates no API\n\
          \ key and no additiona"
  /api/openapi.json:
    get:
      operationId: get_api_openapi_json
      tags:
      - Api
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/send:
    post:
      operationId: post_api_send
      tags:
      - Api
      summary: POST /api/send
      x-source: https://fixture.email/docs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiSendRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl -sS -X POST https://send.fixture.email/api/send -H "X-API-Key: $KEY" -H "Content-Type: application/json"  -d ''{"to":"inbox+<id>@fixture.email","subject":"hello","text":"hi"}'''
  /api/send/upload:
    post:
      operationId: post_api_send_upload
      tags:
      - Api
      summary: send a raw .eml (multipart); optional From/To envelope overrides
      x-source: https://fixture.email/docs
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /api/usage:
    get:
      operationId: get_api_usage
      tags:
      - Api
      summary: outbound quota + reputation snapshot
      x-source: https://fixture.email/docs
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /health:
    get:
      operationId: get_health
      tags:
      - Health
      summary: fixture.email — Docs
      x-source: https://fixture.email/docs
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /llms.txt:
    get:
      operationId: get_llms_txt
      tags:
      - Llms
      summary: This documentation (no auth)
      x-source: https://fixture.email/llms.txt
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /mcp:
    get:
      operationId: get_mcp
      tags:
      - Mcp
      summary: GET /mcp
      x-source: https://fixture.email/docs
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl\n --data-urlencode ); the server decodes. Malformed encoding → 400 . \n Quota & reputation \n Only external sends count.\
          \ GET /api/usage returns your\n authoritative, scaled caps and is discriminated by plan : \n Trial: 50 external sends/day, 250 total\
          \ across the trial; a trial\n 429 includes a checkoutUrl to upgrade. \n Paid: 500/day and 15,000/month per purchased unit (buy N units\n\
          \ at checkout to s"
components:
  schemas:
    PostApiAttachmentsUploadResponse:
      type: object
      properties:
        attachmentId:
          type: string
    GetApiCallbacksResponse:
      type: object
      properties:
        callbacks:
          type: array
          description: Registered callbacks
    GetApiMailboxesMailboxCancelCleanupResponse:
      type: object
      properties:
        success:
          type: boolean
    GetApiMailboxesMailboxDisableResponse:
      type: object
      properties:
        success:
          type: boolean
    GetApiMailboxesMailboxEnableResponse:
      type: object
      properties:
        success:
          type: boolean
        warning:
          type: string
          description: Present if mailbox is scheduled for removal
    GetApiMailboxesMailboxResponse:
      type: object
      properties:
        enabled:
          type: boolean
        scheduledForCleanup:
          type: boolean
        createdAt:
          type: string
    PostApiSendRequest:
      type: object
      properties:
        to:
          type: string
        subject:
          type: string
        text:
          type: string
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-API-Key
security:
- apiKey: []
tags:
- name: Api
- name: Health
- name: Llms
- name: Mcp