{
  "opencollection": "1.0.0",
  "info": {
    "name": "Mirage Video Audio internal API",
    "version": "0.0.1"
  },
  "items": [
    {
      "info": {
        "name": "internal",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Create Api Key",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/internal/api-keys/generate",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Create a new API key for a user.\n\nThis endpoint requires internal API key authentication.\nThe returned API key should be saved securely as it cannot be retrieved again."
        },
        {
          "info": {
            "name": "Revoke Api Key",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/internal/api-keys/:key_id",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "key_id",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Revoke Api Key"
        },
        {
          "info": {
            "name": "List User Api Keys",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/internal/api-keys/user/:user_id",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "user_id",
                "value": "",
                "type": "path"
              },
              {
                "name": "org_id",
                "value": "",
                "type": "query",
                "description": "Organization ID to filter by"
              }
            ]
          },
          "docs": "List User Api Keys"
        },
        {
          "info": {
            "name": "Create Video",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/internal/videos",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "body": {
              "type": "multipart-form",
              "data": []
            }
          },
          "docs": "Create Video"
        },
        {
          "info": {
            "name": "Get Video",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/internal/videos/:video_id",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "video_id",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Get Video"
        },
        {
          "info": {
            "name": "List Rate Limit Overrides",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/internal/rate-limits/overrides",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "override_type",
                "value": "",
                "type": "query",
                "description": "Filter by type: 'org' or 'user'. If not provided, returns all overrides."
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "Maximum number of results"
              }
            ]
          },
          "docs": "List all rate limit overrides, optionally filtered by type.\n\nQuery parameters:\n- override_type: 'org' or 'user' to filter results\n- limit: Maximum number of results (default: 100, max: 1000)"
        },
        {
          "info": {
            "name": "Create Rate Limit Override",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/internal/rate-limits/overrides",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Create a new rate limit override for an org or user.\n\nThis endpoint requires internal API key authentication.\n\nExample request:\n```json\n{\n  \"identifier\": \"org:org_123\",\n  \"endpointLimits\": {\n    \"generation\": {\n      \"maxTokens\": 100,\n      \"refillRatePerSecond\": 5.0\n    },\n    \"status\": {\n      \"maxTokens\": 200,\n      \"refillRatePerSecond\": 50.0\n    }\n  },\n  \"note\": \"Enterprise plan with higher limits\"\n}\n```"
        },
        {
          "info": {
            "name": "Get Rate Limit Override",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/internal/rate-limits/overrides/:identifier",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "identifier",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Get a rate limit override by identifier.\n\nIdentifier format: 'org:<org_id>' or 'user:<user_id>'\n\nExample: /internal/rate-limits/overrides/org:org_123"
        },
        {
          "info": {
            "name": "Update Rate Limit Override",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "{{baseUrl}}/internal/rate-limits/overrides/:identifier",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "identifier",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Update an existing rate limit override.\n\nOnly the fields provided in the request will be updated."
        },
        {
          "info": {
            "name": "Delete Rate Limit Override",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/internal/rate-limits/overrides/:identifier",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "identifier",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Delete a rate limit override.\n\nAfter deletion, the org/user will fall back to default rate limits."
        },
        {
          "info": {
            "name": "Invalidate Rate Limit Override Cache",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/internal/rate-limits/overrides/:identifier/invalidate-cache",
            "headers": [
              {
                "name": "x-api-key",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "identifier",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Manually invalidate the cache for a specific rate limit override.\n\nUseful for debugging or forcing a cache refresh."
        }
      ]
    }
  ],
  "bundled": true
}