{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/filings-tools/json-schema/filings-tools-standing-schema.json",
  "title": "Standing",
  "description": "A caller's own standing. Reading it uses none of the allowance.",
  "x-generated": "2026-11-07",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/filings-tools-openapi.json#/components/schemas/Standing",
  "type": "object",
  "required": [
    "product",
    "caller",
    "limitKind",
    "unit",
    "limit",
    "remaining",
    "used",
    "reset",
    "resetIso",
    "persistent",
    "unavailable",
    "recover",
    "pricing"
  ],
  "properties": {
    "product": {
      "type": "string",
      "enum": [
        "pdfmd",
        "filings"
      ]
    },
    "caller": {
      "type": "string",
      "enum": [
        "anon",
        "key"
      ]
    },
    "label": {
      "type": "string",
      "description": "The plan name for a key."
    },
    "plan": {
      "type": "string",
      "description": "The plan lookup key for a key, for example pdfmd_pro_monthly."
    },
    "limitKind": {
      "type": "string",
      "enum": [
        "calls_day",
        "pages_day",
        "pages_month"
      ]
    },
    "unit": {
      "type": "string",
      "enum": [
        "calls",
        "pages"
      ]
    },
    "limit": {
      "type": "integer"
    },
    "remaining": {
      "type": "integer"
    },
    "used": {
      "type": "integer"
    },
    "maxPagesPerFile": {
      "type": "integer",
      "description": "Free tiers of pdfmd: the longest file one request may convert."
    },
    "reset": {
      "type": "integer",
      "description": "Unix seconds."
    },
    "resetIso": {
      "type": "string",
      "format": "date-time"
    },
    "backend": {
      "type": "string",
      "enum": [
        "upstash",
        "memory"
      ]
    },
    "persistent": {
      "type": "boolean",
      "description": "True when the count is in shared storage. False means it is held per instance and a deploy resets it."
    },
    "unavailable": {
      "type": "boolean",
      "description": "True when a key was sent and the store could not confirm it."
    },
    "recover": {
      "type": "string",
      "format": "uri"
    },
    "pricing": {
      "type": "string",
      "format": "uri"
    },
    "free_key": {
      "type": "string",
      "format": "uri",
      "description": "Only for a caller without a key."
    }
  }
}