{
  "openapi": "3.1.0",
  "info": {
    "title": "CSFolder Data API",
    "version": "0.1.0",
    "description": "Development contract. Deployment and access are not yet generally available."
  },
  "servers": [
    {
      "url": "https://api.csfolder.com"
    }
  ],
  "paths": {
    "/v1/markets/snapshot": {
      "post": {
        "operationId": "streamMarketSnapshot",
        "summary": "Stream the complete cached market matrix",
        "description": "NDJSON start/item/end protocol, one catalog item per line with exact-phase asks and bids. A successful end record is required; errors after HTTP headers use an error record or a truncated connection, never a successful end. Cache generation changes invalidate the export. Prices come from one generation; catalog identity is traversed in ascending ID up to the captured maximum, not a database snapshot. Missing quotes are explicitly marked, not zero. Ingest time is not source observation time. No request body, filters, pagination or resume: discard incomplete exports and retry with backoff. One active export per account, a global concurrency ceiling and a two-minute deadline protect ordinary reads. One admitted request consumes one monthly unit; additional export-start ceilings apply.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [],
        "responses": {
          "200": {
            "description": "One typed JSON record per line. Require a matching final end record before accepting the export.",
            "content": {
              "application/x-ndjson": {
                "schema": {
                  "oneOf": [
                    {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "type": {
                          "const": "start"
                        },
                        "request_id": {
                          "type": "string"
                        },
                        "generation": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "ingested_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "price_as_of": {
                          "type": "null"
                        },
                        "consistency": {
                          "const": "single_price_generation"
                        },
                        "catalog_max_item_id": {
                          "type": "integer"
                        }
                      },
                      "required": [
                        "type",
                        "request_id",
                        "generation",
                        "generated_at",
                        "ingested_at",
                        "price_as_of",
                        "consistency",
                        "catalog_max_item_id"
                      ]
                    },
                    {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "type": {
                          "const": "item"
                        },
                        "data": {
                          "type": "object",
                          "additionalProperties": false,
                          "properties": {
                            "item_id": {
                              "type": "integer"
                            },
                            "market_hash_name": {
                              "type": "string"
                            },
                            "phase": {
                              "anyOf": [
                                {
                                  "type": "string"
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            },
                            "availability": {
                              "enum": [
                                "available",
                                "missing"
                              ]
                            },
                            "asks": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "properties": {
                                  "provider": {
                                    "type": "string"
                                  },
                                  "amount": {
                                    "type": "integer"
                                  },
                                  "currency": {
                                    "const": "USD"
                                  },
                                  "minor_units": {
                                    "const": 2
                                  },
                                  "quantity": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "url": {
                                    "anyOf": [
                                      {
                                        "type": "string"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "as_of": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "format": "date-time"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  }
                                },
                                "required": [
                                  "provider",
                                  "amount",
                                  "currency",
                                  "minor_units",
                                  "as_of"
                                ]
                              }
                            },
                            "bids": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "additionalProperties": false,
                                "properties": {
                                  "provider": {
                                    "type": "string"
                                  },
                                  "amount": {
                                    "type": "integer"
                                  },
                                  "currency": {
                                    "const": "USD"
                                  },
                                  "minor_units": {
                                    "const": 2
                                  },
                                  "quantity": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "url": {
                                    "anyOf": [
                                      {
                                        "type": "string"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "as_of": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "format": "date-time"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  }
                                },
                                "required": [
                                  "provider",
                                  "amount",
                                  "currency",
                                  "minor_units",
                                  "as_of"
                                ]
                              }
                            }
                          },
                          "required": [
                            "item_id",
                            "market_hash_name",
                            "phase",
                            "availability",
                            "asks",
                            "bids"
                          ]
                        }
                      },
                      "required": [
                        "type",
                        "data"
                      ]
                    },
                    {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "type": {
                          "const": "end"
                        },
                        "request_id": {
                          "type": "string"
                        },
                        "generation": {
                          "type": "string"
                        },
                        "items": {
                          "type": "integer"
                        }
                      },
                      "required": [
                        "type",
                        "request_id",
                        "generation",
                        "items"
                      ]
                    },
                    {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "type": {
                          "const": "error"
                        },
                        "request_id": {
                          "type": "string"
                        },
                        "code": {
                          "enum": [
                            "snapshot_interrupted",
                            "snapshot_changed"
                          ]
                        }
                      },
                      "required": [
                        "type",
                        "request_id",
                        "code"
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/status": {
      "get": {
        "operationId": "getStatus",
        "summary": "Data availability",
        "description": "Local dataset availability. Not a promise of full catalog or historical market coverage.",
        "security": [],
        "x-required-scope": null,
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "database": {
                          "type": "string"
                        },
                        "market_snapshot": {
                          "type": "string"
                        },
                        "release": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "database",
                        "market_snapshot",
                        "release"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/items": {
      "get": {
        "operationId": "listItems",
        "summary": "Search the item catalog",
        "description": "Stable item IDs distinguish wear, StatTrak, Souvenir and paint phases. Cursor pagination by item ID.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "cursor",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 0,
              "maximum": 2147483647
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 120
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "item_id": {
                            "type": "integer",
                            "minimum": 1,
                            "maximum": 2147483647
                          },
                          "market_hash_name": {
                            "type": "string"
                          },
                          "slug": {
                            "type": "string"
                          },
                          "type": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "rarity": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "collection": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "phase": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "name_ru": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "image_url": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "wear": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "stattrak": {
                            "anyOf": [
                              {
                                "type": "boolean"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "souvenir": {
                            "anyOf": [
                              {
                                "type": "boolean"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "best_ask_cents": {
                            "anyOf": [
                              {
                                "type": "integer"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "best_ask_provider": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "price_updated_at": {
                            "anyOf": [
                              {
                                "type": "string",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "required": [
                          "item_id",
                          "market_hash_name",
                          "slug"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/items/{item_id}": {
      "get": {
        "operationId": "getItem",
        "summary": "Item metadata",
        "description": "Locally stored catalog metadata. Missing fields are null; no upstream fetch on a cache miss.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "item_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 2147483647
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "item_id": {
                          "type": "integer",
                          "minimum": 1,
                          "maximum": 2147483647
                        },
                        "market_hash_name": {
                          "type": "string"
                        },
                        "slug": {
                          "type": "string"
                        },
                        "type": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "rarity": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "collection": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "phase": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "name_ru": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "image_url": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "wear": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "stattrak": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "souvenir": {
                          "anyOf": [
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "best_ask_cents": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "best_ask_provider": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "price_updated_at": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "item_id",
                        "market_hash_name",
                        "slug"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/items/{item_id}/markets": {
      "get": {
        "operationId": "getMarketPrices",
        "summary": "Cross-market asks and bids",
        "description": "Observed marketplace offers in integer USD cents. Asks are not completed sales. Missing source timestamps are null; retrieval time is not price observation time.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "item_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 2147483647
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "item_id": {
                          "type": "integer"
                        },
                        "asks": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "properties": {
                              "provider": {
                                "type": "string"
                              },
                              "amount": {
                                "type": "integer"
                              },
                              "currency": {
                                "const": "USD"
                              },
                              "minor_units": {
                                "const": 2
                              },
                              "quantity": {
                                "anyOf": [
                                  {
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "url": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "as_of": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "format": "date-time"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              }
                            },
                            "required": [
                              "provider",
                              "amount",
                              "currency",
                              "minor_units",
                              "as_of"
                            ]
                          }
                        },
                        "bids": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "properties": {
                              "provider": {
                                "type": "string"
                              },
                              "amount": {
                                "type": "integer"
                              },
                              "currency": {
                                "const": "USD"
                              },
                              "minor_units": {
                                "const": 2
                              },
                              "quantity": {
                                "anyOf": [
                                  {
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "url": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "as_of": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "format": "date-time"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              }
                            },
                            "required": [
                              "provider",
                              "amount",
                              "currency",
                              "minor_units",
                              "as_of"
                            ]
                          }
                        }
                      },
                      "required": [
                        "item_id",
                        "asks",
                        "bids"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/items/{item_id}/history": {
      "get": {
        "operationId": "getPriceHistory",
        "summary": "Available daily ask history",
        "description": "Stored daily lowest asks, not executed sales or intraday OHLC. Maximum range 366 days; split larger backfills into windows. Missing dates stay missing. Rows are sorted by day and provider. Use next_page when present.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "from",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "to",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "provider",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 40
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 2000
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 120
            }
          },
          {
            "name": "item_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 2147483647
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "day": {
                            "type": "string",
                            "format": "date"
                          },
                          "provider": {
                            "type": "string"
                          },
                          "amount": {
                            "type": "integer"
                          },
                          "quantity": {
                            "type": "integer"
                          },
                          "currency": {
                            "const": "USD"
                          },
                          "minor_units": {
                            "const": 2
                          },
                          "kind": {
                            "const": "daily_ask_snapshot"
                          }
                        },
                        "required": [
                          "day",
                          "provider",
                          "amount",
                          "quantity",
                          "currency",
                          "minor_units",
                          "kind"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/items/{item_id}/history/hourly": {
      "get": {
        "operationId": "getHourlyPriceHistory",
        "summary": "Stored hourly market quotes",
        "description": "First verified cached frame per UTC hour, not executed sales, OHLC or a source tick. Select side=ask (default) or bid and optionally one provider; no provider/side fallback. Maximum 31 inclusive UTC days, default last 31 days; 500 rows by default, maximum 1000. Rows sort by bucket then provider. Recorded missing items or missing selected quotes have null amount and explicit availability; hours without a recorded frame remain absent. With all providers, a null-provider marker is returned only if no quote exists on the selected side; omitted providers are not individually enumerated. ts is bucket time, checked_at our GET/304 verification, ingested_at mirror publication; source_observed_at is unknown unless actually supplied. Follow next_page; cursors bind item, side, provider and date window, retaining omitted filters on continuation. Rows are immutable but this is not a frozen export: late inserts can require rereading a window. Previously stored identities remain readable after catalog removal. No upstream request or synthetic backfill.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "from",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "to",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "provider",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "pattern": "^[a-z0-9_-]{1,40}$"
            }
          },
          {
            "name": "side",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "ask",
                "bid"
              ]
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 1000
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 600
            }
          },
          {
            "name": "item_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 2147483647
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "ts": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "provider": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "side": {
                            "enum": [
                              "ask",
                              "bid"
                            ]
                          },
                          "amount": {
                            "anyOf": [
                              {
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 9007199254740991
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "quantity": {
                            "anyOf": [
                              {
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 9007199254740991
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "currency": {
                            "const": "USD"
                          },
                          "minor_units": {
                            "const": 2
                          },
                          "kind": {
                            "const": "hourly_cached_quote"
                          },
                          "availability": {
                            "enum": [
                              "quoted",
                              "item_missing",
                              "no_quote"
                            ]
                          },
                          "ingested_at": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "checked_at": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "source_observed_at": {
                            "anyOf": [
                              {
                                "type": "string",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "required": [
                          "ts",
                          "provider",
                          "side",
                          "amount",
                          "quantity",
                          "currency",
                          "minor_units",
                          "kind",
                          "availability",
                          "ingested_at",
                          "checked_at",
                          "source_observed_at"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/items/batch": {
      "post": {
        "operationId": "batchItems",
        "summary": "Read up to 100 catalog items",
        "description": "One bounded database query. Unknown IDs are returned in missing_ids.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "item_ids": {
                    "type": "array",
                    "minItems": 1,
                    "maxItems": 100,
                    "uniqueItems": true,
                    "items": {
                      "type": "integer",
                      "minimum": 1,
                      "maximum": 2147483647
                    }
                  }
                },
                "required": [
                  "item_ids"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "items": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "properties": {
                              "item_id": {
                                "type": "integer",
                                "minimum": 1,
                                "maximum": 2147483647
                              },
                              "market_hash_name": {
                                "type": "string"
                              },
                              "slug": {
                                "type": "string"
                              },
                              "type": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "rarity": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "collection": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "phase": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "name_ru": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "image_url": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "wear": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "stattrak": {
                                "anyOf": [
                                  {
                                    "type": "boolean"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "souvenir": {
                                "anyOf": [
                                  {
                                    "type": "boolean"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "best_ask_cents": {
                                "anyOf": [
                                  {
                                    "type": "integer"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "best_ask_provider": {
                                "anyOf": [
                                  {
                                    "type": "string"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              },
                              "price_updated_at": {
                                "anyOf": [
                                  {
                                    "type": "string",
                                    "format": "date-time"
                                  },
                                  {
                                    "type": "null"
                                  }
                                ]
                              }
                            },
                            "required": [
                              "item_id",
                              "market_hash_name",
                              "slug"
                            ]
                          }
                        },
                        "missing_ids": {
                          "type": "array",
                          "items": {
                            "type": "integer"
                          }
                        }
                      },
                      "required": [
                        "items",
                        "missing_ids"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/indexes": {
      "get": {
        "operationId": "listIndexes",
        "summary": "CSFolder market baskets",
        "description": "Precomputed category indexes with current coverage. Indexes are not tradable securities.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 160
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "slug": {
                            "type": "string"
                          },
                          "title_ru": {
                            "type": "string"
                          },
                          "title_en": {
                            "type": "string"
                          },
                          "root_kind": {
                            "type": "string"
                          },
                          "total_members": {
                            "anyOf": [
                              {
                                "type": "integer"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "marketcap_cents": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "as_of": {
                            "anyOf": [
                              {
                                "type": "string",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "required": [
                          "slug",
                          "title_ru",
                          "title_en",
                          "root_kind"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/indexes/{slug}/history": {
      "get": {
        "operationId": "getIndexHistory",
        "summary": "Index history",
        "description": "Published precomputed index points, retaining methodology and membership versions. Missing coverage is not forward-filled.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "from",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "to",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "granularity",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "hour",
                "day"
              ]
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 2000
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 160
            }
          },
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 160,
              "pattern": "^[a-z0-9][a-z0-9-]*$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "ts": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "value": {
                            "type": "string"
                          },
                          "coverage_pct": {
                            "type": "string"
                          },
                          "priced_members": {
                            "type": "integer"
                          },
                          "total_members": {
                            "type": "integer"
                          },
                          "source": {
                            "type": "string"
                          },
                          "methodology_version": {
                            "type": "integer"
                          },
                          "membership_version": {
                            "type": "integer"
                          }
                        },
                        "required": [
                          "ts",
                          "value",
                          "coverage_pct",
                          "methodology_version",
                          "membership_version"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/marketcap": {
      "get": {
        "operationId": "getMarketCap",
        "summary": "Latest market capitalization observation",
        "description": "Source-backed current observation. Historical current-supply reconstruction is not presented as observed historical capitalization.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "ts": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "amount": {
                          "type": "string"
                        },
                        "estimated_volume_24h_cents": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "source": {
                          "type": "string"
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "coverage_pct": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "methodology_version": {
                          "type": "integer"
                        },
                        "currency": {
                          "const": "USD"
                        },
                        "minor_units": {
                          "const": 2
                        },
                        "volume_kind": {
                          "const": "estimate_not_executed_turnover"
                        }
                      },
                      "required": [
                        "ts",
                        "amount",
                        "source",
                        "currency",
                        "minor_units",
                        "volume_kind"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/fx": {
      "get": {
        "operationId": "getFx",
        "summary": "Latest fiat exchange-rate snapshot",
        "description": "CBR-derived daily rates: units of target currency per 1 USD. Date and fetched_at remain explicit.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "base": {
                          "const": "USD"
                        },
                        "source": {
                          "enum": [
                            "cbr",
                            "steam"
                          ]
                        },
                        "rates": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "properties": {
                              "day": {
                                "type": "string",
                                "format": "date"
                              },
                              "currency": {
                                "type": "string"
                              },
                              "rate_per_usd": {
                                "type": "string"
                              },
                              "fetched_at": {
                                "type": "string",
                                "format": "date-time"
                              }
                            },
                            "required": [
                              "day",
                              "currency",
                              "rate_per_usd",
                              "fetched_at"
                            ]
                          }
                        }
                      },
                      "required": [
                        "base",
                        "source",
                        "rates"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/fx/steam": {
      "get": {
        "operationId": "getSteamFx",
        "summary": "Latest Steam exchange-rate snapshot",
        "description": "Observed Steam internal conversion rates, distinct from cash-market FX. Units of target currency per 1 USD.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "base": {
                          "const": "USD"
                        },
                        "source": {
                          "enum": [
                            "cbr",
                            "steam"
                          ]
                        },
                        "rates": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "properties": {
                              "day": {
                                "type": "string",
                                "format": "date"
                              },
                              "currency": {
                                "type": "string"
                              },
                              "rate_per_usd": {
                                "type": "string"
                              },
                              "fetched_at": {
                                "type": "string",
                                "format": "date-time"
                              }
                            },
                            "required": [
                              "day",
                              "currency",
                              "rate_per_usd",
                              "fetched_at"
                            ]
                          }
                        }
                      },
                      "required": [
                        "base",
                        "source",
                        "rates"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/fx/history": {
      "get": {
        "operationId": "getFxHistory",
        "summary": "Fiat rate history",
        "description": "Available daily CBR-derived rates for one currency; no invented pre-ingestion history.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "from",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "to",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "currency",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[A-Z]{3}$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "base": {
                          "const": "USD"
                        },
                        "source": {
                          "enum": [
                            "cbr",
                            "steam"
                          ]
                        },
                        "currency": {
                          "type": "string"
                        },
                        "points": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "properties": {
                              "day": {
                                "type": "string",
                                "format": "date"
                              },
                              "rate_per_usd": {
                                "type": "string"
                              },
                              "fetched_at": {
                                "type": "string",
                                "format": "date-time"
                              }
                            },
                            "required": [
                              "day",
                              "rate_per_usd",
                              "fetched_at"
                            ]
                          }
                        }
                      },
                      "required": [
                        "base",
                        "source",
                        "currency",
                        "points"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/fx/steam/history": {
      "get": {
        "operationId": "getSteamFxHistory",
        "summary": "Steam rate history",
        "description": "Available daily Steam rates for one currency; maximum range 366 days.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "from",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "to",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "currency",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[A-Z]{3}$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "base": {
                          "const": "USD"
                        },
                        "source": {
                          "enum": [
                            "cbr",
                            "steam"
                          ]
                        },
                        "currency": {
                          "type": "string"
                        },
                        "points": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "properties": {
                              "day": {
                                "type": "string",
                                "format": "date"
                              },
                              "rate_per_usd": {
                                "type": "string"
                              },
                              "fetched_at": {
                                "type": "string",
                                "format": "date-time"
                              }
                            },
                            "required": [
                              "day",
                              "rate_per_usd",
                              "fetched_at"
                            ]
                          }
                        }
                      },
                      "required": [
                        "base",
                        "source",
                        "currency",
                        "points"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/openables": {
      "get": {
        "operationId": "listOpenables",
        "summary": "Container ROI catalog",
        "description": "All public CSFolder openables via slug pagination, including retired Armory pools marked active=false. Current precomputed ROI uses the current methodology and default strategy; missing calculations are null. Decimal percentages are strings. Steam gross and cash ask are separate valuation models, not net realized proceeds. Requires no upstream requests or calculations on the request path.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "valuation_mode",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "steam_gross",
                "cash_ask"
              ]
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 160
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "openable_id": {
                            "type": "string"
                          },
                          "slug": {
                            "type": "string"
                          },
                          "item_id": {
                            "anyOf": [
                              {
                                "type": "integer"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "kind": {
                            "type": "string"
                          },
                          "title_ru": {
                            "type": "string"
                          },
                          "title_en": {
                            "type": "string"
                          },
                          "active": {
                            "type": "boolean"
                          },
                          "current": {
                            "anyOf": [
                              {
                                "type": "object",
                                "additionalProperties": false,
                                "properties": {
                                  "revision_id": {
                                    "type": "string"
                                  },
                                  "revision_number": {
                                    "type": "integer"
                                  },
                                  "methodology_version": {
                                    "type": "integer"
                                  },
                                  "valuation_mode": {
                                    "type": "string",
                                    "enum": [
                                      "steam_gross",
                                      "cash_ask"
                                    ]
                                  },
                                  "strategy": {
                                    "const": "default"
                                  },
                                  "source": {
                                    "const": "csfolder_roi"
                                  },
                                  "currency": {
                                    "const": "USD"
                                  },
                                  "minor_units": {
                                    "const": 2
                                  },
                                  "cost_cents": {
                                    "type": "integer"
                                  },
                                  "expected_value_cents": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "expected_profit_cents": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "return_pct": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "profit_chance_pct": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "priced_probability_mass_pct": {
                                    "type": "string",
                                    "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                  },
                                  "overall_confidence": {
                                    "type": "string",
                                    "enum": [
                                      "high",
                                      "medium",
                                      "low",
                                      "unavailable"
                                    ]
                                  },
                                  "calculated_at": {
                                    "type": "string",
                                    "format": "date-time"
                                  },
                                  "price_as_of": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "format": "date-time"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "stale": {
                                    "type": "boolean"
                                  },
                                  "expected_value_lower_cents": {
                                    "type": "integer"
                                  },
                                  "expected_value_upper_cents": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "profit_roi_pct": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "profit_chance_lower_pct": {
                                    "type": "string",
                                    "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                  },
                                  "profit_chance_upper_pct": {
                                    "type": "string",
                                    "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                  },
                                  "loss_chance_pct": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "break_even_chance_pct": {
                                    "anyOf": [
                                      {
                                        "type": "string",
                                        "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "p10_value_cents": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "p50_value_cents": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "p90_value_cents": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "direct_price_mass_pct": {
                                    "type": "string",
                                    "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                  },
                                  "historical_fallback_mass_pct": {
                                    "type": "string",
                                    "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                  },
                                  "imputed_mass_pct": {
                                    "type": "string",
                                    "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                  },
                                  "outlier_mass_pct": {
                                    "type": "string",
                                    "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                  },
                                  "mechanics_confidence": {
                                    "type": "string"
                                  },
                                  "price_confidence": {
                                    "type": "string"
                                  },
                                  "terminal_model_confidence": {
                                    "anyOf": [
                                      {
                                        "type": "string"
                                      },
                                      {
                                        "type": "null"
                                      }
                                    ]
                                  },
                                  "flags": {
                                    "type": "array",
                                    "items": {
                                      "type": "string"
                                    }
                                  }
                                },
                                "required": [
                                  "revision_id",
                                  "revision_number",
                                  "methodology_version",
                                  "valuation_mode",
                                  "strategy",
                                  "source",
                                  "currency",
                                  "minor_units",
                                  "cost_cents",
                                  "expected_value_cents",
                                  "expected_profit_cents",
                                  "return_pct",
                                  "profit_chance_pct",
                                  "priced_probability_mass_pct",
                                  "overall_confidence",
                                  "calculated_at",
                                  "price_as_of",
                                  "stale",
                                  "expected_value_lower_cents",
                                  "expected_value_upper_cents",
                                  "profit_roi_pct",
                                  "profit_chance_lower_pct",
                                  "profit_chance_upper_pct",
                                  "loss_chance_pct",
                                  "break_even_chance_pct",
                                  "p10_value_cents",
                                  "p50_value_cents",
                                  "p90_value_cents",
                                  "direct_price_mass_pct",
                                  "historical_fallback_mass_pct",
                                  "imputed_mass_pct",
                                  "outlier_mass_pct",
                                  "mechanics_confidence",
                                  "price_confidence",
                                  "terminal_model_confidence",
                                  "flags"
                                ]
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "required": [
                          "openable_id",
                          "slug",
                          "item_id",
                          "kind",
                          "title_ru",
                          "title_en",
                          "active",
                          "current"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/openables/{slug}": {
      "get": {
        "operationId": "getOpenable",
        "summary": "Current container ROI and quality",
        "description": "Published precomputed model, not guaranteed profit. return_pct = expected value / cost * 100; profit_roi_pct = return_pct - 100, so these are not probabilities and may exceed 100 or be negative. Missing point estimates stay null; lower/upper bounds and price coverage remain explicit. calculated_at is calculation time; price_as_of is the stored input-price time, possibly null. Do not replace either with response generation time. An unavailable selected mode never falls back to another mode.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "valuation_mode",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "steam_gross",
                "cash_ask"
              ]
            }
          },
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 160,
              "pattern": "^[a-z0-9][a-z0-9-]*$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "openable_id": {
                          "type": "string"
                        },
                        "slug": {
                          "type": "string"
                        },
                        "item_id": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "kind": {
                          "type": "string"
                        },
                        "title_ru": {
                          "type": "string"
                        },
                        "title_en": {
                          "type": "string"
                        },
                        "active": {
                          "type": "boolean"
                        },
                        "current": {
                          "anyOf": [
                            {
                              "type": "object",
                              "additionalProperties": false,
                              "properties": {
                                "revision_id": {
                                  "type": "string"
                                },
                                "revision_number": {
                                  "type": "integer"
                                },
                                "methodology_version": {
                                  "type": "integer"
                                },
                                "valuation_mode": {
                                  "type": "string",
                                  "enum": [
                                    "steam_gross",
                                    "cash_ask"
                                  ]
                                },
                                "strategy": {
                                  "const": "default"
                                },
                                "source": {
                                  "const": "csfolder_roi"
                                },
                                "currency": {
                                  "const": "USD"
                                },
                                "minor_units": {
                                  "const": 2
                                },
                                "cost_cents": {
                                  "type": "integer"
                                },
                                "expected_value_cents": {
                                  "anyOf": [
                                    {
                                      "type": "integer"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "expected_profit_cents": {
                                  "anyOf": [
                                    {
                                      "type": "integer"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "return_pct": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "profit_chance_pct": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "priced_probability_mass_pct": {
                                  "type": "string",
                                  "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                },
                                "overall_confidence": {
                                  "type": "string",
                                  "enum": [
                                    "high",
                                    "medium",
                                    "low",
                                    "unavailable"
                                  ]
                                },
                                "calculated_at": {
                                  "type": "string",
                                  "format": "date-time"
                                },
                                "price_as_of": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "format": "date-time"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "stale": {
                                  "type": "boolean"
                                },
                                "expected_value_lower_cents": {
                                  "type": "integer"
                                },
                                "expected_value_upper_cents": {
                                  "anyOf": [
                                    {
                                      "type": "integer"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "profit_roi_pct": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "profit_chance_lower_pct": {
                                  "type": "string",
                                  "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                },
                                "profit_chance_upper_pct": {
                                  "type": "string",
                                  "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                },
                                "loss_chance_pct": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "break_even_chance_pct": {
                                  "anyOf": [
                                    {
                                      "type": "string",
                                      "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "p10_value_cents": {
                                  "anyOf": [
                                    {
                                      "type": "integer"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "p50_value_cents": {
                                  "anyOf": [
                                    {
                                      "type": "integer"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "p90_value_cents": {
                                  "anyOf": [
                                    {
                                      "type": "integer"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "direct_price_mass_pct": {
                                  "type": "string",
                                  "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                },
                                "historical_fallback_mass_pct": {
                                  "type": "string",
                                  "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                },
                                "imputed_mass_pct": {
                                  "type": "string",
                                  "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                },
                                "outlier_mass_pct": {
                                  "type": "string",
                                  "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                                },
                                "mechanics_confidence": {
                                  "type": "string"
                                },
                                "price_confidence": {
                                  "type": "string"
                                },
                                "terminal_model_confidence": {
                                  "anyOf": [
                                    {
                                      "type": "string"
                                    },
                                    {
                                      "type": "null"
                                    }
                                  ]
                                },
                                "flags": {
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                }
                              },
                              "required": [
                                "revision_id",
                                "revision_number",
                                "methodology_version",
                                "valuation_mode",
                                "strategy",
                                "source",
                                "currency",
                                "minor_units",
                                "cost_cents",
                                "expected_value_cents",
                                "expected_profit_cents",
                                "return_pct",
                                "profit_chance_pct",
                                "priced_probability_mass_pct",
                                "overall_confidence",
                                "calculated_at",
                                "price_as_of",
                                "stale",
                                "expected_value_lower_cents",
                                "expected_value_upper_cents",
                                "profit_roi_pct",
                                "profit_chance_lower_pct",
                                "profit_chance_upper_pct",
                                "loss_chance_pct",
                                "break_even_chance_pct",
                                "p10_value_cents",
                                "p50_value_cents",
                                "p90_value_cents",
                                "direct_price_mass_pct",
                                "historical_fallback_mass_pct",
                                "imputed_mass_pct",
                                "outlier_mass_pct",
                                "mechanics_confidence",
                                "price_confidence",
                                "terminal_model_confidence",
                                "flags"
                              ]
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "openable_id",
                        "slug",
                        "item_id",
                        "kind",
                        "title_ru",
                        "title_en",
                        "active",
                        "current"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/openables/{slug}/history": {
      "get": {
        "operationId": "getOpenableHistory",
        "summary": "Stored container ROI history",
        "description": "Model snapshots, not executed sales or realized ROI. Default: current methodology, steam_gross, day, last 31 days. Maximum UTC window 366 days. Select one methodology version and retain revision IDs; rows sort by timestamp and revision ID. Retired published revisions remain available, drafts are excluded. No interpolation or resolution fallback. ts is a bucket time and recorded_at a storage time. Existing storage does not distinguish contemporaneous calculations from historical reconstruction: provenance is not_recorded. An hourly bucket does not prove an hourly recalculation or new market observation.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "market:read",
        "parameters": [
          {
            "name": "valuation_mode",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "steam_gross",
                "cash_ask"
              ]
            }
          },
          {
            "name": "from",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "to",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "granularity",
            "in": "query",
            "required": false,
            "schema": {
              "enum": [
                "hour",
                "day"
              ]
            }
          },
          {
            "name": "methodology_version",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 2147483647
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 2000
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 240
            }
          },
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 160,
              "pattern": "^[a-z0-9][a-z0-9-]*$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "revision_id": {
                            "type": "string"
                          },
                          "revision_number": {
                            "type": "integer"
                          },
                          "methodology_version": {
                            "type": "integer"
                          },
                          "valuation_mode": {
                            "type": "string",
                            "enum": [
                              "steam_gross",
                              "cash_ask"
                            ]
                          },
                          "strategy": {
                            "const": "default"
                          },
                          "source": {
                            "const": "csfolder_roi"
                          },
                          "currency": {
                            "const": "USD"
                          },
                          "minor_units": {
                            "const": 2
                          },
                          "cost_cents": {
                            "type": "integer"
                          },
                          "expected_value_cents": {
                            "anyOf": [
                              {
                                "type": "integer"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "expected_profit_cents": {
                            "anyOf": [
                              {
                                "type": "integer"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "return_pct": {
                            "anyOf": [
                              {
                                "type": "string",
                                "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "profit_chance_pct": {
                            "anyOf": [
                              {
                                "type": "string",
                                "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "priced_probability_mass_pct": {
                            "type": "string",
                            "pattern": "^-?[0-9]+(?:\\.[0-9]+)?$"
                          },
                          "overall_confidence": {
                            "type": "string",
                            "enum": [
                              "high",
                              "medium",
                              "low",
                              "unavailable"
                            ]
                          },
                          "ts": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "recorded_at": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "granularity": {
                            "enum": [
                              "hour",
                              "day"
                            ]
                          },
                          "kind": {
                            "const": "model_snapshot"
                          },
                          "provenance": {
                            "const": "not_recorded"
                          }
                        },
                        "required": [
                          "revision_id",
                          "revision_number",
                          "methodology_version",
                          "valuation_mode",
                          "strategy",
                          "source",
                          "currency",
                          "minor_units",
                          "cost_cents",
                          "expected_value_cents",
                          "expected_profit_cents",
                          "return_pct",
                          "profit_chance_pct",
                          "priced_probability_mass_pct",
                          "overall_confidence",
                          "ts",
                          "recorded_at",
                          "granularity",
                          "kind",
                          "provenance"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/me/portfolios": {
      "get": {
        "operationId": "listPortfolios",
        "summary": "List explicitly authorized portfolios",
        "description": "Requires a personal access token (csf_pat) with owner consent. Returns only portfolios selected for this token and still owned by its user. Project keys cannot use this method.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "portfolio:read",
        "parameters": [
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80,
              "pattern": "^[A-Za-z0-9_-]+$"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "portfolio_id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "display_currency": {
                            "type": "string"
                          },
                          "price_source": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "portfolio_id",
                          "name",
                          "display_currency",
                          "price_source"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/me/portfolios/{portfolio_id}": {
      "get": {
        "operationId": "getPortfolio",
        "summary": "Portfolio settings",
        "description": "Private owner-only metadata. display_currency is a UI preference; all monetary fields in holdings, transactions and history use canonical USD cents.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "portfolio:read",
        "parameters": [
          {
            "name": "portfolio_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80,
              "pattern": "^[A-Za-z0-9_-]+$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "object",
                      "additionalProperties": false,
                      "properties": {
                        "portfolio_id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "display_currency": {
                          "type": "string"
                        },
                        "price_source": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "portfolio_id",
                        "name",
                        "display_currency",
                        "price_source"
                      ]
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/me/portfolios/{portfolio_id}/holdings": {
      "get": {
        "operationId": "listPortfolioHoldings",
        "summary": "Portfolio inventory lots",
        "description": "Read-only inventory lots. unit_cost_cents is nullable purchase basis per item, not current market value. Estimated costs remain flagged. Notes, Steam accounts and external integration references are excluded.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "portfolio:read",
        "parameters": [
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80,
              "pattern": "^[A-Za-z0-9_-]+$"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "portfolio_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80,
              "pattern": "^[A-Za-z0-9_-]+$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "holding_id": {
                            "type": "string"
                          },
                          "item_id": {
                            "type": "integer"
                          },
                          "market_hash_name": {
                            "type": "string"
                          },
                          "quantity": {
                            "type": "integer"
                          },
                          "unit_cost_cents": {
                            "anyOf": [
                              {
                                "type": "integer"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "cost_estimated": {
                            "type": "boolean"
                          },
                          "cost_source": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "acquired_at": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "source": {
                            "type": "string"
                          },
                          "currency": {
                            "const": "USD"
                          },
                          "minor_units": {
                            "const": 2
                          }
                        },
                        "required": [
                          "holding_id",
                          "item_id",
                          "market_hash_name",
                          "quantity",
                          "unit_cost_cents",
                          "cost_estimated",
                          "cost_source",
                          "acquired_at",
                          "source",
                          "currency",
                          "minor_units"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/me/portfolios/{portfolio_id}/transactions": {
      "get": {
        "operationId": "listPortfolioTransactions",
        "summary": "Portfolio transaction ledger",
        "description": "Stored buy/sell/resale rows, not marketplace-wide sales. unit_price_cents means purchase price for buy/resale and sale price for sell. Not a realized P&L calculation. Ordered by timestamp and ID; maximum 366-day UTC range, default last 31 days.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "portfolio:read",
        "parameters": [
          {
            "name": "from",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "to",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "after",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 200
            }
          },
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 100
            }
          },
          {
            "name": "portfolio_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80,
              "pattern": "^[A-Za-z0-9_-]+$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "transaction_id": {
                            "type": "string"
                          },
                          "type": {
                            "type": "string"
                          },
                          "item_id": {
                            "type": "integer"
                          },
                          "market_hash_name": {
                            "type": "string"
                          },
                          "quantity": {
                            "type": "integer"
                          },
                          "unit_price_cents": {
                            "type": "integer"
                          },
                          "unit_sell_price_cents": {
                            "anyOf": [
                              {
                                "type": "integer"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "fee_cents": {
                            "type": "integer"
                          },
                          "at": {
                            "type": "string",
                            "format": "date-time"
                          },
                          "cost_source": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "currency": {
                            "const": "USD"
                          },
                          "minor_units": {
                            "const": 2
                          }
                        },
                        "required": [
                          "transaction_id",
                          "type",
                          "item_id",
                          "market_hash_name",
                          "quantity",
                          "unit_price_cents",
                          "unit_sell_price_cents",
                          "fee_cents",
                          "at",
                          "cost_source",
                          "currency",
                          "minor_units"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/v1/me/portfolios/{portfolio_id}/history": {
      "get": {
        "operationId": "getPortfolioHistory",
        "summary": "Recorded portfolio value history",
        "description": "Available daily total value and cost snapshots. Each point retains its actual price_source, including null for unknown legacy sources; do not label the whole series with the current provider. Not TWR/IRR or investment return; deposits and withdrawals can change totals. Maximum 366 days, default last 31 days.",
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-required-scope": "portfolio:read",
        "parameters": [
          {
            "name": "from",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "to",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "portfolio_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1,
              "maxLength": 80,
              "pattern": "^[A-Za-z0-9_-]+$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "data",
                    "meta"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "additionalProperties": false,
                        "properties": {
                          "day": {
                            "type": "string",
                            "format": "date"
                          },
                          "value_cents": {
                            "type": "integer"
                          },
                          "cost_cents": {
                            "type": "integer"
                          },
                          "price_source": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "currency": {
                            "const": "USD"
                          },
                          "minor_units": {
                            "const": 2
                          }
                        },
                        "required": [
                          "day",
                          "value_cents",
                          "cost_cents",
                          "price_source",
                          "currency",
                          "minor_units"
                        ]
                      }
                    },
                    "meta": {
                      "type": "object",
                      "required": [
                        "request_id",
                        "generated_at"
                      ],
                      "properties": {
                        "request_id": {
                          "type": "string"
                        },
                        "generated_at": {
                          "type": "string",
                          "format": "date-time"
                        },
                        "next_cursor": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "as_of": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "next_page": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "from": {
                          "type": "string",
                          "format": "date"
                        },
                        "to": {
                          "type": "string",
                          "format": "date"
                        },
                        "resolution": {
                          "type": "string"
                        },
                        "missing_points": {
                          "type": "string"
                        },
                        "freshness": {
                          "enum": [
                            "unknown",
                            "fresh",
                            "stale"
                          ]
                        },
                        "cache_recently_checked": {
                          "type": "boolean"
                        },
                        "timestamp_quality": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "404": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "413": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "429": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          },
          "503": {
            "description": "Structured error. Retry only 429/503 within a bounded retry budget.",
            "content": {
              "application/problem+json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "type": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "status": {
                      "type": "integer",
                      "minimum": 400,
                      "maximum": 599
                    },
                    "detail": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    },
                    "request_id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 200
                    }
                  },
                  "required": [
                    "type",
                    "title",
                    "status",
                    "code",
                    "request_id"
                  ]
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "csf_live_<id>_<secret> or csf_pat_<id>_<secret>"
      }
    }
  }
}