{
  "@context": {
    "@vocab": "https://usagerail.com/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "usagerail": "https://usagerail.com/schema#",
    "GetHealthzResponse": "usagerail:GetHealthzResponse",
    "ok": {
      "@id": "usagerail:ok",
      "@type": "xsd:boolean"
    },
    "PostV1CheckRequest": "usagerail:PostV1CheckRequest",
    "key": {
      "@id": "usagerail:key",
      "@type": "xsd:string"
    },
    "method": {
      "@id": "usagerail:method",
      "@type": "xsd:string"
    },
    "route": {
      "@id": "usagerail:route",
      "@type": "xsd:string"
    },
    "PostV1ConsumersRequest": "usagerail:PostV1ConsumersRequest",
    "external_id": {
      "@id": "usagerail:external_id",
      "@type": "xsd:string"
    },
    "email": {
      "@id": "usagerail:email",
      "@type": "xsd:string"
    },
    "PostV1ConsumersResponse": "usagerail:PostV1ConsumersResponse",
    "consumer": {
      "@id": "usagerail:consumer"
    },
    "GetV1ConsumersIdResponse": "usagerail:GetV1ConsumersIdResponse",
    "PostV1ConsumersIdCheckoutRequest": "usagerail:PostV1ConsumersIdCheckoutRequest",
    "plan_id": {
      "@id": "usagerail:plan_id",
      "@type": "xsd:string"
    },
    "interval": {
      "@id": "usagerail:interval",
      "@type": "xsd:string"
    },
    "success_url": {
      "@id": "usagerail:success_url",
      "@type": "xsd:string"
    },
    "cancel_url": {
      "@id": "usagerail:cancel_url",
      "@type": "xsd:string"
    },
    "credit_pack_id": {
      "@id": "usagerail:credit_pack_id",
      "@type": "xsd:string"
    },
    "PostV1ConsumersIdCheckoutResponse": "usagerail:PostV1ConsumersIdCheckoutResponse",
    "url": {
      "@id": "usagerail:url",
      "@type": "xsd:string"
    },
    "PostV1ConsumersIdClaimRequest": "usagerail:PostV1ConsumersIdClaimRequest",
    "PostV1ConsumersIdClaimResponse": "usagerail:PostV1ConsumersIdClaimResponse",
    "PostV1ConsumersIdCreditsAdjustRequest": "usagerail:PostV1ConsumersIdCreditsAdjustRequest",
    "units": {
      "@id": "usagerail:units",
      "@type": "xsd:integer"
    },
    "reason": {
      "@id": "usagerail:reason",
      "@type": "xsd:string"
    },
    "PostV1ConsumersIdCreditsAdjustResponse": "usagerail:PostV1ConsumersIdCreditsAdjustResponse",
    "PostV1ConsumersIdKeysRequest": "usagerail:PostV1ConsumersIdKeysRequest",
    "name": {
      "@id": "usagerail:name",
      "@type": "xsd:string"
    },
    "PostV1ConsumersIdKeysResponse": "usagerail:PostV1ConsumersIdKeysResponse",
    "key_id": {
      "@id": "usagerail:key_id",
      "@type": "xsd:string"
    },
    "consumer_id": {
      "@id": "usagerail:consumer_id",
      "@type": "xsd:string"
    },
    "PostV1ConsumersIdPlanRequest": "usagerail:PostV1ConsumersIdPlanRequest",
    "keep": {
      "@id": "usagerail:keep",
      "@type": "xsd:boolean"
    },
    "PostV1ConsumersIdPlanResponse": "usagerail:PostV1ConsumersIdPlanResponse",
    "change": {
      "@id": "usagerail:change"
    },
    "PostV1ConsumersIdPortalLinkRequest": "usagerail:PostV1ConsumersIdPortalLinkRequest",
    "next": {
      "@id": "usagerail:next",
      "@type": "xsd:string"
    },
    "PostV1ConsumersIdPortalLinkResponse": "usagerail:PostV1ConsumersIdPortalLinkResponse",
    "expires_at": {
      "@id": "usagerail:expires_at",
      "@type": "xsd:string"
    },
    "GetV1ConsumersIdUsageResponse": "usagerail:GetV1ConsumersIdUsageResponse",
    "days": {
      "@id": "usagerail:days",
      "@type": "xsd:integer"
    },
    "retention_days": {
      "@id": "usagerail:retention_days",
      "@type": "xsd:integer"
    },
    "timezone": {
      "@id": "usagerail:timezone",
      "@type": "xsd:string"
    },
    "unit_mode": {
      "@id": "usagerail:unit_mode",
      "@type": "xsd:string"
    },
    "daily": {
      "@id": "usagerail:daily",
      "@container": "@list"
    },
    "endpoints": {
      "@id": "usagerail:endpoints",
      "@container": "@list"
    },
    "PostV1GenerateRequest": "usagerail:PostV1GenerateRequest",
    "PostV1GenerateResponse": "usagerail:PostV1GenerateResponse",
    "GetV1ItemsIdResponse": "usagerail:GetV1ItemsIdResponse",
    "id": {
      "@id": "usagerail:id",
      "@type": "xsd:string"
    },
    "DeleteV1KeysKeyidResponse": "usagerail:DeleteV1KeysKeyidResponse",
    "status": {
      "@id": "usagerail:status",
      "@type": "xsd:string"
    }
  },
  "@type": "schema:Dataset",
  "schema:name": "UsageRail API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects UsageRail's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-11-02) from openapi/_ae-authored/usagerail-openapi-generated.yml.",
  "dcterms:created": "2026-11-02",
  "dcterms:source": [
    "openapi/_ae-authored/usagerail-openapi-generated.yml"
  ]
}