{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/mailkite-dev/json-schema/mailkite-dev-get-api-billing-usage-response-schema.json",
  "title": "GetApiBillingUsageResponse",
  "x-generated": "2026-10-29",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_ae-authored/mailkite-dev-openapi-generated.yml#/components/schemas/GetApiBillingUsageResponse",
  "type": "object",
  "properties": {
    "plan": {
      "type": "string",
      "description": "The account's plan id."
    },
    "emails": {
      "type": "object",
      "description": "Email volume this billing period."
    },
    "emails.used": {
      "type": "number",
      "description": "Emails counted so far this period."
    },
    "emails.included": {
      "type": "number",
      "description": "The plan's included monthly emails — null means unlimited."
    },
    "aiActions": {
      "type": "object",
      "description": "AI agent actions this period."
    },
    "aiActions.used": {
      "type": "number",
      "description": "AI actions counted so far this period."
    },
    "meteringEnabled": {
      "type": "boolean",
      "description": "True when overage metering is active."
    },
    "meters": {
      "type": "array",
      "description": "The usage meters billed on this account."
    },
    "overage": {
      "type": "object",
      "description": "Overage state."
    },
    "overage.over": {
      "type": "boolean",
      "description": "Past the plan's included email bucket this period."
    },
    "overage.metered": {
      "type": "boolean",
      "description": "Overage is being metered and billed normally."
    },
    "overage.blocked": {
      "type": "boolean",
      "description": "Sending is blocked until the payment card is fixed."
    },
    "overage.status": {
      "type": "string",
      "description": "Card-gate status when in overage."
    },
    "overage.code": {
      "type": "string",
      "description": "Machine-readable reason code when blocked."
    }
  }
}