{
  "openapi": "3.1.0",
  "info": {
    "title": "FirmTape Orders API",
    "version": "1.0.0",
    "description": "Every large SPX order of a session, rebuilt from the tape as an order rather than a print: legs folded back into the parent, the structure named, and each placed against the measured dealer book at the minute it printed. And POSITIONS: your short options positions judged against the market every minute. Finished sessions are free on the site; the Orders API and Team plans buy today's session and reading it from code."
  },
  "servers": [
    {
      "url": "https://firmtape.com"
    }
  ],
  "security": [
    {
      "bearer": []
    }
  ],
  "x-product": "orders",
  "x-features": [
    "orders-api",
    "order-ledger",
    "positions-panel",
    "positions-webhook"
  ],
  "components": {
    "securitySchemes": {
      "bearer": {
        "type": "http",
        "scheme": "bearer",
        "description": "An API key with the `orders` scope (`ordk_...`), made on Account, Orders, on the Orders API or Team plan."
      }
    },
    "schemas": {
      "Error": {
        "type": "object",
        "required": [
          "error"
        ],
        "properties": {
          "error": {
            "type": "object",
            "required": [
              "code",
              "message"
            ],
            "properties": {
              "code": {
                "type": "string",
                "description": "A stable code from the error catalog."
              },
              "message": {
                "type": "string",
                "description": "What happened, in words."
              }
            }
          }
        }
      },
      "Order": {
        "type": "object",
        "required": [
          "oid",
          "t"
        ],
        "properties": {
          "oid": {
            "type": "string",
            "description": "Stable id of the parent order within the session."
          },
          "t": {
            "type": "string",
            "description": "When the parent order printed, ET (`HH:MM`)."
          },
          "g": {
            "type": [
              "number",
              "null"
            ],
            "description": "Dealer gamma the order ADDED, $M per index point. Null when it could not be priced (usually inside the last half hour of its own expiry). Null is not zero.",
            "x-unit": "$M per index point"
          },
          "kind": {
            "type": "string",
            "description": "The structure, from package reconstruction rather than leg count: `vertical`, `straddle`, `iron_condor`, `single` and the rest."
          },
          "legs": {
            "type": "string",
            "description": "The contract, for reading: `7740P/7750P`."
          },
          "lg": {
            "type": "array",
            "items": {
              "type": "array"
            },
            "description": "The legs as data: `[strike, \"C\" | \"P\", sign]`. The sign is what the package rule concluded the CUSTOMER did; 0 means it could not tell, never flat."
          },
          "exp": {
            "type": [
              "string",
              "null"
            ],
            "description": "The expiry carrying most of the order's gamma."
          },
          "size": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Contracts in the parent order."
          },
          "net": {
            "type": [
              "number",
              "null"
            ],
            "description": "Net premium; a spread at its net.",
            "x-unit": "$M"
          },
          "flip": {
            "type": [
              "number",
              "null"
            ],
            "description": "Index points from the zero-gamma flip at that minute.",
            "x-unit": "index points"
          },
          "side": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "over",
              "under",
              null
            ],
            "description": "Which side of the flip."
          }
        }
      },
      "Ledger": {
        "type": "object",
        "required": [
          "day",
          "orders"
        ],
        "properties": {
          "day": {
            "type": "string",
            "description": "The ET trading day."
          },
          "sym": {
            "type": "string",
            "description": "`SPX`: an order is placed against the measured book, which only SPX has."
          },
          "min_premium": {
            "type": "number",
            "description": "The premium floor the ledger was built at.",
            "x-unit": "USD"
          },
          "asof": {
            "type": [
              "string",
              "null"
            ],
            "description": "When the ledger was last rebuilt, ET."
          },
          "orders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Order"
            },
            "description": "Sorted by what the order did to the book, largest first; unpriced orders after them."
          },
          "stats": {
            "type": "object",
            "description": "The whole session's counts, not the page returned.",
            "properties": {
              "n": {
                "type": "integer",
                "description": "Orders above the floor."
              },
              "net": {
                "type": "number",
                "description": "Their net premium.",
                "x-unit": "$M"
              },
              "no_side": {
                "type": "integer",
                "description": "Orders the package rule could not orient."
              },
              "no_gamma": {
                "type": "integer",
                "description": "Orders it could not price."
              },
              "gamma_up": {
                "type": "integer",
                "description": "Orders that added gamma."
              },
              "gamma_dn": {
                "type": "integer",
                "description": "Orders that removed gamma."
              }
            }
          },
          "note": {
            "type": "string",
            "description": "Present when the day has no ledger yet: the list is empty and this says so. Not an error."
          }
        }
      },
      "Check": {
        "type": "object",
        "description": "One position judged at the minute: distances, the large orders near each short, the levels around it and the conditions with the label they add up to (TRADE, CAUTION or SKIP). Distances only, no level prices.",
        "properties": {
          "position_id": {
            "type": "string",
            "description": "The position."
          },
          "error": {
            "type": "string",
            "description": "This position could not be checked right now."
          }
        }
      },
      "Position": {
        "type": "object",
        "description": "A short options position: `kind` (`condor`, `strangle`, `put_spread`, `call_spread`), `legs` (`lp`, `sp`, `sc`, `lc`, rising), `entry` (`HH:MM` ET) and optionally `conditions`, `label`, `alert` (`{ channel: telegram | email | webhook | off, url, before }`) and `session`.",
        "properties": {
          "id": {
            "type": "string",
            "description": "`p_...`, given by `add`."
          },
          "kind": {
            "type": "string",
            "description": "`condor`, `strangle`, `put_spread` or `call_spread`.",
            "enum": [
              "condor",
              "strangle",
              "put_spread",
              "call_spread"
            ]
          },
          "legs": {
            "type": "object",
            "description": "The strikes, rising, as the kind needs them.",
            "properties": {
              "lp": {
                "type": "number",
                "description": "Long put."
              },
              "sp": {
                "type": "number",
                "description": "Short put."
              },
              "sc": {
                "type": "number",
                "description": "Short call."
              },
              "lc": {
                "type": "number",
                "description": "Long call."
              }
            }
          },
          "entry": {
            "type": "string",
            "description": "Entry minute, `HH:MM` ET."
          },
          "conditions": {
            "type": "array",
            "items": {
              "type": "object"
            },
            "description": "`[{ id, on, threshold }]`: which conditions count, and where they switch on."
          },
          "label": {
            "type": "object",
            "description": "`{ caution, skip }`: how many conditions on make each label."
          },
          "alert": {
            "type": "object",
            "description": "`{ channel: telegram | email | webhook | off, url, before }`: where the alerts go and how many minutes before entry they start."
          },
          "session": {
            "type": "string",
            "description": "`YYYY-MM-DD`: the session the strikes were set against."
          }
        }
      }
    }
  },
  "paths": {
    "/orders/api/day": {
      "get": {
        "x-plan": "orders",
        "x-key": "orders",
        "x-limit": "20,000 calls a day on Orders API, 100,000 on Orders Team, per account",
        "operationId": "ordersDay",
        "x-slug": "day",
        "summary": "One session's order ledger",
        "description": "Every large SPX order of one session, sorted by the dealer gamma it added. A day whose ledger has not run answers 200 with an empty list and a note.",
        "x-features": [
          "orders-api",
          "order-ledger"
        ],
        "x-since": "2026-09-24",
        "parameters": [
          {
            "name": "day",
            "in": "query",
            "required": true,
            "description": "The ET trading day, `YYYY-MM-DD`.",
            "schema": {
              "type": "string",
              "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
            },
            "x-error": "bad_day"
          }
        ],
        "responses": {
          "200": {
            "description": "The ledger.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Ledger"
                },
                "example": {
                  "day": "2026-08-17",
                  "sym": "SPX",
                  "min_premium": 100000,
                  "asof": "15:59:57",
                  "orders": [
                    {
                      "oid": "p79654",
                      "t": "13:43",
                      "g": 7.25,
                      "kind": "vertical",
                      "legs": "7740P/7750P",
                      "lg": [
                        [
                          7740,
                          "P",
                          1
                        ],
                        [
                          7750,
                          "P",
                          -1
                        ]
                      ],
                      "exp": "Aug 17",
                      "size": 1958,
                      "net": 0.15,
                      "flip": 38,
                      "side": "over"
                    }
                  ],
                  "stats": {
                    "n": 312,
                    "net": 96.3,
                    "no_side": 177,
                    "no_gamma": 0,
                    "gamma_up": 47,
                    "gamma_dn": 74
                  }
                }
              }
            }
          },
          "400": {
            "description": "`day` is not `YYYY-MM-DD`.",
            "x-codes": [
              "bad_day"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "No key, or a revoked one.",
            "x-codes": [
              "no_key"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "The account is not on the Orders API or Team plan.",
            "x-codes": [
              "plan"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "The day's calls are spent.",
            "x-codes": [
              "rate"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/orders/api/latest": {
      "get": {
        "x-plan": "orders",
        "x-key": "orders",
        "x-limit": "20,000 calls a day on Orders API, 100,000 on Orders Team, per account",
        "operationId": "ordersLatest",
        "x-slug": "latest",
        "summary": "The newest session's order ledger",
        "description": "The newest session the ledger has: today's while the market is open, the last finished one after the close.",
        "x-features": [
          "orders-api",
          "order-ledger"
        ],
        "x-since": "2026-09-24",
        "responses": {
          "200": {
            "description": "The ledger.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Ledger"
                }
              }
            }
          },
          "401": {
            "description": "No key, or a revoked one.",
            "x-codes": [
              "no_key"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "The account is not on the Orders API or Team plan.",
            "x-codes": [
              "plan"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "The day's calls are spent.",
            "x-codes": [
              "rate"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/orders/api/sessions": {
      "get": {
        "x-plan": "orders",
        "x-key": "orders",
        "x-limit": "20,000 calls a day on Orders API, 100,000 on Orders Team, per account",
        "operationId": "ordersSessions",
        "x-slug": "sessions",
        "summary": "Every day with a ledger",
        "description": "Every day an order ledger exists for, oldest first.",
        "x-features": [
          "orders-api"
        ],
        "x-since": "2026-09-24",
        "responses": {
          "200": {
            "description": "Oldest first.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "sessions"
                  ],
                  "properties": {
                    "sessions": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      },
                      "description": "The days, `YYYY-MM-DD`."
                    },
                    "first": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "The oldest."
                    },
                    "last": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "The newest."
                    }
                  }
                },
                "example": {
                  "sessions": [
                    "2026-08-14",
                    "2026-08-17"
                  ],
                  "first": "2026-08-14",
                  "last": "2026-08-17"
                }
              }
            }
          },
          "401": {
            "description": "No key, or a revoked one.",
            "x-codes": [
              "no_key"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "The account is not on the Orders API or Team plan.",
            "x-codes": [
              "plan"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "The day's calls are spent.",
            "x-codes": [
              "rate"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/api/positions": {
      "get": {
        "x-plan": "orders",
        "x-key": "orders",
        "x-limit": "20,000 calls a day on Orders API, 100,000 on Orders Team, per account",
        "operationId": "positionsList",
        "x-slug": "positions",
        "summary": "Your positions",
        "description": "All the account's positions with `catalogue` (the kinds and their legs, every condition with its unit, default threshold and range, the label counts and the alert defaults); with `id`, one position.",
        "x-features": [
          "positions-panel"
        ],
        "x-since": "2026-10-04",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": false,
            "description": "One position, `p_...`.",
            "schema": {
              "type": "string"
            },
            "x-error": "not_found"
          }
        ],
        "responses": {
          "200": {
            "description": "`{ positions, max, catalogue }`, or `{ position }` with `id`.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "positions": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Position"
                      },
                      "description": "Up to `max`."
                    },
                    "max": {
                      "type": "integer",
                      "description": "Positions an account may keep (5)."
                    },
                    "catalogue": {
                      "type": "object",
                      "description": "Kinds, conditions, label counts and alert defaults."
                    },
                    "position": {
                      "$ref": "#/components/schemas/Position"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "No key, or a revoked one.",
            "x-codes": [
              "no_key"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "The account is not on the Orders API or Team plan.",
            "x-codes": [
              "plan"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "No position with this id on this account.",
            "x-codes": [
              "not_found"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "The day's calls are spent.",
            "x-codes": [
              "rate"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "x-plan": "orders",
        "x-key": "orders",
        "x-limit": "20,000 calls a day on Orders API, 100,000 on Orders Team, per account",
        "operationId": "positionsChange",
        "x-slug": "positions-change",
        "summary": "Add, update or remove a position",
        "description": "Everything the editor does: `{ \"op\": \"add\" | \"update\" | \"remove\", \"position\": {...} }`. A refusal says what to fix, in words.",
        "x-features": [
          "positions-panel",
          "positions-conditions"
        ],
        "x-since": "2026-10-04",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "op",
                  "position"
                ],
                "properties": {
                  "op": {
                    "type": "string",
                    "description": "`add`, `update` or `remove`.",
                    "enum": [
                      "add",
                      "update",
                      "remove"
                    ]
                  },
                  "position": {
                    "$ref": "#/components/schemas/Position"
                  }
                }
              },
              "example": {
                "op": "add",
                "position": {
                  "kind": "condor",
                  "legs": {
                    "lp": 7690,
                    "sp": 7700,
                    "sc": 7745,
                    "lc": 7755
                  },
                  "entry": "13:45",
                  "alert": {
                    "channel": "webhook",
                    "url": "https://your.server/hook",
                    "before": 10
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "`{ ok: true, ... }`; `add` answers the new `id`.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "ok": {
                      "type": "boolean",
                      "description": "Done."
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The body cannot be used; `message` says why.",
            "x-codes": [
              "bad_json",
              "bad_op",
              "invalid"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "No key, or a revoked one.",
            "x-codes": [
              "no_key"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "The account is not on the Orders API or Team plan.",
            "x-codes": [
              "plan"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "No position with this id.",
            "x-codes": [
              "not_found"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "405": {
            "description": "GET or POST only.",
            "x-codes": [
              "method"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "The day's calls are spent.",
            "x-codes": [
              "rate"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/api/positions/check": {
      "get": {
        "x-plan": "orders",
        "x-key": "orders",
        "x-limit": "20,000 calls a day on Orders API, 100,000 on Orders Team, per account",
        "operationId": "positionsCheck",
        "x-slug": "positions-check",
        "summary": "Check your positions at a minute",
        "description": "Each position judged at one market minute: only what was known at that minute, never anything later in the day.",
        "x-features": [
          "positions-panel",
          "positions-conditions"
        ],
        "x-since": "2026-10-04",
        "parameters": [
          {
            "name": "day",
            "in": "query",
            "required": false,
            "description": "`YYYY-MM-DD`.",
            "schema": {
              "type": "string"
            },
            "x-default": "today"
          },
          {
            "name": "t",
            "in": "query",
            "required": false,
            "description": "`HH:MM` ET.",
            "schema": {
              "type": "string"
            },
            "x-default": "the latest minute"
          },
          {
            "name": "id",
            "in": "query",
            "required": false,
            "description": "One position; without it, all of them.",
            "schema": {
              "type": "string"
            },
            "x-error": "not_found"
          }
        ],
        "responses": {
          "200": {
            "description": "One check per position.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "day",
                    "checks"
                  ],
                  "properties": {
                    "day": {
                      "type": "string",
                      "description": "The ET trading day."
                    },
                    "t": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "The minute judged."
                    },
                    "live": {
                      "type": "boolean",
                      "description": "Whether the day is the live session."
                    },
                    "checks": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Check"
                      },
                      "description": "One per position."
                    },
                    "note": {
                      "type": "string",
                      "description": "When the day has no market minute yet."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "No key, or a revoked one.",
            "x-codes": [
              "no_key"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "The account is not on the Orders API or Team plan.",
            "x-codes": [
              "plan"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "404": {
            "description": "No position with this id.",
            "x-codes": [
              "not_found"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "The day's calls are spent.",
            "x-codes": [
              "rate"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/api/positions/track": {
      "get": {
        "x-plan": "orders",
        "x-key": "orders",
        "x-limit": "20,000 calls a day on Orders API, 100,000 on Orders Team, per account",
        "operationId": "positionsTrack",
        "x-slug": "positions-track",
        "summary": "A position's label track",
        "description": "One position's label minute by minute over the hour up to `t`.",
        "x-features": [
          "positions-track"
        ],
        "x-since": "2026-10-05",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": true,
            "description": "The position.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "day",
            "in": "query",
            "required": false,
            "description": "`YYYY-MM-DD`.",
            "schema": {
              "type": "string"
            },
            "x-default": "today"
          },
          {
            "name": "t",
            "in": "query",
            "required": false,
            "description": "`HH:MM` ET.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "`{ day, t, id, from, points }`.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "day": {
                      "type": "string",
                      "description": "The day."
                    },
                    "t": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "The last minute."
                    },
                    "id": {
                      "type": "string",
                      "description": "The position."
                    },
                    "from": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "The first minute."
                    },
                    "points": {
                      "type": "array",
                      "items": {},
                      "description": "One point a minute."
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "No key, or a revoked one.",
            "x-codes": [
              "no_key"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "The account is not on the Orders API or Team plan.",
            "x-codes": [
              "plan"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "The day's calls are spent.",
            "x-codes": [
              "rate"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/api/positions/entries": {
      "get": {
        "x-plan": "orders",
        "x-key": "orders",
        "x-limit": "20,000 calls a day on Orders API, 100,000 on Orders Team, per account",
        "operationId": "positionsEntries",
        "x-slug": "positions-entries",
        "summary": "A position's entry log",
        "description": "What each session's entry minute looked like for one position, with up to `replay` replayed past days.",
        "x-features": [
          "entry-log"
        ],
        "x-since": "2026-10-05",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "required": true,
            "description": "The position.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "replay",
            "in": "query",
            "required": false,
            "description": "Past days to replay.",
            "schema": {
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The log.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "401": {
            "description": "No key, or a revoked one.",
            "x-codes": [
              "no_key"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "403": {
            "description": "The account is not on the Orders API or Team plan.",
            "x-codes": [
              "plan"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "The day's calls are spent.",
            "x-codes": [
              "rate"
            ],
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    }
  }
}