{
  "components": {
    "schemas": {
      "AccountArchiveResult": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/AccountBase"
            },
            "title": "Items",
            "type": "array"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "total",
          "items"
        ],
        "title": "AccountArchiveResult",
        "type": "object"
      },
      "AccountArchiveResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AccountArchiveResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AccountArchiveResultResponse",
        "type": "object"
      },
      "AccountBase": {
        "properties": {
          "activated": {
            "title": "Activated",
            "type": "boolean"
          },
          "avatar_url": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Avatar Url"
          },
          "created_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Created At"
          },
          "email": {
            "title": "Email",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "modified_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Modified At"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Name"
          },
          "role": {
            "$ref": "#/components/schemas/AccountRole"
          },
          "role_label": {
            "readOnly": true,
            "title": "Role Label",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "status_label": {
            "readOnly": true,
            "title": "Status Label",
            "type": "string"
          }
        },
        "required": [
          "id",
          "email",
          "role",
          "status",
          "activated",
          "role_label",
          "status_label"
        ],
        "title": "AccountBase",
        "type": "object"
      },
      "AccountBaseResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AccountBase"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AccountBaseResponse",
        "type": "object"
      },
      "AccountDetail": {
        "properties": {
          "activated": {
            "title": "Activated",
            "type": "boolean"
          },
          "app_count": {
            "default": 0,
            "title": "App Count",
            "type": "integer"
          },
          "avatar_url": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Avatar Url"
          },
          "created_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Created At"
          },
          "email": {
            "title": "Email",
            "type": "string"
          },
          "first_login_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "First Login At"
          },
          "gateway_count": {
            "default": 0,
            "title": "Gateway Count",
            "type": "integer"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "last_login_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Last Login At"
          },
          "last_login_ip": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Last Login Ip"
          },
          "last_login_user_agent": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Last Login User Agent"
          },
          "modified_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Modified At"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Name"
          },
          "role": {
            "$ref": "#/components/schemas/AccountRole"
          },
          "role_label": {
            "readOnly": true,
            "title": "Role Label",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/AccountStatus"
          },
          "status_label": {
            "readOnly": true,
            "title": "Status Label",
            "type": "string"
          }
        },
        "required": [
          "id",
          "email",
          "role",
          "status",
          "activated",
          "role_label",
          "status_label"
        ],
        "title": "AccountDetail",
        "type": "object"
      },
      "AccountDetailResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AccountDetail"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AccountDetailResponse",
        "type": "object"
      },
      "AccountList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/AccountBase"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "AccountList",
        "type": "object"
      },
      "AccountListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AccountList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AccountListResponse",
        "type": "object"
      },
      "AccountRole": {
        "enum": [
          "admin",
          "user"
        ],
        "title": "AccountRole",
        "type": "string"
      },
      "AccountStatus": {
        "enum": [
          "active",
          "disabled",
          "archived"
        ],
        "title": "AccountStatus",
        "type": "string"
      },
      "AdmissionMode": {
        "enum": [
          "disabled",
          "shadow",
          "enforce"
        ],
        "title": "AdmissionMode",
        "type": "string"
      },
      "AppItem": {
        "properties": {
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "provider_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Provider Id"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "name",
          "enabled",
          "version",
          "created_at",
          "modified_at"
        ],
        "title": "AppItem",
        "type": "object"
      },
      "AppItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AppItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AppItemResponse",
        "type": "object"
      },
      "AppKeyItem": {
        "properties": {
          "api_key": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Api Key",
            "type": "string"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "expires_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Expires At"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "revoked_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Revoked At"
          },
          "state": {
            "$ref": "#/components/schemas/AppKeyState"
          }
        },
        "required": [
          "id",
          "api_key",
          "state",
          "expires_at",
          "revoked_at",
          "created_at"
        ],
        "title": "AppKeyItem",
        "type": "object"
      },
      "AppKeyItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AppKeyItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AppKeyItemResponse",
        "type": "object"
      },
      "AppKeyList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/AppKeyItem"
            },
            "title": "Items",
            "type": "array"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "total",
          "items"
        ],
        "title": "AppKeyList",
        "type": "object"
      },
      "AppKeyListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AppKeyList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AppKeyListResponse",
        "type": "object"
      },
      "AppKeyState": {
        "enum": [
          "active",
          "grace",
          "revoked",
          "expired"
        ],
        "title": "AppKeyState",
        "type": "string"
      },
      "AppList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/AppListItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "AppList",
        "type": "object"
      },
      "AppListItem": {
        "properties": {
          "chains": {
            "items": {
              "$ref": "#/components/schemas/Chain"
            },
            "title": "Chains",
            "type": "array"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "enabled_gateway_count": {
            "title": "Enabled Gateway Count",
            "type": "integer"
          },
          "gateway_count": {
            "title": "Gateway Count",
            "type": "integer"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "provider_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Provider Id"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "name",
          "enabled",
          "version",
          "created_at",
          "modified_at",
          "chains",
          "gateway_count",
          "enabled_gateway_count"
        ],
        "title": "AppListItem",
        "type": "object"
      },
      "AppListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AppList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AppListResponse",
        "type": "object"
      },
      "AppProviderItem": {
        "properties": {
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "vendor": {
            "$ref": "#/components/schemas/ProviderVendor"
          },
          "vendor_label": {
            "readOnly": true,
            "title": "Vendor Label",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "vendor",
          "vendor_label"
        ],
        "title": "AppProviderItem",
        "type": "object"
      },
      "AppProviderResult": {
        "properties": {
          "app_id": {
            "title": "App Id",
            "type": "string"
          },
          "provider": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/AppProviderItem"
              },
              {
                "type": "null"
              }
            ]
          },
          "route_targets_added": {
            "minimum": 0.0,
            "title": "Route Targets Added",
            "type": "integer"
          },
          "route_targets_removed": {
            "minimum": 0.0,
            "title": "Route Targets Removed",
            "type": "integer"
          },
          "route_targets_skipped": {
            "minimum": 0.0,
            "title": "Route Targets Skipped",
            "type": "integer"
          }
        },
        "required": [
          "app_id",
          "provider",
          "route_targets_added",
          "route_targets_removed",
          "route_targets_skipped"
        ],
        "title": "AppProviderResult",
        "type": "object"
      },
      "AppProviderResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AppProviderResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AppProviderResultResponse",
        "type": "object"
      },
      "ArchiveAccountsParams": {
        "properties": {
          "ids": {
            "items": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 100,
            "minItems": 1,
            "title": "Ids",
            "type": "array"
          }
        },
        "required": [
          "ids"
        ],
        "title": "ArchiveAccountsParams",
        "type": "object"
      },
      "AuthIdentity": {
        "properties": {
          "avatar_url": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Avatar Url"
          },
          "email": {
            "title": "Email",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "identity_type": {
            "$ref": "#/components/schemas/IdentityType"
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Name"
          }
        },
        "required": [
          "identity_type",
          "id",
          "email"
        ],
        "title": "AuthIdentity",
        "type": "object"
      },
      "AuthIdentityResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AuthIdentity"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "AuthIdentityResponse",
        "type": "object"
      },
      "BulkDeleteEndpointParams": {
        "additionalProperties": false,
        "properties": {
          "endpoint_ids": {
            "items": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            },
            "maxItems": 50,
            "minItems": 1,
            "title": "Endpoint Ids",
            "type": "array"
          }
        },
        "required": [
          "endpoint_ids"
        ],
        "title": "BulkDeleteEndpointParams",
        "type": "object"
      },
      "BulkDeleteEndpointResult": {
        "properties": {
          "deleted": {
            "items": {
              "$ref": "#/components/schemas/EndpointDeleteResult"
            },
            "title": "Deleted",
            "type": "array"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "total",
          "deleted"
        ],
        "title": "BulkDeleteEndpointResult",
        "type": "object"
      },
      "BulkDeleteEndpointResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/BulkDeleteEndpointResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "BulkDeleteEndpointResultResponse",
        "type": "object"
      },
      "BulkUpdateGatewayParams": {
        "additionalProperties": false,
        "properties": {
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "gateways": {
            "items": {
              "$ref": "#/components/schemas/GatewayBulkTargetParams"
            },
            "maxItems": 50,
            "minItems": 1,
            "title": "Gateways",
            "type": "array"
          }
        },
        "required": [
          "enabled",
          "gateways"
        ],
        "title": "BulkUpdateGatewayParams",
        "type": "object"
      },
      "BulkUpdateGatewayResult": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/GatewayItem"
            },
            "title": "Items",
            "type": "array"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "total",
          "items"
        ],
        "title": "BulkUpdateGatewayResult",
        "type": "object"
      },
      "BulkUpdateGatewayResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/BulkUpdateGatewayResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "BulkUpdateGatewayResultResponse",
        "type": "object"
      },
      "Chain": {
        "enum": [
          "ethereum",
          "polygon",
          "bsc",
          "arbitrum",
          "optimism",
          "base",
          "solana",
          "bitcoin",
          "litecoin",
          "tron"
        ],
        "title": "Chain",
        "type": "string"
      },
      "CreateAccountParams": {
        "properties": {
          "email": {
            "maxLength": 320,
            "minLength": 3,
            "title": "Email",
            "type": "string"
          }
        },
        "required": [
          "email"
        ],
        "title": "CreateAccountParams",
        "type": "object"
      },
      "CreateAppParams": {
        "additionalProperties": false,
        "properties": {
          "enabled": {
            "default": true,
            "title": "Enabled",
            "type": "boolean"
          },
          "name": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Name",
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "title": "CreateAppParams",
        "type": "object"
      },
      "CreateEndpointParams": {
        "properties": {
          "auth": {
            "discriminator": {
              "mapping": {
                "bearer": "#/components/schemas/EndpointBearerAuthCreateParams",
                "header_api_key": "#/components/schemas/EndpointHeaderAuthCreateParams",
                "none": "#/components/schemas/EndpointNoAuthCreateParams",
                "path_api_key": "#/components/schemas/EndpointPathAuthCreateParams",
                "query_api_key": "#/components/schemas/EndpointQueryAuthCreateParams"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/EndpointNoAuthCreateParams"
              },
              {
                "$ref": "#/components/schemas/EndpointBearerAuthCreateParams"
              },
              {
                "$ref": "#/components/schemas/EndpointHeaderAuthCreateParams"
              },
              {
                "$ref": "#/components/schemas/EndpointQueryAuthCreateParams"
              },
              {
                "$ref": "#/components/schemas/EndpointPathAuthCreateParams"
              }
            ],
            "title": "Auth"
          },
          "chain": {
            "$ref": "#/components/schemas/Chain"
          },
          "enabled": {
            "default": true,
            "title": "Enabled",
            "type": "boolean"
          },
          "name": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Name",
            "type": "string"
          },
          "network": {
            "$ref": "#/components/schemas/Network"
          },
          "protocol": {
            "$ref": "#/components/schemas/EndpointProtocol"
          },
          "url": {
            "maxLength": 4096,
            "minLength": 1,
            "title": "Url",
            "type": "string"
          }
        },
        "required": [
          "name",
          "chain",
          "network",
          "protocol",
          "url"
        ],
        "title": "CreateEndpointParams",
        "type": "object"
      },
      "CreateJsonRpcMethodRouteParams": {
        "additionalProperties": false,
        "properties": {
          "max_attempts": {
            "default": 3,
            "maximum": 10.0,
            "minimum": 1.0,
            "title": "Max Attempts",
            "type": "integer"
          },
          "methods": {
            "items": {
              "type": "string"
            },
            "maxItems": 100,
            "minItems": 1,
            "title": "Methods",
            "type": "array"
          },
          "retry_policy": {
            "$ref": "#/components/schemas/JsonRpcRetryPolicy",
            "default": "safe_only",
            "deprecated": true
          },
          "strategy": {
            "discriminator": {
              "mapping": {
                "load_balance": "#/components/schemas/JsonRpcLoadBalanceParams",
                "priority_failover": "#/components/schemas/JsonRpcPriorityFailoverParams"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/JsonRpcLoadBalanceParams"
              },
              {
                "$ref": "#/components/schemas/JsonRpcPriorityFailoverParams"
              }
            ],
            "title": "Strategy"
          }
        },
        "required": [
          "strategy",
          "methods"
        ],
        "title": "CreateJsonRpcMethodRouteParams",
        "type": "object"
      },
      "CreatePersonalAccessTokenParams": {
        "additionalProperties": false,
        "properties": {
          "expires_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Expires At"
          },
          "name": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Name",
            "type": "string"
          },
          "scopes": {
            "items": {
              "$ref": "#/components/schemas/PersonalAccessTokenScope"
            },
            "maxItems": 20,
            "minItems": 1,
            "title": "Scopes",
            "type": "array"
          }
        },
        "required": [
          "name",
          "scopes"
        ],
        "title": "CreatePersonalAccessTokenParams",
        "type": "object"
      },
      "CreateProviderParams": {
        "additionalProperties": false,
        "properties": {
          "credential": {
            "$ref": "#/components/schemas/ProviderCredentialParams"
          },
          "enabled": {
            "default": true,
            "title": "Enabled",
            "type": "boolean"
          },
          "name": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Name",
            "type": "string"
          },
          "networks": {
            "anyOf": [
              {
                "items": {
                  "$ref": "#/components/schemas/ProviderNetworkPair"
                },
                "maxItems": 50,
                "minItems": 1,
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "title": "Networks"
          },
          "settings": {
            "$ref": "#/components/schemas/ProviderSettingsParams"
          },
          "sync_enabled": {
            "default": false,
            "title": "Sync Enabled",
            "type": "boolean"
          },
          "vendor": {
            "$ref": "#/components/schemas/ProviderVendor"
          }
        },
        "required": [
          "name",
          "vendor",
          "credential"
        ],
        "title": "CreateProviderParams",
        "type": "object"
      },
      "CreatedApp": {
        "properties": {
          "api_key": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Api Key",
            "type": "string"
          },
          "api_key_id": {
            "title": "Api Key Id",
            "type": "string"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "provider_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Provider Id"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "name",
          "enabled",
          "version",
          "created_at",
          "modified_at",
          "api_key_id",
          "api_key"
        ],
        "title": "CreatedApp",
        "type": "object"
      },
      "CreatedAppKey": {
        "properties": {
          "api_key": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Api Key",
            "type": "string"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "expires_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Expires At"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "revoked_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Revoked At"
          },
          "state": {
            "$ref": "#/components/schemas/AppKeyState"
          }
        },
        "required": [
          "id",
          "api_key",
          "state",
          "expires_at",
          "revoked_at",
          "created_at"
        ],
        "title": "CreatedAppKey",
        "type": "object"
      },
      "CreatedAppKeyResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/CreatedAppKey"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "CreatedAppKeyResponse",
        "type": "object"
      },
      "CreatedAppResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/CreatedApp"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "CreatedAppResponse",
        "type": "object"
      },
      "CreatedPersonalAccessToken": {
        "properties": {
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "expires_at": {
            "format": "date-time",
            "title": "Expires At",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "last_used_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Last Used At"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "revoked_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Revoked At"
          },
          "scopes": {
            "items": {
              "$ref": "#/components/schemas/PersonalAccessTokenScope"
            },
            "title": "Scopes",
            "type": "array"
          },
          "state": {
            "$ref": "#/components/schemas/PersonalAccessTokenState"
          },
          "token": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Token",
            "type": "string"
          },
          "token_prefix": {
            "title": "Token Prefix",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "token_prefix",
          "scopes",
          "state",
          "expires_at",
          "last_used_at",
          "revoked_at",
          "created_at",
          "token"
        ],
        "title": "CreatedPersonalAccessToken",
        "type": "object"
      },
      "CreatedPersonalAccessTokenResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/CreatedPersonalAccessToken"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "CreatedPersonalAccessTokenResponse",
        "type": "object"
      },
      "DeletedApp": {
        "properties": {
          "deleted": {
            "title": "Deleted",
            "type": "boolean"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "version",
          "deleted"
        ],
        "title": "DeletedApp",
        "type": "object"
      },
      "DeletedAppResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/DeletedApp"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "DeletedAppResponse",
        "type": "object"
      },
      "EndpointBearerAuthCreateParams": {
        "properties": {
          "secret": {
            "format": "password",
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string",
            "writeOnly": true
          },
          "type": {
            "const": "bearer",
            "default": "bearer",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "secret"
        ],
        "title": "EndpointBearerAuthCreateParams",
        "type": "object"
      },
      "EndpointBearerAuthDetail": {
        "properties": {
          "has_secret": {
            "const": true,
            "default": true,
            "title": "Has Secret",
            "type": "boolean"
          },
          "secret": {
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string"
          },
          "type": {
            "const": "bearer",
            "default": "bearer",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "secret"
        ],
        "title": "EndpointBearerAuthDetail",
        "type": "object"
      },
      "EndpointBearerAuthPublic": {
        "properties": {
          "has_secret": {
            "const": true,
            "default": true,
            "title": "Has Secret",
            "type": "boolean"
          },
          "type": {
            "const": "bearer",
            "default": "bearer",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointBearerAuthPublic",
        "type": "object"
      },
      "EndpointBearerAuthUpdateParams": {
        "properties": {
          "secret": {
            "anyOf": [
              {
                "format": "password",
                "maxLength": 4096,
                "minLength": 1,
                "type": "string",
                "writeOnly": true
              },
              {
                "type": "null"
              }
            ],
            "title": "Secret"
          },
          "type": {
            "const": "bearer",
            "default": "bearer",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointBearerAuthUpdateParams",
        "type": "object"
      },
      "EndpointDeleteResult": {
        "properties": {
          "deleted": {
            "title": "Deleted",
            "type": "boolean"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "version",
          "deleted"
        ],
        "title": "EndpointDeleteResult",
        "type": "object"
      },
      "EndpointDeleteResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/EndpointDeleteResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "EndpointDeleteResultResponse",
        "type": "object"
      },
      "EndpointDetail": {
        "properties": {
          "account_id": {
            "title": "Account Id",
            "type": "string"
          },
          "auth": {
            "anyOf": [
              {
                "discriminator": {
                  "mapping": {
                    "bearer": "#/components/schemas/EndpointBearerAuthDetail",
                    "header_api_key": "#/components/schemas/EndpointHeaderAuthDetail",
                    "none": "#/components/schemas/EndpointNoAuthPublic",
                    "path_api_key": "#/components/schemas/EndpointPathAuthDetail",
                    "query_api_key": "#/components/schemas/EndpointQueryAuthDetail"
                  },
                  "propertyName": "type"
                },
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/EndpointNoAuthPublic"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointBearerAuthDetail"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointHeaderAuthDetail"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointQueryAuthDetail"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointPathAuthDetail"
                  }
                ]
              },
              {
                "discriminator": {
                  "mapping": {
                    "bearer": "#/components/schemas/EndpointBearerAuthPublic",
                    "header_api_key": "#/components/schemas/EndpointHeaderAuthPublic",
                    "none": "#/components/schemas/EndpointNoAuthPublic",
                    "path_api_key": "#/components/schemas/EndpointPathAuthPublic",
                    "query_api_key": "#/components/schemas/EndpointQueryAuthPublic"
                  },
                  "propertyName": "type"
                },
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/EndpointNoAuthPublic"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointBearerAuthPublic"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointHeaderAuthPublic"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointQueryAuthPublic"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointPathAuthPublic"
                  }
                ]
              }
            ],
            "title": "Auth"
          },
          "chain": {
            "$ref": "#/components/schemas/Chain"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "effective_url": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Effective Url"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "health": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/EndpointHealthItem"
              },
              {
                "type": "null"
              }
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "network": {
            "$ref": "#/components/schemas/Network"
          },
          "origin_type": {
            "$ref": "#/components/schemas/EndpointOriginType"
          },
          "protocol": {
            "$ref": "#/components/schemas/EndpointProtocol"
          },
          "provider": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/EndpointProviderSummary"
              },
              {
                "type": "null"
              }
            ]
          },
          "provider_external_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Provider External Id"
          },
          "provider_last_seen_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Provider Last Seen At"
          },
          "provider_sync_status": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/ProviderEndpointSyncStatus"
              },
              {
                "type": "null"
              }
            ]
          },
          "url": {
            "title": "Url",
            "type": "string"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "account_id",
          "name",
          "origin_type",
          "provider",
          "provider_external_id",
          "provider_sync_status",
          "provider_last_seen_at",
          "chain",
          "network",
          "protocol",
          "url",
          "enabled",
          "auth",
          "version",
          "created_at",
          "modified_at"
        ],
        "title": "EndpointDetail",
        "type": "object"
      },
      "EndpointDetailOrEndpointItemResponse": {
        "properties": {
          "data": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/EndpointDetail"
              },
              {
                "$ref": "#/components/schemas/EndpointItem"
              }
            ],
            "title": "Data"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "EndpointDetailOrEndpointItemResponse",
        "type": "object"
      },
      "EndpointHeaderAuthCreateParams": {
        "properties": {
          "header_name": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Header Name",
            "type": "string"
          },
          "secret": {
            "format": "password",
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string",
            "writeOnly": true
          },
          "type": {
            "const": "header_api_key",
            "default": "header_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "secret",
          "header_name"
        ],
        "title": "EndpointHeaderAuthCreateParams",
        "type": "object"
      },
      "EndpointHeaderAuthDetail": {
        "properties": {
          "has_secret": {
            "const": true,
            "default": true,
            "title": "Has Secret",
            "type": "boolean"
          },
          "header_name": {
            "title": "Header Name",
            "type": "string"
          },
          "secret": {
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string"
          },
          "type": {
            "const": "header_api_key",
            "default": "header_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "header_name",
          "secret"
        ],
        "title": "EndpointHeaderAuthDetail",
        "type": "object"
      },
      "EndpointHeaderAuthPublic": {
        "properties": {
          "has_secret": {
            "const": true,
            "default": true,
            "title": "Has Secret",
            "type": "boolean"
          },
          "header_name": {
            "title": "Header Name",
            "type": "string"
          },
          "type": {
            "const": "header_api_key",
            "default": "header_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "header_name"
        ],
        "title": "EndpointHeaderAuthPublic",
        "type": "object"
      },
      "EndpointHeaderAuthUpdateParams": {
        "properties": {
          "header_name": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Header Name"
          },
          "secret": {
            "anyOf": [
              {
                "format": "password",
                "maxLength": 4096,
                "minLength": 1,
                "type": "string",
                "writeOnly": true
              },
              {
                "type": "null"
              }
            ],
            "title": "Secret"
          },
          "type": {
            "const": "header_api_key",
            "default": "header_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointHeaderAuthUpdateParams",
        "type": "object"
      },
      "EndpointHealthCheck": {
        "properties": {
          "last_observed_at": {
            "format": "date-time",
            "title": "Last Observed At",
            "type": "string"
          },
          "status": {
            "enum": [
              "healthy",
              "unhealthy"
            ],
            "title": "Status",
            "type": "string"
          }
        },
        "required": [
          "status",
          "last_observed_at"
        ],
        "title": "EndpointHealthCheck",
        "type": "object"
      },
      "EndpointHealthCheckResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/EndpointHealthCheck"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "EndpointHealthCheckResponse",
        "type": "object"
      },
      "EndpointHealthItem": {
        "properties": {
          "last_observed_at": {
            "format": "date-time",
            "title": "Last Observed At",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/HealthStatus"
          }
        },
        "required": [
          "status",
          "last_observed_at"
        ],
        "title": "EndpointHealthItem",
        "type": "object"
      },
      "EndpointItem": {
        "properties": {
          "account_id": {
            "title": "Account Id",
            "type": "string"
          },
          "auth": {
            "discriminator": {
              "mapping": {
                "bearer": "#/components/schemas/EndpointBearerAuthPublic",
                "header_api_key": "#/components/schemas/EndpointHeaderAuthPublic",
                "none": "#/components/schemas/EndpointNoAuthPublic",
                "path_api_key": "#/components/schemas/EndpointPathAuthPublic",
                "query_api_key": "#/components/schemas/EndpointQueryAuthPublic"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/EndpointNoAuthPublic"
              },
              {
                "$ref": "#/components/schemas/EndpointBearerAuthPublic"
              },
              {
                "$ref": "#/components/schemas/EndpointHeaderAuthPublic"
              },
              {
                "$ref": "#/components/schemas/EndpointQueryAuthPublic"
              },
              {
                "$ref": "#/components/schemas/EndpointPathAuthPublic"
              }
            ],
            "title": "Auth"
          },
          "chain": {
            "$ref": "#/components/schemas/Chain"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "effective_url": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Effective Url"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "health": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/EndpointHealthItem"
              },
              {
                "type": "null"
              }
            ]
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "network": {
            "$ref": "#/components/schemas/Network"
          },
          "origin_type": {
            "$ref": "#/components/schemas/EndpointOriginType"
          },
          "protocol": {
            "$ref": "#/components/schemas/EndpointProtocol"
          },
          "provider": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/EndpointProviderSummary"
              },
              {
                "type": "null"
              }
            ]
          },
          "provider_external_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Provider External Id"
          },
          "provider_last_seen_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Provider Last Seen At"
          },
          "provider_sync_status": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/ProviderEndpointSyncStatus"
              },
              {
                "type": "null"
              }
            ]
          },
          "url": {
            "title": "Url",
            "type": "string"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "account_id",
          "name",
          "origin_type",
          "provider",
          "provider_external_id",
          "provider_sync_status",
          "provider_last_seen_at",
          "chain",
          "network",
          "protocol",
          "url",
          "enabled",
          "auth",
          "version",
          "created_at",
          "modified_at"
        ],
        "title": "EndpointItem",
        "type": "object"
      },
      "EndpointList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/EndpointItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "EndpointList",
        "type": "object"
      },
      "EndpointListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/EndpointList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "EndpointListResponse",
        "type": "object"
      },
      "EndpointNoAuthCreateParams": {
        "properties": {
          "type": {
            "const": "none",
            "default": "none",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointNoAuthCreateParams",
        "type": "object"
      },
      "EndpointNoAuthPublic": {
        "properties": {
          "has_secret": {
            "const": false,
            "default": false,
            "title": "Has Secret",
            "type": "boolean"
          },
          "type": {
            "const": "none",
            "default": "none",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointNoAuthPublic",
        "type": "object"
      },
      "EndpointNoAuthUpdateParams": {
        "properties": {
          "type": {
            "const": "none",
            "default": "none",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointNoAuthUpdateParams",
        "type": "object"
      },
      "EndpointOriginType": {
        "enum": [
          "manual",
          "provider"
        ],
        "title": "EndpointOriginType",
        "type": "string"
      },
      "EndpointPathAuthCreateParams": {
        "properties": {
          "secret": {
            "format": "password",
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string",
            "writeOnly": true
          },
          "type": {
            "const": "path_api_key",
            "default": "path_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "secret"
        ],
        "title": "EndpointPathAuthCreateParams",
        "type": "object"
      },
      "EndpointPathAuthDetail": {
        "properties": {
          "has_secret": {
            "const": true,
            "default": true,
            "title": "Has Secret",
            "type": "boolean"
          },
          "secret": {
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string"
          },
          "type": {
            "const": "path_api_key",
            "default": "path_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "secret"
        ],
        "title": "EndpointPathAuthDetail",
        "type": "object"
      },
      "EndpointPathAuthPublic": {
        "properties": {
          "has_secret": {
            "const": true,
            "default": true,
            "title": "Has Secret",
            "type": "boolean"
          },
          "type": {
            "const": "path_api_key",
            "default": "path_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointPathAuthPublic",
        "type": "object"
      },
      "EndpointPathAuthUpdateParams": {
        "properties": {
          "secret": {
            "anyOf": [
              {
                "format": "password",
                "maxLength": 4096,
                "minLength": 1,
                "type": "string",
                "writeOnly": true
              },
              {
                "type": "null"
              }
            ],
            "title": "Secret"
          },
          "type": {
            "const": "path_api_key",
            "default": "path_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointPathAuthUpdateParams",
        "type": "object"
      },
      "EndpointProtocol": {
        "enum": [
          "jsonrpc",
          "http_api"
        ],
        "title": "EndpointProtocol",
        "type": "string"
      },
      "EndpointProviderSummary": {
        "properties": {
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "vendor": {
            "$ref": "#/components/schemas/ProviderVendor"
          },
          "vendor_label": {
            "title": "Vendor Label",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "vendor",
          "vendor_label"
        ],
        "title": "EndpointProviderSummary",
        "type": "object"
      },
      "EndpointQueryAuthCreateParams": {
        "properties": {
          "query_param": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Query Param",
            "type": "string"
          },
          "secret": {
            "format": "password",
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string",
            "writeOnly": true
          },
          "type": {
            "const": "query_api_key",
            "default": "query_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "secret",
          "query_param"
        ],
        "title": "EndpointQueryAuthCreateParams",
        "type": "object"
      },
      "EndpointQueryAuthDetail": {
        "properties": {
          "has_secret": {
            "const": true,
            "default": true,
            "title": "Has Secret",
            "type": "boolean"
          },
          "query_param": {
            "title": "Query Param",
            "type": "string"
          },
          "secret": {
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string"
          },
          "type": {
            "const": "query_api_key",
            "default": "query_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "query_param",
          "secret"
        ],
        "title": "EndpointQueryAuthDetail",
        "type": "object"
      },
      "EndpointQueryAuthPublic": {
        "properties": {
          "has_secret": {
            "const": true,
            "default": true,
            "title": "Has Secret",
            "type": "boolean"
          },
          "query_param": {
            "title": "Query Param",
            "type": "string"
          },
          "type": {
            "const": "query_api_key",
            "default": "query_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "query_param"
        ],
        "title": "EndpointQueryAuthPublic",
        "type": "object"
      },
      "EndpointQueryAuthUpdateParams": {
        "properties": {
          "query_param": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Query Param"
          },
          "secret": {
            "anyOf": [
              {
                "format": "password",
                "maxLength": 4096,
                "minLength": 1,
                "type": "string",
                "writeOnly": true
              },
              {
                "type": "null"
              }
            ],
            "title": "Secret"
          },
          "type": {
            "const": "query_api_key",
            "default": "query_api_key",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "EndpointQueryAuthUpdateParams",
        "type": "object"
      },
      "EndpointRouteBindingDeleteResult": {
        "properties": {
          "endpoint_id": {
            "title": "Endpoint Id",
            "type": "string"
          },
          "route_deleted": {
            "title": "Route Deleted",
            "type": "boolean"
          },
          "route_id": {
            "title": "Route Id",
            "type": "string"
          },
          "route_type": {
            "$ref": "#/components/schemas/EndpointRouteType"
          },
          "route_version": {
            "anyOf": [
              {
                "minimum": 1.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Route Version"
          }
        },
        "required": [
          "endpoint_id",
          "route_type",
          "route_id",
          "route_deleted"
        ],
        "title": "EndpointRouteBindingDeleteResult",
        "type": "object"
      },
      "EndpointRouteBindingDeleteResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/EndpointRouteBindingDeleteResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "EndpointRouteBindingDeleteResultResponse",
        "type": "object"
      },
      "EndpointRouteBindingItem": {
        "properties": {
          "gateway": {
            "$ref": "#/components/schemas/EndpointRouteGatewayItem"
          },
          "methods": {
            "items": {
              "type": "string"
            },
            "title": "Methods",
            "type": "array"
          },
          "route_id": {
            "title": "Route Id",
            "type": "string"
          },
          "route_type": {
            "$ref": "#/components/schemas/EndpointRouteType"
          },
          "route_version": {
            "minimum": 1.0,
            "title": "Route Version",
            "type": "integer"
          },
          "strategy_type": {
            "$ref": "#/components/schemas/EndpointRouteStrategyType"
          },
          "target_count": {
            "minimum": 1.0,
            "title": "Target Count",
            "type": "integer"
          }
        },
        "required": [
          "route_type",
          "route_id",
          "route_version",
          "strategy_type",
          "methods",
          "target_count",
          "gateway"
        ],
        "title": "EndpointRouteBindingItem",
        "type": "object"
      },
      "EndpointRouteBindingList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/EndpointRouteBindingItem"
            },
            "title": "Items",
            "type": "array"
          },
          "total": {
            "minimum": 0.0,
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "total",
          "items"
        ],
        "title": "EndpointRouteBindingList",
        "type": "object"
      },
      "EndpointRouteBindingListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/EndpointRouteBindingList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "EndpointRouteBindingListResponse",
        "type": "object"
      },
      "EndpointRouteGatewayItem": {
        "properties": {
          "app_id": {
            "title": "App Id",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          }
        },
        "required": [
          "id",
          "app_id",
          "name"
        ],
        "title": "EndpointRouteGatewayItem",
        "type": "object"
      },
      "EndpointRouteStrategyType": {
        "enum": [
          "priority_failover",
          "load_balance"
        ],
        "title": "EndpointRouteStrategyType",
        "type": "string"
      },
      "EndpointRouteType": {
        "enum": [
          "jsonrpc_default",
          "jsonrpc_method",
          "http_api"
        ],
        "title": "EndpointRouteType",
        "type": "string"
      },
      "ErrorResponseModel": {
        "properties": {
          "code": {
            "default": "internal.error",
            "title": "Code",
            "type": "string"
          },
          "details": {
            "anyOf": [
              {
                "additionalProperties": true,
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "title": "Details"
          },
          "msg": {
            "title": "Msg",
            "type": "string"
          },
          "success": {
            "default": false,
            "title": "Success",
            "type": "boolean"
          },
          "trace_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Trace Id"
          }
        },
        "required": [
          "msg"
        ],
        "title": "ErrorResponseModel",
        "type": "object"
      },
      "GatewayAccessPoint": {
        "properties": {
          "transport": {
            "$ref": "#/components/schemas/Transport"
          },
          "url": {
            "title": "Url",
            "type": "string"
          }
        },
        "required": [
          "transport",
          "url"
        ],
        "title": "GatewayAccessPoint",
        "type": "object"
      },
      "GatewayBulkTargetParams": {
        "additionalProperties": false,
        "properties": {
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "id": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Id",
            "type": "string"
          }
        },
        "required": [
          "id",
          "expected_version"
        ],
        "title": "GatewayBulkTargetParams",
        "type": "object"
      },
      "GatewayItem": {
        "properties": {
          "access_points": {
            "items": {
              "$ref": "#/components/schemas/GatewayAccessPoint"
            },
            "title": "Access Points",
            "type": "array"
          },
          "app_id": {
            "title": "App Id",
            "type": "string"
          },
          "app_name": {
            "title": "App Name",
            "type": "string"
          },
          "chain": {
            "$ref": "#/components/schemas/Chain"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "effective_enabled": {
            "title": "Effective Enabled",
            "type": "boolean"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "network": {
            "$ref": "#/components/schemas/Network"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "app_id",
          "app_name",
          "name",
          "chain",
          "network",
          "enabled",
          "effective_enabled",
          "version",
          "access_points",
          "created_at",
          "modified_at"
        ],
        "title": "GatewayItem",
        "type": "object"
      },
      "GatewayItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/GatewayItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "GatewayItemResponse",
        "type": "object"
      },
      "GatewayList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/GatewayItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "GatewayList",
        "type": "object"
      },
      "GatewayListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/GatewayList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "GatewayListResponse",
        "type": "object"
      },
      "HealthStatus": {
        "enum": [
          "unknown",
          "healthy",
          "unhealthy"
        ],
        "title": "HealthStatus",
        "type": "string"
      },
      "HttpApiLoadBalanceItem": {
        "properties": {
          "targets": {
            "items": {
              "$ref": "#/components/schemas/HttpApiLoadBalanceTargetItem"
            },
            "title": "Targets",
            "type": "array"
          },
          "type": {
            "const": "load_balance",
            "default": "load_balance",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "targets"
        ],
        "title": "HttpApiLoadBalanceItem",
        "type": "object"
      },
      "HttpApiLoadBalanceParams": {
        "additionalProperties": false,
        "properties": {
          "targets": {
            "items": {
              "$ref": "#/components/schemas/HttpApiLoadBalanceTargetParams"
            },
            "maxItems": 100,
            "title": "Targets",
            "type": "array"
          },
          "type": {
            "const": "load_balance",
            "default": "load_balance",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "HttpApiLoadBalanceParams",
        "type": "object"
      },
      "HttpApiLoadBalanceTargetItem": {
        "properties": {
          "endpoint_id": {
            "title": "Endpoint Id",
            "type": "string"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "weight": {
            "title": "Weight",
            "type": "integer"
          }
        },
        "required": [
          "endpoint_id",
          "position",
          "weight"
        ],
        "title": "HttpApiLoadBalanceTargetItem",
        "type": "object"
      },
      "HttpApiLoadBalanceTargetParams": {
        "additionalProperties": false,
        "properties": {
          "endpoint_id": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Endpoint Id",
            "type": "string"
          },
          "weight": {
            "default": 100,
            "maximum": 1000.0,
            "minimum": 1.0,
            "title": "Weight",
            "type": "integer"
          }
        },
        "required": [
          "endpoint_id"
        ],
        "title": "HttpApiLoadBalanceTargetParams",
        "type": "object"
      },
      "HttpApiPriorityFailoverItem": {
        "properties": {
          "targets": {
            "items": {
              "$ref": "#/components/schemas/HttpApiPriorityFailoverTargetItem"
            },
            "title": "Targets",
            "type": "array"
          },
          "type": {
            "const": "priority_failover",
            "default": "priority_failover",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "targets"
        ],
        "title": "HttpApiPriorityFailoverItem",
        "type": "object"
      },
      "HttpApiPriorityFailoverParams": {
        "additionalProperties": false,
        "properties": {
          "targets": {
            "items": {
              "$ref": "#/components/schemas/HttpApiPriorityFailoverTargetParams"
            },
            "maxItems": 100,
            "title": "Targets",
            "type": "array"
          },
          "type": {
            "const": "priority_failover",
            "default": "priority_failover",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "HttpApiPriorityFailoverParams",
        "type": "object"
      },
      "HttpApiPriorityFailoverTargetItem": {
        "properties": {
          "endpoint_id": {
            "title": "Endpoint Id",
            "type": "string"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          }
        },
        "required": [
          "endpoint_id",
          "position"
        ],
        "title": "HttpApiPriorityFailoverTargetItem",
        "type": "object"
      },
      "HttpApiPriorityFailoverTargetParams": {
        "additionalProperties": false,
        "properties": {
          "endpoint_id": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Endpoint Id",
            "type": "string"
          }
        },
        "required": [
          "endpoint_id"
        ],
        "title": "HttpApiPriorityFailoverTargetParams",
        "type": "object"
      },
      "HttpApiRateLimitAuditEventItem": {
        "properties": {
          "actor_id": {
            "title": "Actor Id",
            "type": "string"
          },
          "actor_token_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Actor Token Id"
          },
          "changed_fields": {
            "items": {
              "type": "string"
            },
            "title": "Changed Fields",
            "type": "array"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "new_version": {
            "title": "New Version",
            "type": "integer"
          },
          "previous_version": {
            "title": "Previous Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "actor_id",
          "actor_token_id",
          "previous_version",
          "new_version",
          "changed_fields",
          "created_at"
        ],
        "title": "HttpApiRateLimitAuditEventItem",
        "type": "object"
      },
      "HttpApiRateLimitAuditEventList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/HttpApiRateLimitAuditEventItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "HttpApiRateLimitAuditEventList",
        "type": "object"
      },
      "HttpApiRateLimitAuditEventListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/HttpApiRateLimitAuditEventList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "HttpApiRateLimitAuditEventListResponse",
        "type": "object"
      },
      "HttpApiRateLimitBucket": {
        "properties": {
          "burst": {
            "maximum": 10000000.0,
            "minimum": 1.0,
            "title": "Burst",
            "type": "integer"
          },
          "rps": {
            "maximum": 1000000.0,
            "minimum": 1.0,
            "title": "Rps",
            "type": "integer"
          }
        },
        "required": [
          "rps",
          "burst"
        ],
        "title": "HttpApiRateLimitBucket",
        "type": "object"
      },
      "HttpApiRateLimitPolicyItem": {
        "properties": {
          "account_limit": {
            "$ref": "#/components/schemas/HttpApiRateLimitBucket"
          },
          "app_limit": {
            "$ref": "#/components/schemas/HttpApiRateLimitBucket"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "fallback_max_keys_per_worker": {
            "maximum": 10000000.0,
            "minimum": 1000.0,
            "title": "Fallback Max Keys Per Worker",
            "type": "integer"
          },
          "global_limit": {
            "$ref": "#/components/schemas/HttpApiRateLimitBucket"
          },
          "ip_limit": {
            "$ref": "#/components/schemas/HttpApiRateLimitBucket"
          },
          "max_inflight_per_worker": {
            "description": "Maximum simultaneous HTTP API requests handled by one API process.",
            "maximum": 100000.0,
            "minimum": 1.0,
            "title": "Max Inflight Per Worker",
            "type": "integer"
          },
          "mode": {
            "$ref": "#/components/schemas/AdmissionMode",
            "description": "Controls request-per-second limits; the per-process simultaneous request limit is always enforced."
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "modified_by_account_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Modified By Account Id"
          },
          "redis_admission_per_worker": {
            "maximum": 100000.0,
            "minimum": 1.0,
            "title": "Redis Admission Per Worker",
            "type": "integer"
          },
          "redis_timeout_ms": {
            "maximum": 5000.0,
            "minimum": 1.0,
            "title": "Redis Timeout Ms",
            "type": "integer"
          },
          "version": {
            "minimum": 1.0,
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "mode",
          "max_inflight_per_worker",
          "redis_timeout_ms",
          "redis_admission_per_worker",
          "fallback_max_keys_per_worker",
          "global_limit",
          "ip_limit",
          "account_limit",
          "app_limit",
          "version",
          "modified_by_account_id",
          "created_at",
          "modified_at"
        ],
        "title": "HttpApiRateLimitPolicyItem",
        "type": "object"
      },
      "HttpApiRateLimitPolicyItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/HttpApiRateLimitPolicyItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "HttpApiRateLimitPolicyItemResponse",
        "type": "object"
      },
      "HttpApiRetryPolicy": {
        "enum": [
          "safe_only",
          "idempotent"
        ],
        "title": "HttpApiRetryPolicy",
        "type": "string"
      },
      "HttpApiRouteItem": {
        "properties": {
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "gateway_id": {
            "title": "Gateway Id",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "max_attempts": {
            "title": "Max Attempts",
            "type": "integer"
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "retry_policy": {
            "$ref": "#/components/schemas/HttpApiRetryPolicy",
            "deprecated": true
          },
          "strategy": {
            "discriminator": {
              "mapping": {
                "load_balance": "#/components/schemas/HttpApiLoadBalanceItem",
                "priority_failover": "#/components/schemas/HttpApiPriorityFailoverItem"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/HttpApiLoadBalanceItem"
              },
              {
                "$ref": "#/components/schemas/HttpApiPriorityFailoverItem"
              }
            ],
            "title": "Strategy"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "gateway_id",
          "max_attempts",
          "retry_policy",
          "strategy",
          "version",
          "created_at",
          "modified_at"
        ],
        "title": "HttpApiRouteItem",
        "type": "object"
      },
      "HttpApiRouteItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/HttpApiRouteItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "HttpApiRouteItemResponse",
        "type": "object"
      },
      "IdentityType": {
        "enum": [
          "admin",
          "user"
        ],
        "title": "IdentityType",
        "type": "string"
      },
      "JsonRpcLoadBalanceItem": {
        "properties": {
          "targets": {
            "items": {
              "$ref": "#/components/schemas/JsonRpcLoadBalanceTargetItem"
            },
            "title": "Targets",
            "type": "array"
          },
          "type": {
            "const": "load_balance",
            "default": "load_balance",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "targets"
        ],
        "title": "JsonRpcLoadBalanceItem",
        "type": "object"
      },
      "JsonRpcLoadBalanceParams": {
        "additionalProperties": false,
        "properties": {
          "targets": {
            "items": {
              "$ref": "#/components/schemas/JsonRpcLoadBalanceTargetParams"
            },
            "maxItems": 100,
            "title": "Targets",
            "type": "array"
          },
          "type": {
            "const": "load_balance",
            "default": "load_balance",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "JsonRpcLoadBalanceParams",
        "type": "object"
      },
      "JsonRpcLoadBalanceTargetItem": {
        "properties": {
          "endpoint_id": {
            "title": "Endpoint Id",
            "type": "string"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          },
          "weight": {
            "title": "Weight",
            "type": "integer"
          }
        },
        "required": [
          "endpoint_id",
          "position",
          "weight"
        ],
        "title": "JsonRpcLoadBalanceTargetItem",
        "type": "object"
      },
      "JsonRpcLoadBalanceTargetParams": {
        "additionalProperties": false,
        "properties": {
          "endpoint_id": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Endpoint Id",
            "type": "string"
          },
          "weight": {
            "default": 100,
            "maximum": 1000.0,
            "minimum": 1.0,
            "title": "Weight",
            "type": "integer"
          }
        },
        "required": [
          "endpoint_id"
        ],
        "title": "JsonRpcLoadBalanceTargetParams",
        "type": "object"
      },
      "JsonRpcMethodRouteList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/JsonRpcRouteItem"
            },
            "title": "Items",
            "type": "array"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "total",
          "items"
        ],
        "title": "JsonRpcMethodRouteList",
        "type": "object"
      },
      "JsonRpcMethodRouteListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/JsonRpcMethodRouteList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "JsonRpcMethodRouteListResponse",
        "type": "object"
      },
      "JsonRpcPriorityFailoverItem": {
        "properties": {
          "targets": {
            "items": {
              "$ref": "#/components/schemas/JsonRpcPriorityFailoverTargetItem"
            },
            "title": "Targets",
            "type": "array"
          },
          "type": {
            "const": "priority_failover",
            "default": "priority_failover",
            "title": "Type",
            "type": "string"
          }
        },
        "required": [
          "targets"
        ],
        "title": "JsonRpcPriorityFailoverItem",
        "type": "object"
      },
      "JsonRpcPriorityFailoverParams": {
        "additionalProperties": false,
        "properties": {
          "targets": {
            "items": {
              "$ref": "#/components/schemas/JsonRpcPriorityFailoverTargetParams"
            },
            "maxItems": 100,
            "title": "Targets",
            "type": "array"
          },
          "type": {
            "const": "priority_failover",
            "default": "priority_failover",
            "title": "Type",
            "type": "string"
          }
        },
        "title": "JsonRpcPriorityFailoverParams",
        "type": "object"
      },
      "JsonRpcPriorityFailoverTargetItem": {
        "properties": {
          "endpoint_id": {
            "title": "Endpoint Id",
            "type": "string"
          },
          "position": {
            "title": "Position",
            "type": "integer"
          }
        },
        "required": [
          "endpoint_id",
          "position"
        ],
        "title": "JsonRpcPriorityFailoverTargetItem",
        "type": "object"
      },
      "JsonRpcPriorityFailoverTargetParams": {
        "additionalProperties": false,
        "properties": {
          "endpoint_id": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Endpoint Id",
            "type": "string"
          }
        },
        "required": [
          "endpoint_id"
        ],
        "title": "JsonRpcPriorityFailoverTargetParams",
        "type": "object"
      },
      "JsonRpcRateLimitAuditEventItem": {
        "properties": {
          "actor_id": {
            "title": "Actor Id",
            "type": "string"
          },
          "actor_token_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Actor Token Id"
          },
          "changed_fields": {
            "items": {
              "type": "string"
            },
            "title": "Changed Fields",
            "type": "array"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "new_version": {
            "title": "New Version",
            "type": "integer"
          },
          "previous_version": {
            "title": "Previous Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "actor_id",
          "actor_token_id",
          "previous_version",
          "new_version",
          "changed_fields",
          "created_at"
        ],
        "title": "JsonRpcRateLimitAuditEventItem",
        "type": "object"
      },
      "JsonRpcRateLimitAuditEventList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/JsonRpcRateLimitAuditEventItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "JsonRpcRateLimitAuditEventList",
        "type": "object"
      },
      "JsonRpcRateLimitAuditEventListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/JsonRpcRateLimitAuditEventList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "JsonRpcRateLimitAuditEventListResponse",
        "type": "object"
      },
      "JsonRpcRateLimitBucket": {
        "properties": {
          "burst": {
            "maximum": 10000000.0,
            "minimum": 1.0,
            "title": "Burst",
            "type": "integer"
          },
          "rps": {
            "maximum": 1000000.0,
            "minimum": 1.0,
            "title": "Rps",
            "type": "integer"
          }
        },
        "required": [
          "rps",
          "burst"
        ],
        "title": "JsonRpcRateLimitBucket",
        "type": "object"
      },
      "JsonRpcRateLimitPolicyItem": {
        "properties": {
          "account_limit": {
            "$ref": "#/components/schemas/JsonRpcRateLimitBucket"
          },
          "app_limit": {
            "$ref": "#/components/schemas/JsonRpcRateLimitBucket"
          },
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "fallback_max_keys_per_worker": {
            "maximum": 10000000.0,
            "minimum": 1000.0,
            "title": "Fallback Max Keys Per Worker",
            "type": "integer"
          },
          "global_limit": {
            "$ref": "#/components/schemas/JsonRpcRateLimitBucket"
          },
          "ip_limit": {
            "$ref": "#/components/schemas/JsonRpcRateLimitBucket"
          },
          "max_inflight_per_worker": {
            "description": "Maximum simultaneous JSON-RPC requests handled by one API process.",
            "maximum": 100000.0,
            "minimum": 1.0,
            "title": "Max Inflight Per Worker",
            "type": "integer"
          },
          "mode": {
            "$ref": "#/components/schemas/AdmissionMode",
            "description": "Controls request-per-second limits; the per-process simultaneous request limit is always enforced."
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "modified_by_account_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Modified By Account Id"
          },
          "redis_admission_per_worker": {
            "maximum": 100000.0,
            "minimum": 1.0,
            "title": "Redis Admission Per Worker",
            "type": "integer"
          },
          "redis_timeout_ms": {
            "maximum": 5000.0,
            "minimum": 1.0,
            "title": "Redis Timeout Ms",
            "type": "integer"
          },
          "version": {
            "minimum": 1.0,
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "mode",
          "max_inflight_per_worker",
          "redis_timeout_ms",
          "redis_admission_per_worker",
          "fallback_max_keys_per_worker",
          "global_limit",
          "ip_limit",
          "account_limit",
          "app_limit",
          "version",
          "modified_by_account_id",
          "created_at",
          "modified_at"
        ],
        "title": "JsonRpcRateLimitPolicyItem",
        "type": "object"
      },
      "JsonRpcRateLimitPolicyItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/JsonRpcRateLimitPolicyItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "JsonRpcRateLimitPolicyItemResponse",
        "type": "object"
      },
      "JsonRpcRetryPolicy": {
        "enum": [
          "safe_only",
          "idempotent"
        ],
        "title": "JsonRpcRetryPolicy",
        "type": "string"
      },
      "JsonRpcRouteItem": {
        "properties": {
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "gateway_id": {
            "title": "Gateway Id",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "is_default": {
            "title": "Is Default",
            "type": "boolean"
          },
          "max_attempts": {
            "title": "Max Attempts",
            "type": "integer"
          },
          "methods": {
            "items": {
              "type": "string"
            },
            "title": "Methods",
            "type": "array"
          },
          "modified_at": {
            "format": "date-time",
            "title": "Modified At",
            "type": "string"
          },
          "retry_policy": {
            "$ref": "#/components/schemas/JsonRpcRetryPolicy",
            "deprecated": true
          },
          "strategy": {
            "discriminator": {
              "mapping": {
                "load_balance": "#/components/schemas/JsonRpcLoadBalanceItem",
                "priority_failover": "#/components/schemas/JsonRpcPriorityFailoverItem"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/JsonRpcLoadBalanceItem"
              },
              {
                "$ref": "#/components/schemas/JsonRpcPriorityFailoverItem"
              }
            ],
            "title": "Strategy"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "gateway_id",
          "methods",
          "is_default",
          "max_attempts",
          "retry_policy",
          "strategy",
          "version",
          "created_at",
          "modified_at"
        ],
        "title": "JsonRpcRouteItem",
        "type": "object"
      },
      "JsonRpcRouteItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/JsonRpcRouteItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "JsonRpcRouteItemResponse",
        "type": "object"
      },
      "LoginResult": {
        "properties": {
          "email": {
            "title": "Email",
            "type": "string"
          },
          "expires_at": {
            "format": "date-time",
            "title": "Expires At",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "identity_type": {
            "$ref": "#/components/schemas/IdentityType"
          }
        },
        "required": [
          "identity_type",
          "id",
          "email",
          "expires_at"
        ],
        "title": "LoginResult",
        "type": "object"
      },
      "LoginResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/LoginResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "LoginResultResponse",
        "type": "object"
      },
      "LogoutResult": {
        "properties": {
          "logged_out": {
            "title": "Logged Out",
            "type": "boolean"
          }
        },
        "required": [
          "logged_out"
        ],
        "title": "LogoutResult",
        "type": "object"
      },
      "LogoutResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/LogoutResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "LogoutResultResponse",
        "type": "object"
      },
      "Network": {
        "enum": [
          "mainnet",
          "mainnet-beta",
          "sepolia",
          "amoy",
          "testnet",
          "devnet",
          "nile"
        ],
        "title": "Network",
        "type": "string"
      },
      "OverviewFleet": {
        "properties": {
          "active_endpoint_total": {
            "default": 0,
            "title": "Active Endpoint Total",
            "type": "integer"
          },
          "app_total": {
            "default": 0,
            "title": "App Total",
            "type": "integer"
          },
          "endpoint_total": {
            "default": 0,
            "title": "Endpoint Total",
            "type": "integer"
          },
          "provider_total": {
            "default": 0,
            "title": "Provider Total",
            "type": "integer"
          }
        },
        "title": "OverviewFleet",
        "type": "object"
      },
      "OverviewFleetResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/OverviewFleet"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "OverviewFleetResponse",
        "type": "object"
      },
      "PasswordLoginParams": {
        "properties": {
          "email": {
            "maxLength": 320,
            "minLength": 3,
            "title": "Email",
            "type": "string"
          },
          "password": {
            "maxLength": 128,
            "minLength": 8,
            "title": "Password",
            "type": "string"
          }
        },
        "required": [
          "email",
          "password"
        ],
        "title": "PasswordLoginParams",
        "type": "object"
      },
      "PasswordResult": {
        "properties": {
          "updated": {
            "title": "Updated",
            "type": "boolean"
          }
        },
        "required": [
          "updated"
        ],
        "title": "PasswordResult",
        "type": "object"
      },
      "PasswordResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/PasswordResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "PasswordResultResponse",
        "type": "object"
      },
      "PersonalAccessTokenItem": {
        "properties": {
          "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
          },
          "expires_at": {
            "format": "date-time",
            "title": "Expires At",
            "type": "string"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "last_used_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Last Used At"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "revoked_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Revoked At"
          },
          "scopes": {
            "items": {
              "$ref": "#/components/schemas/PersonalAccessTokenScope"
            },
            "title": "Scopes",
            "type": "array"
          },
          "state": {
            "$ref": "#/components/schemas/PersonalAccessTokenState"
          },
          "token_prefix": {
            "title": "Token Prefix",
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "token_prefix",
          "scopes",
          "state",
          "expires_at",
          "last_used_at",
          "revoked_at",
          "created_at"
        ],
        "title": "PersonalAccessTokenItem",
        "type": "object"
      },
      "PersonalAccessTokenList": {
        "properties": {
          "active": {
            "title": "Active",
            "type": "integer"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/PersonalAccessTokenItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_active": {
            "title": "Max Active",
            "type": "integer"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "active",
          "max_active",
          "items"
        ],
        "title": "PersonalAccessTokenList",
        "type": "object"
      },
      "PersonalAccessTokenListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/PersonalAccessTokenList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "PersonalAccessTokenListResponse",
        "type": "object"
      },
      "PersonalAccessTokenScope": {
        "enum": [
          "overview:read",
          "apps:read",
          "apps:write",
          "app-keys:read",
          "app-keys:write",
          "gateways:read",
          "gateways:write",
          "endpoints:read",
          "endpoints:write",
          "endpoint-secrets:read",
          "providers:read",
          "providers:write",
          "routes:read",
          "routes:write",
          "usage:read",
          "meta:read",
          "accounts:read",
          "accounts:write",
          "policies:read",
          "policies:write"
        ],
        "title": "PersonalAccessTokenScope",
        "type": "string"
      },
      "PersonalAccessTokenState": {
        "enum": [
          "active",
          "expired",
          "revoked"
        ],
        "title": "PersonalAccessTokenState",
        "type": "string"
      },
      "ProviderCredentialDetail": {
        "properties": {
          "secret": {
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string"
          }
        },
        "required": [
          "secret"
        ],
        "title": "ProviderCredentialDetail",
        "type": "object"
      },
      "ProviderCredentialDetailResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProviderCredentialDetail"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "ProviderCredentialDetailResponse",
        "type": "object"
      },
      "ProviderCredentialParams": {
        "properties": {
          "secret": {
            "format": "password",
            "maxLength": 4096,
            "minLength": 1,
            "title": "Secret",
            "type": "string",
            "writeOnly": true
          }
        },
        "required": [
          "secret"
        ],
        "title": "ProviderCredentialParams",
        "type": "object"
      },
      "ProviderCredentialPublic": {
        "properties": {
          "has_secret": {
            "title": "Has Secret",
            "type": "boolean"
          }
        },
        "required": [
          "has_secret"
        ],
        "title": "ProviderCredentialPublic",
        "type": "object"
      },
      "ProviderDeleteImpact": {
        "properties": {
          "automatic_route_targets": {
            "minimum": 0.0,
            "title": "Automatic Route Targets",
            "type": "integer"
          },
          "connected_apps": {
            "minimum": 0.0,
            "title": "Connected Apps",
            "type": "integer"
          },
          "managed_endpoints": {
            "minimum": 0.0,
            "title": "Managed Endpoints",
            "type": "integer"
          },
          "would_archive": {
            "minimum": 0.0,
            "title": "Would Archive",
            "type": "integer"
          },
          "would_detach": {
            "minimum": 0.0,
            "title": "Would Detach",
            "type": "integer"
          },
          "would_retain": {
            "minimum": 0.0,
            "title": "Would Retain",
            "type": "integer"
          }
        },
        "required": [
          "connected_apps",
          "automatic_route_targets",
          "managed_endpoints",
          "would_detach",
          "would_archive",
          "would_retain"
        ],
        "title": "ProviderDeleteImpact",
        "type": "object"
      },
      "ProviderDeleteImpactResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProviderDeleteImpact"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "ProviderDeleteImpactResponse",
        "type": "object"
      },
      "ProviderDeleteResult": {
        "properties": {
          "archived_endpoints": {
            "minimum": 0.0,
            "title": "Archived Endpoints",
            "type": "integer"
          },
          "deleted": {
            "title": "Deleted",
            "type": "boolean"
          },
          "detached_endpoints": {
            "minimum": 0.0,
            "title": "Detached Endpoints",
            "type": "integer"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "retained_endpoints": {
            "minimum": 0.0,
            "title": "Retained Endpoints",
            "type": "integer"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "version",
          "deleted",
          "archived_endpoints",
          "retained_endpoints",
          "detached_endpoints"
        ],
        "title": "ProviderDeleteResult",
        "type": "object"
      },
      "ProviderDeleteResultResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProviderDeleteResult"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "ProviderDeleteResultResponse",
        "type": "object"
      },
      "ProviderEndpointCounts": {
        "properties": {
          "missing": {
            "default": 0,
            "minimum": 0.0,
            "title": "Missing",
            "type": "integer"
          },
          "present": {
            "default": 0,
            "minimum": 0.0,
            "title": "Present",
            "type": "integer"
          }
        },
        "title": "ProviderEndpointCounts",
        "type": "object"
      },
      "ProviderEndpointDiscoveryStatus": {
        "enum": [
          "present",
          "missing"
        ],
        "title": "ProviderEndpointDiscoveryStatus",
        "type": "string"
      },
      "ProviderEndpointItem": {
        "properties": {
          "archived_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Archived At"
          },
          "discovery_status": {
            "$ref": "#/components/schemas/ProviderEndpointDiscoveryStatus"
          },
          "endpoint": {
            "$ref": "#/components/schemas/EndpointItem"
          },
          "external_id": {
            "title": "External Id",
            "type": "string"
          },
          "last_seen_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Last Seen At"
          },
          "missing_since": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Missing Since"
          },
          "registry_state": {
            "title": "Registry State",
            "type": "string"
          },
          "retained_by_routes": {
            "title": "Retained By Routes",
            "type": "boolean"
          },
          "sync_status": {
            "$ref": "#/components/schemas/ProviderEndpointSyncStatus"
          }
        },
        "required": [
          "endpoint",
          "sync_status",
          "discovery_status",
          "registry_state",
          "retained_by_routes",
          "external_id",
          "last_seen_at",
          "missing_since",
          "archived_at"
        ],
        "title": "ProviderEndpointItem",
        "type": "object"
      },
      "ProviderEndpointList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/ProviderEndpointItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "ProviderEndpointList",
        "type": "object"
      },
      "ProviderEndpointListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProviderEndpointList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "ProviderEndpointListResponse",
        "type": "object"
      },
      "ProviderEndpointSyncStatus": {
        "enum": [
          "available",
          "missing"
        ],
        "title": "ProviderEndpointSyncStatus",
        "type": "string"
      },
      "ProviderItem": {
        "properties": {
          "connected_app_count": {
            "default": 0,
            "minimum": 0.0,
            "title": "Connected App Count",
            "type": "integer"
          },
          "credential": {
            "$ref": "#/components/schemas/ProviderCredentialPublic"
          },
          "enabled": {
            "title": "Enabled",
            "type": "boolean"
          },
          "endpoint_counts": {
            "$ref": "#/components/schemas/ProviderEndpointCounts"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "last_sync_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Last Sync At"
          },
          "last_sync_status": {
            "$ref": "#/components/schemas/ProviderSyncStatus"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "networks": {
            "anyOf": [
              {
                "items": {
                  "$ref": "#/components/schemas/ProviderNetworkPair"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "title": "Networks"
          },
          "sync_enabled": {
            "title": "Sync Enabled",
            "type": "boolean"
          },
          "syncing": {
            "default": false,
            "title": "Syncing",
            "type": "boolean"
          },
          "vendor": {
            "$ref": "#/components/schemas/ProviderVendor"
          },
          "version": {
            "title": "Version",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "name",
          "vendor",
          "enabled",
          "sync_enabled",
          "credential",
          "networks",
          "last_sync_at",
          "last_sync_status",
          "version"
        ],
        "title": "ProviderItem",
        "type": "object"
      },
      "ProviderItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProviderItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "ProviderItemResponse",
        "type": "object"
      },
      "ProviderList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/ProviderItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "ProviderList",
        "type": "object"
      },
      "ProviderListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProviderList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "ProviderListResponse",
        "type": "object"
      },
      "ProviderNetworkPair": {
        "properties": {
          "chain": {
            "$ref": "#/components/schemas/Chain"
          },
          "network": {
            "$ref": "#/components/schemas/Network"
          }
        },
        "required": [
          "chain",
          "network"
        ],
        "title": "ProviderNetworkPair",
        "type": "object"
      },
      "ProviderSettingsParams": {
        "additionalProperties": false,
        "properties": {
          "organization": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Organization"
          },
          "project": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Project"
          },
          "provider": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Provider"
          },
          "region": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Region"
          },
          "tag_ids": {
            "anyOf": [
              {
                "items": {
                  "type": "integer"
                },
                "maxItems": 50,
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "title": "Tag Ids"
          },
          "tag_labels": {
            "anyOf": [
              {
                "items": {
                  "type": "string"
                },
                "maxItems": 50,
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "title": "Tag Labels"
          },
          "type": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Type"
          }
        },
        "title": "ProviderSettingsParams",
        "type": "object"
      },
      "ProviderSyncRunItem": {
        "properties": {
          "endpoint_changes": {
            "default": 0,
            "minimum": 0.0,
            "title": "Endpoint Changes",
            "type": "integer"
          },
          "error": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Error"
          },
          "id": {
            "title": "Id",
            "type": "string"
          },
          "queued_at": {
            "format": "date-time",
            "title": "Queued At",
            "type": "string"
          },
          "started_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Started At"
          },
          "state": {
            "$ref": "#/components/schemas/ProviderSyncRunState"
          },
          "trigger": {
            "$ref": "#/components/schemas/ProviderSyncTrigger"
          }
        },
        "required": [
          "id",
          "trigger",
          "state",
          "queued_at",
          "started_at"
        ],
        "title": "ProviderSyncRunItem",
        "type": "object"
      },
      "ProviderSyncRunItemResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProviderSyncRunItem"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "ProviderSyncRunItemResponse",
        "type": "object"
      },
      "ProviderSyncRunList": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/ProviderSyncRunItem"
            },
            "title": "Items",
            "type": "array"
          },
          "max_page": {
            "title": "Max Page",
            "type": "integer"
          },
          "page": {
            "title": "Page",
            "type": "integer"
          },
          "size": {
            "title": "Size",
            "type": "integer"
          },
          "total": {
            "title": "Total",
            "type": "integer"
          }
        },
        "required": [
          "page",
          "size",
          "total",
          "max_page",
          "items"
        ],
        "title": "ProviderSyncRunList",
        "type": "object"
      },
      "ProviderSyncRunListResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/ProviderSyncRunList"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "ProviderSyncRunListResponse",
        "type": "object"
      },
      "ProviderSyncRunState": {
        "enum": [
          "queued",
          "running",
          "success",
          "partial",
          "failed"
        ],
        "title": "ProviderSyncRunState",
        "type": "string"
      },
      "ProviderSyncStatus": {
        "enum": [
          "never",
          "success",
          "partial",
          "failed"
        ],
        "title": "ProviderSyncStatus",
        "type": "string"
      },
      "ProviderSyncTrigger": {
        "enum": [
          "manual",
          "scheduled"
        ],
        "title": "ProviderSyncTrigger",
        "type": "string"
      },
      "ProviderVendor": {
        "enum": [
          "alchemy",
          "quicknode",
          "chainstack",
          "drpc",
          "tenderly"
        ],
        "title": "ProviderVendor",
        "type": "string"
      },
      "ReplaceHttpApiRouteParams": {
        "additionalProperties": false,
        "properties": {
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "max_attempts": {
            "default": 3,
            "maximum": 10.0,
            "minimum": 1.0,
            "title": "Max Attempts",
            "type": "integer"
          },
          "retry_policy": {
            "$ref": "#/components/schemas/HttpApiRetryPolicy",
            "default": "safe_only",
            "deprecated": true
          },
          "strategy": {
            "discriminator": {
              "mapping": {
                "load_balance": "#/components/schemas/HttpApiLoadBalanceParams",
                "priority_failover": "#/components/schemas/HttpApiPriorityFailoverParams"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/HttpApiLoadBalanceParams"
              },
              {
                "$ref": "#/components/schemas/HttpApiPriorityFailoverParams"
              }
            ],
            "title": "Strategy"
          }
        },
        "required": [
          "strategy",
          "expected_version"
        ],
        "title": "ReplaceHttpApiRouteParams",
        "type": "object"
      },
      "ReplaceJsonRpcMethodRouteParams": {
        "additionalProperties": false,
        "properties": {
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "max_attempts": {
            "default": 3,
            "maximum": 10.0,
            "minimum": 1.0,
            "title": "Max Attempts",
            "type": "integer"
          },
          "methods": {
            "items": {
              "type": "string"
            },
            "maxItems": 100,
            "minItems": 1,
            "title": "Methods",
            "type": "array"
          },
          "retry_policy": {
            "$ref": "#/components/schemas/JsonRpcRetryPolicy",
            "default": "safe_only",
            "deprecated": true
          },
          "strategy": {
            "discriminator": {
              "mapping": {
                "load_balance": "#/components/schemas/JsonRpcLoadBalanceParams",
                "priority_failover": "#/components/schemas/JsonRpcPriorityFailoverParams"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/JsonRpcLoadBalanceParams"
              },
              {
                "$ref": "#/components/schemas/JsonRpcPriorityFailoverParams"
              }
            ],
            "title": "Strategy"
          }
        },
        "required": [
          "strategy",
          "methods",
          "expected_version"
        ],
        "title": "ReplaceJsonRpcMethodRouteParams",
        "type": "object"
      },
      "ReplaceJsonRpcRouteParams": {
        "additionalProperties": false,
        "properties": {
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "max_attempts": {
            "default": 3,
            "maximum": 10.0,
            "minimum": 1.0,
            "title": "Max Attempts",
            "type": "integer"
          },
          "retry_policy": {
            "$ref": "#/components/schemas/JsonRpcRetryPolicy",
            "default": "safe_only",
            "deprecated": true
          },
          "strategy": {
            "discriminator": {
              "mapping": {
                "load_balance": "#/components/schemas/JsonRpcLoadBalanceParams",
                "priority_failover": "#/components/schemas/JsonRpcPriorityFailoverParams"
              },
              "propertyName": "type"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/JsonRpcLoadBalanceParams"
              },
              {
                "$ref": "#/components/schemas/JsonRpcPriorityFailoverParams"
              }
            ],
            "title": "Strategy"
          }
        },
        "required": [
          "strategy",
          "expected_version"
        ],
        "title": "ReplaceJsonRpcRouteParams",
        "type": "object"
      },
      "RevokedPersonalAccessToken": {
        "properties": {
          "id": {
            "title": "Id",
            "type": "string"
          },
          "revoked": {
            "title": "Revoked",
            "type": "boolean"
          },
          "revoked_at": {
            "format": "date-time",
            "title": "Revoked At",
            "type": "string"
          }
        },
        "required": [
          "id",
          "revoked",
          "revoked_at"
        ],
        "title": "RevokedPersonalAccessToken",
        "type": "object"
      },
      "RevokedPersonalAccessTokenResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/RevokedPersonalAccessToken"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "RevokedPersonalAccessTokenResponse",
        "type": "object"
      },
      "RpcMethodCatalog": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/RpcMethodProtocolGroup"
            },
            "title": "Items",
            "type": "array"
          }
        },
        "required": [
          "items"
        ],
        "title": "RpcMethodCatalog",
        "type": "object"
      },
      "RpcMethodCatalogResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/RpcMethodCatalog"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "RpcMethodCatalogResponse",
        "type": "object"
      },
      "RpcMethodFamily": {
        "description": "Chain protocol family a JSON-RPC method catalog is grouped by.",
        "enum": [
          "evm",
          "svm",
          "utxo",
          "tron"
        ],
        "title": "RpcMethodFamily",
        "type": "string"
      },
      "RpcMethodItem": {
        "properties": {
          "deprecated": {
            "default": false,
            "title": "Deprecated",
            "type": "boolean"
          },
          "label": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Label",
            "type": "string"
          },
          "namespace": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Namespace",
            "type": "string"
          },
          "namespace_label": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Namespace Label",
            "type": "string"
          },
          "risk": {
            "$ref": "#/components/schemas/RpcMethodRisk"
          },
          "risk_label": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Risk Label",
            "type": "string"
          },
          "value": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Value",
            "type": "string"
          }
        },
        "required": [
          "value",
          "label",
          "namespace",
          "namespace_label",
          "risk",
          "risk_label"
        ],
        "title": "RpcMethodItem",
        "type": "object"
      },
      "RpcMethodProtocolGroup": {
        "properties": {
          "methods": {
            "items": {
              "$ref": "#/components/schemas/RpcMethodItem"
            },
            "title": "Methods",
            "type": "array"
          },
          "protocol": {
            "$ref": "#/components/schemas/RpcMethodFamily"
          },
          "protocol_label": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Protocol Label",
            "type": "string"
          },
          "sources": {
            "items": {
              "$ref": "#/components/schemas/RpcMethodSource"
            },
            "title": "Sources",
            "type": "array"
          }
        },
        "required": [
          "protocol",
          "protocol_label",
          "sources",
          "methods"
        ],
        "title": "RpcMethodProtocolGroup",
        "type": "object"
      },
      "RpcMethodRisk": {
        "enum": [
          "read",
          "write",
          "sensitive"
        ],
        "title": "RpcMethodRisk",
        "type": "string"
      },
      "RpcMethodSource": {
        "properties": {
          "label": {
            "maxLength": 128,
            "minLength": 1,
            "title": "Label",
            "type": "string"
          },
          "url": {
            "maxLength": 512,
            "minLength": 1,
            "title": "Url",
            "type": "string"
          }
        },
        "required": [
          "label",
          "url"
        ],
        "title": "RpcMethodSource",
        "type": "object"
      },
      "SetAppProviderParams": {
        "additionalProperties": false,
        "properties": {
          "provider_id": {
            "maxLength": 64,
            "minLength": 1,
            "title": "Provider Id",
            "type": "string"
          }
        },
        "required": [
          "provider_id"
        ],
        "title": "SetAppProviderParams",
        "type": "object"
      },
      "SetPasswordParams": {
        "properties": {
          "new_password": {
            "maxLength": 128,
            "minLength": 8,
            "title": "New Password",
            "type": "string"
          },
          "old_password": {
            "anyOf": [
              {
                "maxLength": 128,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Old Password"
          }
        },
        "required": [
          "new_password"
        ],
        "title": "SetPasswordParams",
        "type": "object"
      },
      "Transport": {
        "enum": [
          "jsonrpc",
          "http_api"
        ],
        "title": "Transport",
        "type": "string"
      },
      "UpdateAccountStatusParams": {
        "properties": {
          "status": {
            "$ref": "#/components/schemas/AccountStatus"
          }
        },
        "required": [
          "status"
        ],
        "title": "UpdateAccountStatusParams",
        "type": "object"
      },
      "UpdateAppParams": {
        "additionalProperties": false,
        "properties": {
          "enabled": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Enabled"
          },
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "name": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Name"
          }
        },
        "required": [
          "expected_version"
        ],
        "title": "UpdateAppParams",
        "type": "object"
      },
      "UpdateEndpointParams": {
        "additionalProperties": false,
        "properties": {
          "auth": {
            "anyOf": [
              {
                "discriminator": {
                  "mapping": {
                    "bearer": "#/components/schemas/EndpointBearerAuthUpdateParams",
                    "header_api_key": "#/components/schemas/EndpointHeaderAuthUpdateParams",
                    "none": "#/components/schemas/EndpointNoAuthUpdateParams",
                    "path_api_key": "#/components/schemas/EndpointPathAuthUpdateParams",
                    "query_api_key": "#/components/schemas/EndpointQueryAuthUpdateParams"
                  },
                  "propertyName": "type"
                },
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/EndpointNoAuthUpdateParams"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointBearerAuthUpdateParams"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointHeaderAuthUpdateParams"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointQueryAuthUpdateParams"
                  },
                  {
                    "$ref": "#/components/schemas/EndpointPathAuthUpdateParams"
                  }
                ]
              },
              {
                "type": "null"
              }
            ],
            "title": "Auth"
          },
          "enabled": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Enabled"
          },
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "name": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Name"
          },
          "url": {
            "anyOf": [
              {
                "maxLength": 4096,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Url"
          }
        },
        "required": [
          "expected_version"
        ],
        "title": "UpdateEndpointParams",
        "type": "object"
      },
      "UpdateGatewayParams": {
        "additionalProperties": false,
        "properties": {
          "enabled": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Enabled"
          },
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "name": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Name"
          }
        },
        "required": [
          "expected_version"
        ],
        "title": "UpdateGatewayParams",
        "type": "object"
      },
      "UpdateHttpApiRateLimitPolicyParams": {
        "additionalProperties": false,
        "properties": {
          "account_limit": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/HttpApiRateLimitBucket"
              },
              {
                "type": "null"
              }
            ]
          },
          "app_limit": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/HttpApiRateLimitBucket"
              },
              {
                "type": "null"
              }
            ]
          },
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "fallback_max_keys_per_worker": {
            "anyOf": [
              {
                "maximum": 10000000.0,
                "minimum": 1000.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Fallback Max Keys Per Worker"
          },
          "global_limit": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/HttpApiRateLimitBucket"
              },
              {
                "type": "null"
              }
            ]
          },
          "ip_limit": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/HttpApiRateLimitBucket"
              },
              {
                "type": "null"
              }
            ]
          },
          "max_inflight_per_worker": {
            "anyOf": [
              {
                "maximum": 100000.0,
                "minimum": 1.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Max Inflight Per Worker"
          },
          "mode": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/AdmissionMode"
              },
              {
                "type": "null"
              }
            ]
          },
          "redis_admission_per_worker": {
            "anyOf": [
              {
                "maximum": 100000.0,
                "minimum": 1.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Redis Admission Per Worker"
          },
          "redis_timeout_ms": {
            "anyOf": [
              {
                "maximum": 5000.0,
                "minimum": 1.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Redis Timeout Ms"
          }
        },
        "required": [
          "expected_version"
        ],
        "title": "UpdateHttpApiRateLimitPolicyParams",
        "type": "object"
      },
      "UpdateJsonRpcRateLimitPolicyParams": {
        "additionalProperties": false,
        "properties": {
          "account_limit": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/JsonRpcRateLimitBucket"
              },
              {
                "type": "null"
              }
            ]
          },
          "app_limit": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/JsonRpcRateLimitBucket"
              },
              {
                "type": "null"
              }
            ]
          },
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "fallback_max_keys_per_worker": {
            "anyOf": [
              {
                "maximum": 10000000.0,
                "minimum": 1000.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Fallback Max Keys Per Worker"
          },
          "global_limit": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/JsonRpcRateLimitBucket"
              },
              {
                "type": "null"
              }
            ]
          },
          "ip_limit": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/JsonRpcRateLimitBucket"
              },
              {
                "type": "null"
              }
            ]
          },
          "max_inflight_per_worker": {
            "anyOf": [
              {
                "maximum": 100000.0,
                "minimum": 1.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Max Inflight Per Worker"
          },
          "mode": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/AdmissionMode"
              },
              {
                "type": "null"
              }
            ]
          },
          "redis_admission_per_worker": {
            "anyOf": [
              {
                "maximum": 100000.0,
                "minimum": 1.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Redis Admission Per Worker"
          },
          "redis_timeout_ms": {
            "anyOf": [
              {
                "maximum": 5000.0,
                "minimum": 1.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Redis Timeout Ms"
          }
        },
        "required": [
          "expected_version"
        ],
        "title": "UpdateJsonRpcRateLimitPolicyParams",
        "type": "object"
      },
      "UpdateProviderParams": {
        "additionalProperties": false,
        "properties": {
          "credential": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/ProviderCredentialParams"
              },
              {
                "type": "null"
              }
            ]
          },
          "enabled": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Enabled"
          },
          "expected_version": {
            "minimum": 1.0,
            "title": "Expected Version",
            "type": "integer"
          },
          "name": {
            "anyOf": [
              {
                "maxLength": 128,
                "minLength": 1,
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Name"
          },
          "networks": {
            "anyOf": [
              {
                "items": {
                  "$ref": "#/components/schemas/ProviderNetworkPair"
                },
                "maxItems": 50,
                "minItems": 1,
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "title": "Networks"
          },
          "settings": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/ProviderSettingsParams"
              },
              {
                "type": "null"
              }
            ]
          },
          "sync_enabled": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Sync Enabled"
          }
        },
        "required": [
          "expected_version"
        ],
        "title": "UpdateProviderParams",
        "type": "object"
      },
      "UsageByEndpoint": {
        "properties": {
          "classification_coverage_complete": {
            "title": "Classification Coverage Complete",
            "type": "boolean"
          },
          "classification_coverage_start_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Classification Coverage Start At"
          },
          "data_through": {
            "format": "date-time",
            "title": "Data Through",
            "type": "string"
          },
          "end_at": {
            "format": "date-time",
            "title": "End At",
            "type": "string"
          },
          "first_attempts": {
            "default": 0,
            "title": "First Attempts",
            "type": "integer"
          },
          "granularity": {
            "$ref": "#/components/schemas/UsageGranularity"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/UsageEndpointItem"
            },
            "title": "Items",
            "type": "array"
          },
          "observed_endpoint_count": {
            "default": 0,
            "title": "Observed Endpoint Count",
            "type": "integer"
          },
          "other_first_attempts": {
            "default": 0,
            "title": "Other First Attempts",
            "type": "integer"
          },
          "other_points": {
            "items": {
              "$ref": "#/components/schemas/UsageEndpointPoint"
            },
            "title": "Other Points",
            "type": "array"
          },
          "other_retry_attempts": {
            "default": 0,
            "title": "Other Retry Attempts",
            "type": "integer"
          },
          "other_total_attempts": {
            "default": 0,
            "title": "Other Total Attempts",
            "type": "integer"
          },
          "other_unclassified_attempts": {
            "default": 0,
            "title": "Other Unclassified Attempts",
            "type": "integer"
          },
          "retry_attempts": {
            "default": 0,
            "title": "Retry Attempts",
            "type": "integer"
          },
          "start_at": {
            "format": "date-time",
            "title": "Start At",
            "type": "string"
          },
          "time_range": {
            "$ref": "#/components/schemas/UsageRange"
          },
          "total_attempts": {
            "default": 0,
            "title": "Total Attempts",
            "type": "integer"
          },
          "unclassified_attempts": {
            "default": 0,
            "title": "Unclassified Attempts",
            "type": "integer"
          }
        },
        "required": [
          "time_range",
          "granularity",
          "start_at",
          "end_at",
          "data_through",
          "classification_coverage_start_at",
          "classification_coverage_complete",
          "items",
          "other_points"
        ],
        "title": "UsageByEndpoint",
        "type": "object"
      },
      "UsageByEndpointResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/UsageByEndpoint"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "UsageByEndpointResponse",
        "type": "object"
      },
      "UsageByMethod": {
        "properties": {
          "data_through": {
            "format": "date-time",
            "title": "Data Through",
            "type": "string"
          },
          "granularity": {
            "$ref": "#/components/schemas/UsageGranularity"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/UsageByMethodItem"
            },
            "title": "Items",
            "type": "array"
          },
          "time_range": {
            "$ref": "#/components/schemas/UsageRange"
          }
        },
        "required": [
          "time_range",
          "granularity",
          "data_through",
          "items"
        ],
        "title": "UsageByMethod",
        "type": "object"
      },
      "UsageByMethodItem": {
        "properties": {
          "method": {
            "title": "Method",
            "type": "string"
          },
          "points": {
            "items": {
              "$ref": "#/components/schemas/UsageMethodPoint"
            },
            "title": "Points",
            "type": "array"
          }
        },
        "required": [
          "method",
          "points"
        ],
        "title": "UsageByMethodItem",
        "type": "object"
      },
      "UsageByMethodResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/UsageByMethod"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "UsageByMethodResponse",
        "type": "object"
      },
      "UsageByNetwork": {
        "properties": {
          "data_through": {
            "format": "date-time",
            "title": "Data Through",
            "type": "string"
          },
          "granularity": {
            "$ref": "#/components/schemas/UsageGranularity"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/UsageByNetworkItem"
            },
            "title": "Items",
            "type": "array"
          },
          "time_range": {
            "$ref": "#/components/schemas/UsageRange"
          }
        },
        "required": [
          "time_range",
          "granularity",
          "data_through",
          "items"
        ],
        "title": "UsageByNetwork",
        "type": "object"
      },
      "UsageByNetworkItem": {
        "properties": {
          "chain": {
            "$ref": "#/components/schemas/Chain"
          },
          "chain_label": {
            "title": "Chain Label",
            "type": "string"
          },
          "network": {
            "$ref": "#/components/schemas/Network"
          },
          "network_label": {
            "title": "Network Label",
            "type": "string"
          },
          "points": {
            "items": {
              "$ref": "#/components/schemas/UsageNetworkPoint"
            },
            "title": "Points",
            "type": "array"
          }
        },
        "required": [
          "chain",
          "chain_label",
          "network",
          "network_label",
          "points"
        ],
        "title": "UsageByNetworkItem",
        "type": "object"
      },
      "UsageByNetworkResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/UsageByNetwork"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "UsageByNetworkResponse",
        "type": "object"
      },
      "UsageByRoute": {
        "properties": {
          "coverage_complete": {
            "title": "Coverage Complete",
            "type": "boolean"
          },
          "coverage_start_at": {
            "anyOf": [
              {
                "format": "date-time",
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Coverage Start At"
          },
          "data_through": {
            "format": "date-time",
            "title": "Data Through",
            "type": "string"
          },
          "end_at": {
            "format": "date-time",
            "title": "End At",
            "type": "string"
          },
          "granularity": {
            "$ref": "#/components/schemas/UsageGranularity"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/UsageRouteItem"
            },
            "title": "Items",
            "type": "array"
          },
          "start_at": {
            "format": "date-time",
            "title": "Start At",
            "type": "string"
          },
          "time_range": {
            "$ref": "#/components/schemas/UsageRange"
          }
        },
        "required": [
          "time_range",
          "granularity",
          "start_at",
          "end_at",
          "data_through",
          "coverage_start_at",
          "coverage_complete",
          "items"
        ],
        "title": "UsageByRoute",
        "type": "object"
      },
      "UsageByRouteResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/UsageByRoute"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "UsageByRouteResponse",
        "type": "object"
      },
      "UsageEndpointItem": {
        "properties": {
          "chain": {
            "$ref": "#/components/schemas/Chain"
          },
          "endpoint_id": {
            "title": "Endpoint Id",
            "type": "string"
          },
          "first_attempts": {
            "default": 0,
            "title": "First Attempts",
            "type": "integer"
          },
          "historical": {
            "default": false,
            "title": "Historical",
            "type": "boolean"
          },
          "name": {
            "title": "Name",
            "type": "string"
          },
          "network": {
            "$ref": "#/components/schemas/Network"
          },
          "points": {
            "items": {
              "$ref": "#/components/schemas/UsageEndpointPoint"
            },
            "title": "Points",
            "type": "array"
          },
          "protocol": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/EndpointProtocol"
              },
              {
                "type": "null"
              }
            ]
          },
          "retry_attempts": {
            "default": 0,
            "title": "Retry Attempts",
            "type": "integer"
          },
          "total_attempts": {
            "default": 0,
            "title": "Total Attempts",
            "type": "integer"
          },
          "unclassified_attempts": {
            "default": 0,
            "title": "Unclassified Attempts",
            "type": "integer"
          }
        },
        "required": [
          "endpoint_id",
          "name",
          "chain",
          "network",
          "points"
        ],
        "title": "UsageEndpointItem",
        "type": "object"
      },
      "UsageEndpointPoint": {
        "properties": {
          "bucket_start": {
            "format": "date-time",
            "title": "Bucket Start",
            "type": "string"
          },
          "first_attempts": {
            "default": 0,
            "title": "First Attempts",
            "type": "integer"
          },
          "retry_attempts": {
            "default": 0,
            "title": "Retry Attempts",
            "type": "integer"
          },
          "total_attempts": {
            "default": 0,
            "title": "Total Attempts",
            "type": "integer"
          },
          "unclassified_attempts": {
            "default": 0,
            "title": "Unclassified Attempts",
            "type": "integer"
          }
        },
        "required": [
          "bucket_start"
        ],
        "title": "UsageEndpointPoint",
        "type": "object"
      },
      "UsageGranularity": {
        "enum": [
          "five_minute",
          "hourly",
          "daily"
        ],
        "title": "UsageGranularity",
        "type": "string"
      },
      "UsageMethodPoint": {
        "properties": {
          "bucket_start": {
            "format": "date-time",
            "title": "Bucket Start",
            "type": "string"
          },
          "cache_eligible_requests": {
            "default": 0,
            "title": "Cache Eligible Requests",
            "type": "integer"
          },
          "cache_hit_rate": {
            "default": 0,
            "title": "Cache Hit Rate",
            "type": "number"
          },
          "cache_hit_requests": {
            "default": 0,
            "title": "Cache Hit Requests",
            "type": "integer"
          },
          "total_requests": {
            "default": 0,
            "title": "Total Requests",
            "type": "integer"
          }
        },
        "required": [
          "bucket_start"
        ],
        "title": "UsageMethodPoint",
        "type": "object"
      },
      "UsageMethodRank": {
        "enum": [
          "total_requests",
          "cache_eligible_requests"
        ],
        "title": "UsageMethodRank",
        "type": "string"
      },
      "UsageNetworkPoint": {
        "properties": {
          "avg_duration_ms": {
            "default": 0,
            "title": "Avg Duration Ms",
            "type": "number"
          },
          "bucket_start": {
            "format": "date-time",
            "title": "Bucket Start",
            "type": "string"
          },
          "cache_eligible_requests": {
            "default": 0,
            "title": "Cache Eligible Requests",
            "type": "integer"
          },
          "cache_hit_rate": {
            "default": 0,
            "title": "Cache Hit Rate",
            "type": "number"
          },
          "cache_hit_requests": {
            "default": 0,
            "title": "Cache Hit Requests",
            "type": "integer"
          },
          "total_duration_ms": {
            "default": 0,
            "title": "Total Duration Ms",
            "type": "integer"
          },
          "total_requests": {
            "default": 0,
            "title": "Total Requests",
            "type": "integer"
          }
        },
        "required": [
          "bucket_start"
        ],
        "title": "UsageNetworkPoint",
        "type": "object"
      },
      "UsagePreviousWindow": {
        "properties": {
          "avg_duration_ms": {
            "default": 0,
            "title": "Avg Duration Ms",
            "type": "number"
          },
          "cache_eligible_requests": {
            "default": 0,
            "title": "Cache Eligible Requests",
            "type": "integer"
          },
          "cache_hit_rate": {
            "default": 0,
            "title": "Cache Hit Rate",
            "type": "number"
          },
          "cache_hit_requests": {
            "default": 0,
            "title": "Cache Hit Requests",
            "type": "integer"
          },
          "end_at": {
            "format": "date-time",
            "title": "End At",
            "type": "string"
          },
          "failed_requests": {
            "default": 0,
            "title": "Failed Requests",
            "type": "integer"
          },
          "start_at": {
            "format": "date-time",
            "title": "Start At",
            "type": "string"
          },
          "success_rate": {
            "default": 0,
            "title": "Success Rate",
            "type": "number"
          },
          "successful_requests": {
            "default": 0,
            "title": "Successful Requests",
            "type": "integer"
          },
          "total_duration_ms": {
            "default": 0,
            "title": "Total Duration Ms",
            "type": "integer"
          },
          "total_request_bytes": {
            "default": 0,
            "title": "Total Request Bytes",
            "type": "integer"
          },
          "total_requests": {
            "default": 0,
            "title": "Total Requests",
            "type": "integer"
          },
          "total_response_bytes": {
            "default": 0,
            "title": "Total Response Bytes",
            "type": "integer"
          },
          "total_traffic_bytes": {
            "default": 0,
            "title": "Total Traffic Bytes",
            "type": "integer"
          }
        },
        "required": [
          "start_at",
          "end_at"
        ],
        "title": "UsagePreviousWindow",
        "type": "object"
      },
      "UsageRange": {
        "enum": [
          "hourly",
          "daily",
          "weekly",
          "monthly"
        ],
        "title": "UsageRange",
        "type": "string"
      },
      "UsageRouteItem": {
        "properties": {
          "avg_attempts": {
            "default": 0,
            "title": "Avg Attempts",
            "type": "number"
          },
          "avg_duration_ms": {
            "default": 0,
            "title": "Avg Duration Ms",
            "type": "number"
          },
          "chain": {
            "$ref": "#/components/schemas/Chain"
          },
          "exhausted_rate": {
            "default": 0,
            "title": "Exhausted Rate",
            "type": "number"
          },
          "exhausted_requests": {
            "default": 0,
            "title": "Exhausted Requests",
            "type": "integer"
          },
          "failed_requests": {
            "default": 0,
            "title": "Failed Requests",
            "type": "integer"
          },
          "gateway_id": {
            "title": "Gateway Id",
            "type": "string"
          },
          "multi_attempt_rate": {
            "default": 0,
            "title": "Multi Attempt Rate",
            "type": "number"
          },
          "multi_attempt_requests": {
            "default": 0,
            "title": "Multi Attempt Requests",
            "type": "integer"
          },
          "network": {
            "$ref": "#/components/schemas/Network"
          },
          "points": {
            "items": {
              "$ref": "#/components/schemas/UsageRoutePoint"
            },
            "title": "Points",
            "type": "array"
          },
          "route_id": {
            "title": "Route Id",
            "type": "string"
          },
          "routed_requests": {
            "default": 0,
            "title": "Routed Requests",
            "type": "integer"
          },
          "success_rate": {
            "default": 0,
            "title": "Success Rate",
            "type": "number"
          },
          "successful_requests": {
            "default": 0,
            "title": "Successful Requests",
            "type": "integer"
          },
          "total_attempts": {
            "default": 0,
            "title": "Total Attempts",
            "type": "integer"
          },
          "total_duration_ms": {
            "default": 0,
            "title": "Total Duration Ms",
            "type": "integer"
          }
        },
        "required": [
          "route_id",
          "gateway_id",
          "chain",
          "network",
          "points"
        ],
        "title": "UsageRouteItem",
        "type": "object"
      },
      "UsageRoutePoint": {
        "properties": {
          "avg_attempts": {
            "default": 0,
            "title": "Avg Attempts",
            "type": "number"
          },
          "avg_duration_ms": {
            "default": 0,
            "title": "Avg Duration Ms",
            "type": "number"
          },
          "bucket_start": {
            "format": "date-time",
            "title": "Bucket Start",
            "type": "string"
          },
          "exhausted_rate": {
            "default": 0,
            "title": "Exhausted Rate",
            "type": "number"
          },
          "exhausted_requests": {
            "default": 0,
            "title": "Exhausted Requests",
            "type": "integer"
          },
          "failed_requests": {
            "default": 0,
            "title": "Failed Requests",
            "type": "integer"
          },
          "multi_attempt_rate": {
            "default": 0,
            "title": "Multi Attempt Rate",
            "type": "number"
          },
          "multi_attempt_requests": {
            "default": 0,
            "title": "Multi Attempt Requests",
            "type": "integer"
          },
          "routed_requests": {
            "default": 0,
            "title": "Routed Requests",
            "type": "integer"
          },
          "success_rate": {
            "default": 0,
            "title": "Success Rate",
            "type": "number"
          },
          "successful_requests": {
            "default": 0,
            "title": "Successful Requests",
            "type": "integer"
          },
          "total_attempts": {
            "default": 0,
            "title": "Total Attempts",
            "type": "integer"
          },
          "total_duration_ms": {
            "default": 0,
            "title": "Total Duration Ms",
            "type": "integer"
          }
        },
        "required": [
          "bucket_start"
        ],
        "title": "UsageRoutePoint",
        "type": "object"
      },
      "UsageSeries": {
        "properties": {
          "data_through": {
            "format": "date-time",
            "title": "Data Through",
            "type": "string"
          },
          "granularity": {
            "$ref": "#/components/schemas/UsageGranularity"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/UsageSeriesPoint"
            },
            "title": "Items",
            "type": "array"
          },
          "time_range": {
            "$ref": "#/components/schemas/UsageRange"
          }
        },
        "required": [
          "time_range",
          "granularity",
          "data_through",
          "items"
        ],
        "title": "UsageSeries",
        "type": "object"
      },
      "UsageSeriesPoint": {
        "properties": {
          "avg_duration_ms": {
            "default": 0,
            "title": "Avg Duration Ms",
            "type": "number"
          },
          "bucket_start": {
            "format": "date-time",
            "title": "Bucket Start",
            "type": "string"
          },
          "cache_eligible_requests": {
            "default": 0,
            "title": "Cache Eligible Requests",
            "type": "integer"
          },
          "cache_hit_rate": {
            "default": 0,
            "title": "Cache Hit Rate",
            "type": "number"
          },
          "cache_hit_requests": {
            "default": 0,
            "title": "Cache Hit Requests",
            "type": "integer"
          },
          "failed_requests": {
            "default": 0,
            "title": "Failed Requests",
            "type": "integer"
          },
          "success_rate": {
            "default": 0,
            "title": "Success Rate",
            "type": "number"
          },
          "successful_requests": {
            "default": 0,
            "title": "Successful Requests",
            "type": "integer"
          },
          "total_duration_ms": {
            "default": 0,
            "title": "Total Duration Ms",
            "type": "integer"
          },
          "total_request_bytes": {
            "default": 0,
            "title": "Total Request Bytes",
            "type": "integer"
          },
          "total_requests": {
            "default": 0,
            "title": "Total Requests",
            "type": "integer"
          },
          "total_response_bytes": {
            "default": 0,
            "title": "Total Response Bytes",
            "type": "integer"
          },
          "total_traffic_bytes": {
            "default": 0,
            "title": "Total Traffic Bytes",
            "type": "integer"
          }
        },
        "required": [
          "bucket_start"
        ],
        "title": "UsageSeriesPoint",
        "type": "object"
      },
      "UsageSeriesResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/UsageSeries"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "UsageSeriesResponse",
        "type": "object"
      },
      "UsageWindow": {
        "properties": {
          "avg_duration_ms": {
            "default": 0,
            "title": "Avg Duration Ms",
            "type": "number"
          },
          "cache_eligible_requests": {
            "default": 0,
            "title": "Cache Eligible Requests",
            "type": "integer"
          },
          "cache_hit_rate": {
            "default": 0,
            "title": "Cache Hit Rate",
            "type": "number"
          },
          "cache_hit_requests": {
            "default": 0,
            "title": "Cache Hit Requests",
            "type": "integer"
          },
          "data_through": {
            "format": "date-time",
            "title": "Data Through",
            "type": "string"
          },
          "end_at": {
            "format": "date-time",
            "title": "End At",
            "type": "string"
          },
          "failed_requests": {
            "default": 0,
            "title": "Failed Requests",
            "type": "integer"
          },
          "previous": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/UsagePreviousWindow"
              },
              {
                "type": "null"
              }
            ]
          },
          "start_at": {
            "format": "date-time",
            "title": "Start At",
            "type": "string"
          },
          "success_rate": {
            "default": 0,
            "title": "Success Rate",
            "type": "number"
          },
          "successful_requests": {
            "default": 0,
            "title": "Successful Requests",
            "type": "integer"
          },
          "time_range": {
            "$ref": "#/components/schemas/UsageRange"
          },
          "total_duration_ms": {
            "default": 0,
            "title": "Total Duration Ms",
            "type": "integer"
          },
          "total_request_bytes": {
            "default": 0,
            "title": "Total Request Bytes",
            "type": "integer"
          },
          "total_requests": {
            "default": 0,
            "title": "Total Requests",
            "type": "integer"
          },
          "total_response_bytes": {
            "default": 0,
            "title": "Total Response Bytes",
            "type": "integer"
          },
          "total_traffic_bytes": {
            "default": 0,
            "title": "Total Traffic Bytes",
            "type": "integer"
          }
        },
        "required": [
          "time_range",
          "start_at",
          "end_at",
          "data_through"
        ],
        "title": "UsageWindow",
        "type": "object"
      },
      "UsageWindowResponse": {
        "properties": {
          "data": {
            "$ref": "#/components/schemas/UsageWindow"
          },
          "msg": {
            "default": "ok",
            "title": "Msg",
            "type": "string"
          }
        },
        "required": [
          "data"
        ],
        "title": "UsageWindowResponse",
        "type": "object"
      }
    },
    "securitySchemes": {
      "PersonalAccessToken": {
        "bearerFormat": "PAT",
        "scheme": "bearer",
        "type": "http"
      },
      "SessionCookie": {
        "in": "cookie",
        "name": "rpc_gateway_session",
        "type": "apiKey"
      }
    }
  },
  "info": {
    "title": "rpc-gateway-api",
    "version": "0.1.0"
  },
  "openapi": "3.1.0",
  "paths": {
    "/v2/accounts": {
      "get": {
        "description": "List user-role accounts.\n\nsearch: Case-insensitive partial match on account email.\nstatus: Filter by account status.\nactivated: filter by whether the account has logged in.\nstart_at: filter by created_at lower bound, inclusive; timezone-aware and normalized to UTC.\nend_at: filter by created_at upper bound, exclusive; timezone-aware and normalized to UTC.\nsort: created_at sort direction, ASC or DESC.\npage: page number, starting from 1.\nsize: page size.",
        "operationId": "accounts-list_accounts",
        "parameters": [
          {
            "in": "query",
            "name": "start_at",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Start At"
            }
          },
          {
            "in": "query",
            "name": "end_at",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "End At"
            }
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "default": "DESC",
              "enum": [
                "ASC",
                "DESC"
              ],
              "title": "Sort",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 10,
              "maximum": 50,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 320,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Search"
            }
          },
          {
            "in": "query",
            "name": "status",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/AccountStatus"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Status"
            }
          },
          {
            "in": "query",
            "name": "activated",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Activated"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Accounts",
        "tags": [
          "accounts"
        ],
        "x-required-pat-scopes": [
          "accounts:read"
        ]
      },
      "post": {
        "description": "Create an account with the user role.",
        "operationId": "accounts-create_account",
        "parameters": [
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAccountParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountBaseResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Create Account",
        "tags": [
          "accounts"
        ],
        "x-required-pat-scopes": [
          "accounts:write"
        ]
      }
    },
    "/v2/accounts/delete": {
      "post": {
        "description": "Archive one or more user-role accounts.\n\nids: account ids to archive.",
        "operationId": "accounts-archive_accounts",
        "parameters": [
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ArchiveAccountsParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountArchiveResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Archive Accounts",
        "tags": [
          "accounts"
        ],
        "x-required-pat-scopes": [
          "accounts:write"
        ]
      }
    },
    "/v2/accounts/{account_id}": {
      "get": {
        "description": "Return one user-role account with derived counts.",
        "operationId": "accounts-get_account",
        "parameters": [
          {
            "in": "path",
            "name": "account_id",
            "required": true,
            "schema": {
              "title": "Account Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountDetailResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Account",
        "tags": [
          "accounts"
        ],
        "x-required-pat-scopes": [
          "accounts:read"
        ]
      },
      "post": {
        "description": "Update one user-role account status.\n\nstatus: New account status.",
        "operationId": "accounts-update_account",
        "parameters": [
          {
            "in": "path",
            "name": "account_id",
            "required": true,
            "schema": {
              "title": "Account Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAccountStatusParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountBaseResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Update Account",
        "tags": [
          "accounts"
        ],
        "x-required-pat-scopes": [
          "accounts:write"
        ]
      }
    },
    "/v2/apps": {
      "get": {
        "operationId": "apps-list_apps",
        "parameters": [
          {
            "in": "query",
            "name": "start_at",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Start At"
            }
          },
          {
            "in": "query",
            "name": "end_at",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "End At"
            }
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "default": "DESC",
              "enum": [
                "ASC",
                "DESC"
              ],
              "title": "Sort",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 10,
              "maximum": 50,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 320,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Search"
            }
          },
          {
            "in": "query",
            "name": "enabled",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Enabled"
            }
          },
          {
            "in": "query",
            "name": "provider_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 64,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Provider Id"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Apps",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "apps:read"
        ]
      },
      "post": {
        "description": "Create an App, its first API Key, and its catalog snapshot of Gateways.",
        "operationId": "apps-create_app",
        "parameters": [
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAppParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatedAppResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Create App",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "app-keys:write",
          "apps:write"
        ]
      }
    },
    "/v2/apps/{app_id}": {
      "delete": {
        "operationId": "apps-delete_app",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DeletedAppResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Delete App",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "apps:write"
        ]
      },
      "get": {
        "operationId": "apps-get_app",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get App",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "apps:read"
        ]
      },
      "patch": {
        "operationId": "apps-update_app",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAppParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Update App",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "apps:write"
        ]
      }
    },
    "/v2/apps/{app_id}/api-keys": {
      "get": {
        "operationId": "apps-list_api_keys",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppKeyListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Api Keys",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "app-keys:read"
        ]
      }
    },
    "/v2/apps/{app_id}/api-keys/rotate": {
      "post": {
        "description": "Create an API Key and move the prior active Key into its configured grace period.",
        "operationId": "apps-rotate_api_key",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatedAppKeyResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Rotate Api Key",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "app-keys:write"
        ]
      }
    },
    "/v2/apps/{app_id}/api-keys/{key_id}/revoke": {
      "post": {
        "operationId": "apps-revoke_api_key",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "key_id",
            "required": true,
            "schema": {
              "title": "Key Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppKeyItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Revoke Api Key",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "app-keys:write"
        ]
      }
    },
    "/v2/apps/{app_id}/gateways": {
      "patch": {
        "description": "Atomically set enabled for Gateways belonging to one App using optimistic versions.",
        "operationId": "apps-bulk_update_app_gateways",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkUpdateGatewayParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkUpdateGatewayResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Bulk Update App Gateways",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "gateways:write"
        ]
      }
    },
    "/v2/apps/{app_id}/provider": {
      "delete": {
        "description": "Remove the Provider association and its automatically managed Route Targets.",
        "operationId": "apps-clear_app_provider",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppProviderResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Clear App Provider",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "apps:write",
          "routes:write"
        ]
      },
      "put": {
        "description": "Associate an enabled account Provider and publish its matching Endpoints to this App.",
        "operationId": "apps-set_app_provider",
        "parameters": [
          {
            "in": "path",
            "name": "app_id",
            "required": true,
            "schema": {
              "title": "App Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetAppProviderParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AppProviderResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Set App Provider",
        "tags": [
          "apps"
        ],
        "x-required-pat-scopes": [
          "apps:write",
          "routes:write"
        ]
      }
    },
    "/v2/auth/aurpay/callback": {
      "get": {
        "description": "Handle the AurPay OIDC callback and set the session cookie.",
        "operationId": "auth-aurpay_callback",
        "parameters": [
          {
            "in": "query",
            "name": "code",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Code"
            }
          },
          {
            "in": "query",
            "name": "error",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Error"
            }
          },
          {
            "in": "query",
            "name": "state",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "State"
            }
          },
          {
            "in": "cookie",
            "name": "rpc_gateway_oauth_state",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Rpc Gateway Oauth State"
            }
          }
        ],
        "responses": {
          "303": {
            "description": "See Other"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "summary": "Aurpay Callback",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/auth/aurpay/login": {
      "get": {
        "description": "Redirect the browser to AurPay OIDC.",
        "operationId": "auth-aurpay_login",
        "parameters": [
          {
            "in": "query",
            "name": "prompt",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "login",
                    "select_account"
                  ],
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Prompt"
            }
          }
        ],
        "responses": {
          "307": {
            "description": "Temporary Redirect"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "summary": "Aurpay Login",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/auth/google/callback": {
      "get": {
        "description": "Handle the Google OAuth callback and set the session cookie.",
        "operationId": "auth-google_callback",
        "parameters": [
          {
            "in": "query",
            "name": "code",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Code"
            }
          },
          {
            "in": "query",
            "name": "error",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Error"
            }
          },
          {
            "in": "query",
            "name": "state",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "State"
            }
          },
          {
            "in": "cookie",
            "name": "rpc_gateway_oauth_state",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Rpc Gateway Oauth State"
            }
          }
        ],
        "responses": {
          "303": {
            "description": "See Other"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "summary": "Google Callback",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/auth/google/login": {
      "get": {
        "description": "Redirect the browser to Google OAuth.",
        "operationId": "auth-google_login",
        "responses": {
          "307": {
            "description": "Temporary Redirect"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "summary": "Google Login",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/auth/login": {
      "post": {
        "description": "Authenticate with an email and password and set the session cookie.\n\nRate limited per trusted client IP and normalized login identity to slow credential stuffing.",
        "operationId": "auth-password_login",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PasswordLoginParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LoginResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "summary": "Password Login",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/auth/logout": {
      "post": {
        "description": "Revoke the session and clear its cookie.",
        "operationId": "auth-logout",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LogoutResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          }
        ],
        "summary": "Logout",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/auth/me": {
      "get": {
        "description": "Return the authenticated identity.",
        "operationId": "auth-me",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuthIdentityResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Me",
        "tags": [
          "auth"
        ],
        "x-required-pat-scopes": []
      }
    },
    "/v2/auth/password": {
      "post": {
        "description": "Set or change the password of the authenticated account.\n\nold_password is required only when a password already exists.",
        "operationId": "auth-set_password",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetPasswordParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PasswordResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          }
        ],
        "summary": "Set Password",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/auth/personal-access-tokens": {
      "get": {
        "description": "List personal access token metadata without returning token secrets.",
        "operationId": "auth-list_personal_access_tokens",
        "parameters": [
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 20,
              "maximum": 100,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "state",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/PersonalAccessTokenState"
                },
                {
                  "type": "null"
                }
              ],
              "title": "State"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PersonalAccessTokenListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          }
        ],
        "summary": "List Personal Access Tokens",
        "tags": [
          "auth"
        ]
      },
      "post": {
        "description": "Create a scoped personal access token and reveal its secret once.",
        "operationId": "auth-create_personal_access_token",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePersonalAccessTokenParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatedPersonalAccessTokenResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          }
        ],
        "summary": "Create Personal Access Token",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/auth/personal-access-tokens/{token_id}": {
      "delete": {
        "description": "Revoke an owned personal access token idempotently.",
        "operationId": "auth-revoke_personal_access_token",
        "parameters": [
          {
            "in": "path",
            "name": "token_id",
            "required": true,
            "schema": {
              "title": "Token Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RevokedPersonalAccessTokenResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          }
        ],
        "summary": "Revoke Personal Access Token",
        "tags": [
          "auth"
        ]
      }
    },
    "/v2/endpoints": {
      "get": {
        "description": "List endpoint registry entries owned by the authenticated account.",
        "operationId": "endpoints-list_endpoints",
        "parameters": [
          {
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 320,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Q"
            }
          },
          {
            "in": "query",
            "name": "chain",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "items": {
                    "$ref": "#/components/schemas/Chain"
                  },
                  "type": "array"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Chain"
            }
          },
          {
            "in": "query",
            "name": "network",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "items": {
                    "$ref": "#/components/schemas/Network"
                  },
                  "type": "array"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Network"
            }
          },
          {
            "in": "query",
            "name": "protocol",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EndpointProtocol"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Protocol"
            }
          },
          {
            "in": "query",
            "name": "enabled",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Enabled"
            }
          },
          {
            "in": "query",
            "name": "origin_type",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EndpointOriginType"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Origin Type"
            }
          },
          {
            "in": "query",
            "name": "provider_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 128,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Provider Id"
            }
          },
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 20,
              "maximum": 100,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EndpointListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Endpoints",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "endpoints:read"
        ]
      },
      "post": {
        "description": "Create a manual endpoint with encrypted URL and auth secret.",
        "operationId": "endpoints-create_endpoint",
        "parameters": [
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateEndpointParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EndpointDetailOrEndpointItemResponse",
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/EndpointDetail"
                    },
                    {
                      "$ref": "#/components/schemas/EndpointItem"
                    }
                  ],
                  "title": "Response Endpoints-Create Endpoint"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Create Endpoint",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "endpoints:write"
        ]
      }
    },
    "/v2/endpoints/bulk-delete": {
      "post": {
        "description": "Soft-delete unreferenced manual Endpoints and report active route references.",
        "operationId": "endpoints-bulk_delete_endpoints",
        "parameters": [
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkDeleteEndpointParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkDeleteEndpointResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Bulk Delete Endpoints",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "endpoints:write"
        ]
      }
    },
    "/v2/endpoints/{endpoint_id}": {
      "delete": {
        "description": "Soft-delete an owned endpoint.",
        "operationId": "endpoints-delete_endpoint",
        "parameters": [
          {
            "in": "path",
            "name": "endpoint_id",
            "required": true,
            "schema": {
              "title": "Endpoint Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EndpointDeleteResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Delete Endpoint",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "endpoints:write"
        ]
      },
      "get": {
        "description": "Return one owned endpoint with its displayable URL.",
        "operationId": "endpoints-get_endpoint",
        "parameters": [
          {
            "in": "path",
            "name": "endpoint_id",
            "required": true,
            "schema": {
              "title": "Endpoint Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EndpointDetailOrEndpointItemResponse",
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/EndpointDetail"
                    },
                    {
                      "$ref": "#/components/schemas/EndpointItem"
                    }
                  ],
                  "title": "Response Endpoints-Get Endpoint"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Endpoint",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "endpoints:read"
        ]
      },
      "patch": {
        "description": "Update an endpoint only when expected_version matches its registry version.",
        "operationId": "endpoints-update_endpoint",
        "parameters": [
          {
            "in": "path",
            "name": "endpoint_id",
            "required": true,
            "schema": {
              "title": "Endpoint Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateEndpointParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EndpointDetailOrEndpointItemResponse",
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/EndpointDetail"
                    },
                    {
                      "$ref": "#/components/schemas/EndpointItem"
                    }
                  ],
                  "title": "Response Endpoints-Update Endpoint"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Update Endpoint",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "endpoints:write"
        ]
      }
    },
    "/v2/endpoints/{endpoint_id}/health-checks": {
      "post": {
        "description": "Run the fixed, single-request health probe for an owned Endpoint.",
        "operationId": "endpoints-check_endpoint_health",
        "parameters": [
          {
            "in": "path",
            "name": "endpoint_id",
            "required": true,
            "schema": {
              "title": "Endpoint Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EndpointHealthCheckResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Check Endpoint Health",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "endpoints:write"
        ]
      }
    },
    "/v2/endpoints/{endpoint_id}/route-bindings": {
      "get": {
        "description": "List active Gateway routes that target one owned Endpoint.",
        "operationId": "endpoints-list_endpoint_route_bindings",
        "parameters": [
          {
            "in": "path",
            "name": "endpoint_id",
            "required": true,
            "schema": {
              "title": "Endpoint Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EndpointRouteBindingListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Endpoint Route Bindings",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "endpoints:read"
        ]
      }
    },
    "/v2/endpoints/{endpoint_id}/route-bindings/{route_type}/{route_id}": {
      "delete": {
        "description": "Remove one Endpoint target, deleting an empty JSON-RPC method route.",
        "operationId": "endpoints-delete_endpoint_route_binding",
        "parameters": [
          {
            "in": "path",
            "name": "endpoint_id",
            "required": true,
            "schema": {
              "title": "Endpoint Id",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "route_type",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/EndpointRouteType"
            }
          },
          {
            "in": "path",
            "name": "route_id",
            "required": true,
            "schema": {
              "title": "Route Id",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "expected_version",
            "required": true,
            "schema": {
              "minimum": 1,
              "title": "Expected Version",
              "type": "integer"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EndpointRouteBindingDeleteResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Delete Endpoint Route Binding",
        "tags": [
          "endpoints"
        ],
        "x-required-pat-scopes": [
          "routes:write"
        ]
      }
    },
    "/v2/gateways": {
      "get": {
        "operationId": "gateways-list_gateways",
        "parameters": [
          {
            "in": "query",
            "name": "start_at",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Start At"
            }
          },
          {
            "in": "query",
            "name": "end_at",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "format": "date-time",
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "End At"
            }
          },
          {
            "in": "query",
            "name": "sort",
            "required": false,
            "schema": {
              "default": "DESC",
              "enum": [
                "ASC",
                "DESC"
              ],
              "title": "Sort",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 10,
              "maximum": 50,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "search",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 320,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Search"
            }
          },
          {
            "in": "query",
            "name": "app_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 128,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "App Id"
            }
          },
          {
            "in": "query",
            "name": "chain",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "items": {
                    "$ref": "#/components/schemas/Chain"
                  },
                  "maxItems": 20,
                  "type": "array"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Chain"
            }
          },
          {
            "in": "query",
            "name": "network",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "items": {
                    "$ref": "#/components/schemas/Network"
                  },
                  "maxItems": 20,
                  "type": "array"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Network"
            }
          },
          {
            "in": "query",
            "name": "enabled",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Enabled"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GatewayListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Gateways",
        "tags": [
          "gateways"
        ],
        "x-required-pat-scopes": [
          "gateways:read"
        ]
      }
    },
    "/v2/gateways/{gateway_id}": {
      "get": {
        "operationId": "gateways-get_gateway",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GatewayItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Gateway",
        "tags": [
          "gateways"
        ],
        "x-required-pat-scopes": [
          "gateways:read"
        ]
      },
      "patch": {
        "operationId": "gateways-update_gateway",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateGatewayParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GatewayItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Update Gateway",
        "tags": [
          "gateways"
        ],
        "x-required-pat-scopes": [
          "gateways:write"
        ]
      }
    },
    "/v2/gateways/{gateway_id}/http-api-route": {
      "get": {
        "description": "The deprecated retry_policy is stored and returned only for legacy compatibility.\n\nNew forwarding ignores it and uses its internal safe-replay policy. Routes default to safe_only on creation;\nupdates that omit retry_policy preserve its stored value. Accepted values are safe_only and idempotent.",
        "operationId": "http-api-routes-get_http_api_route",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HttpApiRouteItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Http Api Route",
        "tags": [
          "http-api-routes"
        ],
        "x-required-pat-scopes": [
          "routes:read"
        ]
      },
      "put": {
        "description": "The deprecated retry_policy is stored and returned only for legacy compatibility.\n\nNew forwarding ignores it and uses its internal safe-replay policy. Routes default to safe_only on creation;\nupdates that omit retry_policy preserve its stored value. Accepted values are safe_only and idempotent.",
        "operationId": "http-api-routes-replace_http_api_route",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReplaceHttpApiRouteParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HttpApiRouteItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Replace Http Api Route",
        "tags": [
          "http-api-routes"
        ],
        "x-required-pat-scopes": [
          "routes:write"
        ]
      }
    },
    "/v2/gateways/{gateway_id}/jsonrpc-method-routes": {
      "get": {
        "description": "The deprecated retry_policy is stored and returned only for legacy compatibility.\n\nNew forwarding ignores it and uses its internal safe-replay policy. Creation defaults to safe_only;\nupdates that omit retry_policy preserve its stored value. Accepted values are safe_only and idempotent.",
        "operationId": "jsonrpc-routes-list_method_routes",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcMethodRouteListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Method Routes",
        "tags": [
          "jsonrpc-routes"
        ],
        "x-required-pat-scopes": [
          "routes:read"
        ]
      },
      "post": {
        "description": "The deprecated retry_policy is stored and returned only for legacy compatibility.\n\nNew forwarding ignores it and uses its internal safe-replay policy. Creation defaults to safe_only;\nupdates that omit retry_policy preserve its stored value. Accepted values are safe_only and idempotent.",
        "operationId": "jsonrpc-routes-create_method_route",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateJsonRpcMethodRouteParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcRouteItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Create Method Route",
        "tags": [
          "jsonrpc-routes"
        ],
        "x-required-pat-scopes": [
          "routes:write"
        ]
      }
    },
    "/v2/gateways/{gateway_id}/jsonrpc-method-routes/{route_id}": {
      "delete": {
        "description": "The deprecated retry_policy is stored and returned only for legacy compatibility.\n\nNew forwarding ignores it and uses its internal safe-replay policy. Creation defaults to safe_only;\nupdates that omit retry_policy preserve its stored value. Accepted values are safe_only and idempotent.",
        "operationId": "jsonrpc-routes-delete_method_route",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "route_id",
            "required": true,
            "schema": {
              "title": "Route Id",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "expected_version",
            "required": true,
            "schema": {
              "minimum": 1,
              "title": "Expected Version",
              "type": "integer"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcRouteItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Delete Method Route",
        "tags": [
          "jsonrpc-routes"
        ],
        "x-required-pat-scopes": [
          "routes:write"
        ]
      },
      "put": {
        "description": "The deprecated retry_policy is stored and returned only for legacy compatibility.\n\nNew forwarding ignores it and uses its internal safe-replay policy. Creation defaults to safe_only;\nupdates that omit retry_policy preserve its stored value. Accepted values are safe_only and idempotent.",
        "operationId": "jsonrpc-routes-replace_method_route",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "route_id",
            "required": true,
            "schema": {
              "title": "Route Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReplaceJsonRpcMethodRouteParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcRouteItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Replace Method Route",
        "tags": [
          "jsonrpc-routes"
        ],
        "x-required-pat-scopes": [
          "routes:write"
        ]
      }
    },
    "/v2/gateways/{gateway_id}/jsonrpc-route": {
      "get": {
        "description": "The deprecated retry_policy is stored and returned only for legacy compatibility.\n\nNew forwarding ignores it and uses its internal safe-replay policy. Creation defaults to safe_only;\nupdates that omit retry_policy preserve its stored value. Accepted values are safe_only and idempotent.",
        "operationId": "jsonrpc-routes-get_default_route",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcRouteItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Default Route",
        "tags": [
          "jsonrpc-routes"
        ],
        "x-required-pat-scopes": [
          "routes:read"
        ]
      },
      "put": {
        "description": "The deprecated retry_policy is stored and returned only for legacy compatibility.\n\nNew forwarding ignores it and uses its internal safe-replay policy. Creation defaults to safe_only;\nupdates that omit retry_policy preserve its stored value. Accepted values are safe_only and idempotent.",
        "operationId": "jsonrpc-routes-replace_default_route",
        "parameters": [
          {
            "in": "path",
            "name": "gateway_id",
            "required": true,
            "schema": {
              "title": "Gateway Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReplaceJsonRpcRouteParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcRouteItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Replace Default Route",
        "tags": [
          "jsonrpc-routes"
        ],
        "x-required-pat-scopes": [
          "routes:write"
        ]
      }
    },
    "/v2/http-api-rate-limit-policy": {
      "get": {
        "operationId": "http-api-rate-limit-policy-get_rate_limit_policy",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HttpApiRateLimitPolicyItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Rate Limit Policy",
        "tags": [
          "http-api-rate-limit-policy"
        ],
        "x-required-pat-scopes": [
          "policies:read"
        ]
      },
      "patch": {
        "description": "Update the public HTTP API admission policy using optimistic version control.\n\n`max_inflight_per_worker` limits the simultaneous HTTP API requests handled by each API process and is always\nenforced. `mode` controls only the request-per-second limits; disabling those limits does not disable the simultaneous\nrequest limit.",
        "operationId": "http-api-rate-limit-policy-update_rate_limit_policy",
        "parameters": [
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateHttpApiRateLimitPolicyParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HttpApiRateLimitPolicyItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Update Rate Limit Policy",
        "tags": [
          "http-api-rate-limit-policy"
        ],
        "x-required-pat-scopes": [
          "policies:write"
        ]
      }
    },
    "/v2/http-api-rate-limit-policy/audit-events": {
      "get": {
        "operationId": "http-api-rate-limit-policy-list_rate_limit_audits",
        "parameters": [
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 10,
              "maximum": 50,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HttpApiRateLimitAuditEventListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Rate Limit Audits",
        "tags": [
          "http-api-rate-limit-policy"
        ],
        "x-required-pat-scopes": [
          "policies:read"
        ]
      }
    },
    "/v2/jsonrpc-rate-limit-policy": {
      "get": {
        "operationId": "jsonrpc-rate-limit-policy-get_rate_limit_policy",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcRateLimitPolicyItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Rate Limit Policy",
        "tags": [
          "jsonrpc-rate-limit-policy"
        ],
        "x-required-pat-scopes": [
          "policies:read"
        ]
      },
      "patch": {
        "description": "Update the public JSON-RPC admission policy using optimistic version control.\n\n`max_inflight_per_worker` limits the simultaneous JSON-RPC requests handled by each API process and is always\nenforced. `mode` controls only the request-per-second limits; disabling those limits does not disable the simultaneous\nrequest limit.",
        "operationId": "jsonrpc-rate-limit-policy-update_rate_limit_policy",
        "parameters": [
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateJsonRpcRateLimitPolicyParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcRateLimitPolicyItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Update Rate Limit Policy",
        "tags": [
          "jsonrpc-rate-limit-policy"
        ],
        "x-required-pat-scopes": [
          "policies:write"
        ]
      }
    },
    "/v2/jsonrpc-rate-limit-policy/audit-events": {
      "get": {
        "operationId": "jsonrpc-rate-limit-policy-list_rate_limit_audits",
        "parameters": [
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 10,
              "maximum": 50,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonRpcRateLimitAuditEventListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Rate Limit Audits",
        "tags": [
          "jsonrpc-rate-limit-policy"
        ],
        "x-required-pat-scopes": [
          "policies:read"
        ]
      }
    },
    "/v2/meta/jsonrpc-methods": {
      "get": {
        "description": "Return the selectable JSON-RPC method catalog for dashboard routing forms.",
        "operationId": "meta-list_jsonrpc_methods",
        "parameters": [
          {
            "in": "query",
            "name": "protocol",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/RpcMethodFamily"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Protocol"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RpcMethodCatalogResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Jsonrpc Methods",
        "tags": [
          "meta"
        ],
        "x-required-pat-scopes": [
          "meta:read"
        ]
      }
    },
    "/v2/overview": {
      "get": {
        "operationId": "overview-get_overview",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OverviewFleetResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Overview",
        "tags": [
          "overview"
        ],
        "x-required-pat-scopes": [
          "overview:read"
        ]
      }
    },
    "/v2/providers": {
      "get": {
        "operationId": "providers-list_providers",
        "parameters": [
          {
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 320,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Q"
            }
          },
          {
            "in": "query",
            "name": "vendor",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "items": {
                    "$ref": "#/components/schemas/ProviderVendor"
                  },
                  "maxItems": 20,
                  "type": "array"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Vendor"
            }
          },
          {
            "in": "query",
            "name": "enabled",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Enabled"
            }
          },
          {
            "in": "query",
            "name": "sync_enabled",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Sync Enabled"
            }
          },
          {
            "in": "query",
            "name": "last_sync_status",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/ProviderSyncStatus"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Last Sync Status"
            }
          },
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 20,
              "maximum": 100,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Providers",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:read"
        ]
      },
      "post": {
        "description": "Create an account-owned Provider with an encrypted credential.",
        "operationId": "providers-create_provider",
        "parameters": [
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateProviderParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Create Provider",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:write"
        ]
      }
    },
    "/v2/providers/{provider_id}": {
      "delete": {
        "description": "Soft-delete a Provider, detach its Endpoints, and optionally archive unreferenced Endpoints.",
        "operationId": "providers-delete_provider",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "delete_unreferenced_endpoints",
            "required": false,
            "schema": {
              "default": false,
              "title": "Delete Unreferenced Endpoints",
              "type": "boolean"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderDeleteResultResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Delete Provider",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:write"
        ]
      },
      "get": {
        "operationId": "providers-get_provider",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Provider",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:read"
        ]
      },
      "patch": {
        "operationId": "providers-update_provider",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProviderParams"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Update Provider",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:write"
        ]
      }
    },
    "/v2/providers/{provider_id}/credential": {
      "get": {
        "operationId": "providers-get_provider_credential",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderCredentialDetailResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          }
        ],
        "summary": "Get Provider Credential",
        "tags": [
          "providers"
        ]
      }
    },
    "/v2/providers/{provider_id}/delete-impact": {
      "get": {
        "operationId": "providers-get_delete_impact",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderDeleteImpactResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Delete Impact",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:read"
        ]
      }
    },
    "/v2/providers/{provider_id}/endpoints": {
      "get": {
        "description": "List active and archived Endpoints managed by one Provider.",
        "operationId": "providers-list_provider_endpoints",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "discovery_status",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/ProviderEndpointDiscoveryStatus"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Discovery Status"
            }
          },
          {
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 320,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Q"
            }
          },
          {
            "in": "query",
            "name": "chain",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Chain"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Chain"
            }
          },
          {
            "in": "query",
            "name": "network",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Network"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Network"
            }
          },
          {
            "in": "query",
            "name": "protocol",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EndpointProtocol"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Protocol"
            }
          },
          {
            "in": "query",
            "name": "retained_by_routes",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "boolean"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Retained By Routes"
            }
          },
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 20,
              "maximum": 100,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderEndpointListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Provider Endpoints",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:read"
        ]
      }
    },
    "/v2/providers/{provider_id}/sync": {
      "post": {
        "description": "Queue Provider discovery and return its persistent run.",
        "operationId": "providers-sync_provider",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          },
          {
            "description": "Replays a successful PAT write with the same account, key, and request for 24 hours.",
            "in": "header",
            "name": "Idempotency-Key",
            "required": false,
            "schema": {
              "maxLength": 128,
              "minLength": 1,
              "type": "string"
            }
          }
        ],
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderSyncRunItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Sync Provider",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:write"
        ]
      }
    },
    "/v2/providers/{provider_id}/sync-runs": {
      "get": {
        "operationId": "providers-list_sync_runs",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "page",
            "required": false,
            "schema": {
              "default": 1,
              "minimum": 1,
              "title": "Page",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "size",
            "required": false,
            "schema": {
              "default": 20,
              "maximum": 100,
              "minimum": 1,
              "title": "Size",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderSyncRunListResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "List Sync Runs",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:read"
        ]
      }
    },
    "/v2/providers/{provider_id}/sync-runs/{run_id}": {
      "get": {
        "operationId": "providers-get_sync_run",
        "parameters": [
          {
            "in": "path",
            "name": "provider_id",
            "required": true,
            "schema": {
              "title": "Provider Id",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "run_id",
            "required": true,
            "schema": {
              "title": "Run Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProviderSyncRunItemResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Sync Run",
        "tags": [
          "providers"
        ],
        "x-required-pat-scopes": [
          "providers:read"
        ]
      }
    },
    "/v2/usage/endpoints": {
      "get": {
        "description": "Return actual upstream Endpoint attempts for an App, Gateway, or route.",
        "operationId": "usage-get_usage_endpoints",
        "parameters": [
          {
            "in": "query",
            "name": "time_range",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/UsageRange",
              "default": "daily"
            }
          },
          {
            "in": "query",
            "name": "app_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "App Id"
            }
          },
          {
            "in": "query",
            "name": "gateway_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Gateway Id"
            }
          },
          {
            "in": "query",
            "name": "route_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Route Id"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maximum": 100,
                  "minimum": 1,
                  "type": "integer"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Limit"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UsageByEndpointResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Usage Endpoints",
        "tags": [
          "usage"
        ],
        "x-required-pat-scopes": [
          "usage:read"
        ]
      }
    },
    "/v2/usage/methods": {
      "get": {
        "description": "Return method series ranked by request volume or cache-eligible request volume.",
        "operationId": "usage-get_usage_methods",
        "parameters": [
          {
            "in": "query",
            "name": "time_range",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/UsageRange",
              "default": "daily"
            }
          },
          {
            "in": "query",
            "name": "app_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "App Id"
            }
          },
          {
            "in": "query",
            "name": "chain",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Chain"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Chain"
            }
          },
          {
            "in": "query",
            "name": "network",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Network"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Network"
            }
          },
          {
            "in": "query",
            "name": "gateway_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Gateway Id"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "maximum": 100,
              "minimum": 1,
              "title": "Limit",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "rank_by",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/UsageMethodRank",
              "default": "total_requests"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UsageByMethodResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Usage Methods",
        "tags": [
          "usage"
        ],
        "x-required-pat-scopes": [
          "usage:read"
        ]
      }
    },
    "/v2/usage/networks": {
      "get": {
        "operationId": "usage-get_usage_networks",
        "parameters": [
          {
            "in": "query",
            "name": "time_range",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/UsageRange",
              "default": "daily"
            }
          },
          {
            "in": "query",
            "name": "app_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "App Id"
            }
          },
          {
            "in": "query",
            "name": "chain",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Chain"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Chain"
            }
          },
          {
            "in": "query",
            "name": "network",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Network"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Network"
            }
          },
          {
            "in": "query",
            "name": "gateway_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Gateway Id"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "maximum": 100,
              "minimum": 1,
              "title": "Limit",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UsageByNetworkResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Usage Networks",
        "tags": [
          "usage"
        ],
        "x-required-pat-scopes": [
          "usage:read"
        ]
      }
    },
    "/v2/usage/routes": {
      "get": {
        "description": "Return routes ranked by routed request volume with request and retry series.",
        "operationId": "usage-get_usage_routes",
        "parameters": [
          {
            "in": "query",
            "name": "time_range",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/UsageRange",
              "default": "daily"
            }
          },
          {
            "in": "query",
            "name": "app_id",
            "required": true,
            "schema": {
              "maxLength": 21,
              "minLength": 1,
              "title": "App Id",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "gateway_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Gateway Id"
            }
          },
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 10,
              "maximum": 100,
              "minimum": 1,
              "title": "Limit",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UsageByRouteResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Usage Routes",
        "tags": [
          "usage"
        ],
        "x-required-pat-scopes": [
          "usage:read"
        ]
      }
    },
    "/v2/usage/series": {
      "get": {
        "operationId": "usage-get_usage_series",
        "parameters": [
          {
            "in": "query",
            "name": "time_range",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/UsageRange",
              "default": "daily"
            }
          },
          {
            "in": "query",
            "name": "app_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "App Id"
            }
          },
          {
            "in": "query",
            "name": "chain",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Chain"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Chain"
            }
          },
          {
            "in": "query",
            "name": "network",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Network"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Network"
            }
          },
          {
            "in": "query",
            "name": "gateway_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Gateway Id"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UsageSeriesResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Usage Series",
        "tags": [
          "usage"
        ],
        "x-required-pat-scopes": [
          "usage:read"
        ]
      }
    },
    "/v2/usage/summary": {
      "get": {
        "operationId": "usage-get_usage_summary",
        "parameters": [
          {
            "in": "query",
            "name": "time_range",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/UsageRange",
              "default": "daily"
            }
          },
          {
            "in": "query",
            "name": "app_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "App Id"
            }
          },
          {
            "in": "query",
            "name": "chain",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Chain"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Chain"
            }
          },
          {
            "in": "query",
            "name": "network",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/Network"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Network"
            }
          },
          {
            "in": "query",
            "name": "gateway_id",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "maxLength": 21,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Gateway Id"
            }
          },
          {
            "in": "query",
            "name": "compare",
            "required": false,
            "schema": {
              "default": false,
              "title": "Compare",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UsageWindowResponse"
                }
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponseModel"
                }
              }
            },
            "description": "Unprocessable Content"
          }
        },
        "security": [
          {
            "SessionCookie": []
          },
          {
            "PersonalAccessToken": []
          }
        ],
        "summary": "Get Usage Summary",
        "tags": [
          "usage"
        ],
        "x-required-pat-scopes": [
          "usage:read"
        ]
      }
    }
  }
}
