DankProxies API
API keys OpenAPI JSON
DANKPROXIES DEVELOPER PLATFORM

Public API reference

Automate proxy resources, retail checkout logs, orders, and package tracking. This reference contains customer-facing /api/v1 routes only.

AUTHENTICATION

Bearer API key

Create a key in the customer portal and send it with every request. Keys are tenant-scoped and should only be stored server-side.

request header
Authorization: Bearer dk_your_api_key
API V1

Orders

6 endpoints
GET /api/v1/orders

List Orders

Parameters 3
Name In Required Type
status query no schema
retailer query no schema
limit query no integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/OrderOut"
          },
          "title": "Response List Orders Api V1 Orders Get"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
GET /api/v1/orders/attempts

List Attempts

Parameters 4
Name In Required Type
status query no schema
source query no schema
retailer query no schema
limit query no integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/AttemptOut"
          },
          "title": "Response List Attempts Api V1 Orders Attempts Get"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
POST /api/v1/orders/attempts

Ingest Attempt

Request body
requestBody
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CheckoutAttemptIn"
      }
    }
  }
}
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/IngestOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
GET /api/v1/orders/{order_id}

Get Order

Parameters 1
Name In Required Type
order_id path yes integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/OrderOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
PATCH /api/v1/orders/{order_id}/items/{item_id}/status

Update Order Item Status

Parameters 2
Name In Required Type
order_id path yes integer
item_id path yes integer
Request body
requestBody
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/OrderItemStatusIn"
      }
    }
  }
}
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/OrderOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
PATCH /api/v1/orders/{order_id}/status

Update Order Status

Parameters 1
Name In Required Type
order_id path yes integer
Request body
requestBody
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/OrderStatusIn"
      }
    }
  }
}
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/OrderOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
API V1

Proxy API

8 endpoints
GET /api/v1/plans

List Plans

Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "items": {
            "$ref": "#/components/schemas/PlanOut"
          },
          "type": "array",
          "title": "Response List Plans Api V1 Plans Get"
        }
      }
    }
  }
}
GET /api/v1/proxies

List Proxies

Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "items": {
            "$ref": "#/components/schemas/ProxyOut"
          },
          "type": "array",
          "title": "Response List Proxies Api V1 Proxies Get"
        }
      }
    }
  }
}
POST /api/v1/proxies/regional

Generate Regional

Generate gateway credentials as `host:port:user:pass` lines. Geo-featured Regional plans accept state, city, and ISP targeting; standard residential plans stay country-only. Nothing is provisioned per line — these are sessions against the existing plan, so generating costs no bandwidth and makes no upstream call.

Request body
requestBody
{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/RegionalIn"
      }
    }
  },
  "required": true
}
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/RegionalOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
GET /api/v1/proxies/{proxy_id}

Get Proxy

Parameters 1
Name In Required Type
proxy_id path yes integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/ProxyOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
GET /api/v1/proxies/{proxy_id}/credentials

Get Credentials

Parameters 1
Name In Required Type
proxy_id path yes integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/CredentialsOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
POST /api/v1/proxies/{proxy_id}/rotate

Rotate Proxy

Parameters 1
Name In Required Type
proxy_id path yes integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/ProxyOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
GET /api/v1/proxies/{proxy_id}/usage

Get Usage

Parameters 1
Name In Required Type
proxy_id path yes integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/UsageOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
POST /api/v1/proxies/{proxy_id}/whitelist

Whitelist Ip

Parameters 1
Name In Required Type
proxy_id path yes integer
Request body
requestBody
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/WhitelistIn"
      }
    }
  }
}
Responses
responses
{
  "204": {
    "description": "Successful Response"
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
API V1

Shipments

4 endpoints
GET /api/v1/shipments

List Shipments

Parameters 4
Name In Required Type
status query no schema
carrier query no schema
order_id query no schema
limit query no integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/ShipmentOut"
          },
          "title": "Response List Shipments Api V1 Shipments Get"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
POST /api/v1/shipments

Create Shipment

Request body
requestBody
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/ShipmentCreateIn"
      }
    }
  }
}
Responses
responses
{
  "201": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/ShipmentOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
GET /api/v1/shipments/{shipment_id}

Get Shipment

Parameters 1
Name In Required Type
shipment_id path yes integer
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/ShipmentOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
PATCH /api/v1/shipments/{shipment_id}/status

Update Shipment Status

Parameters 1
Name In Required Type
shipment_id path yes integer
Request body
requestBody
{
  "required": true,
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/ShipmentStatusIn"
      }
    }
  }
}
Responses
responses
{
  "200": {
    "description": "Successful Response",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/ShipmentOut"
        }
      }
    }
  },
  "422": {
    "description": "Validation Error",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/HTTPValidationError"
        }
      }
    }
  }
}
SCHEMAS

Data models

22 definitions
AttemptOut
components.schemas.AttemptOut
{
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    },
    "source": {
      "type": "string",
      "title": "Source"
    },
    "external_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "External Id"
    },
    "retailer": {
      "type": "string",
      "title": "Retailer"
    },
    "profile_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Profile Name"
    },
    "status": {
      "type": "string",
      "title": "Status"
    },
    "amount_cents": {
      "type": "integer",
      "title": "Amount Cents"
    },
    "currency": {
      "type": "string",
      "title": "Currency"
    },
    "failure_code": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Failure Code"
    },
    "failure_message": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Failure Message"
    },
    "attempted_at": {
      "type": "string",
      "format": "date-time",
      "title": "Attempted At"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "title": "Updated At"
    },
    "order_id": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Order Id"
    }
  },
  "type": "object",
  "required": [
    "id",
    "source",
    "external_id",
    "retailer",
    "profile_name",
    "status",
    "amount_cents",
    "currency",
    "failure_code",
    "failure_message",
    "attempted_at",
    "updated_at",
    "order_id"
  ],
  "title": "AttemptOut"
}
CheckoutAttemptIn
components.schemas.CheckoutAttemptIn
{
  "properties": {
    "external_id": {
      "type": "string",
      "maxLength": 128,
      "minLength": 1,
      "title": "External Id"
    },
    "retailer": {
      "type": "string",
      "maxLength": 160,
      "minLength": 1,
      "title": "Retailer"
    },
    "profile_name": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 120
        },
        {
          "type": "null"
        }
      ],
      "title": "Profile Name"
    },
    "status": {
      "type": "string",
      "title": "Status"
    },
    "amount_cents": {
      "type": "integer",
      "minimum": 0.0,
      "title": "Amount Cents",
      "default": 0
    },
    "currency": {
      "type": "string",
      "pattern": "^[A-Za-z]{3}$",
      "title": "Currency",
      "default": "USD"
    },
    "failure_code": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 64
        },
        {
          "type": "null"
        }
      ],
      "title": "Failure Code"
    },
    "failure_message": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 4000
        },
        {
          "type": "null"
        }
      ],
      "title": "Failure Message"
    },
    "attempted_at": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Attempted At"
    },
    "detail": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Detail"
    },
    "order": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/OrderIn"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "type": "object",
  "required": [
    "external_id",
    "retailer",
    "status"
  ],
  "title": "CheckoutAttemptIn"
}
CredentialsOut
components.schemas.CredentialsOut
{
  "properties": {
    "username": {
      "type": "string",
      "title": "Username"
    },
    "password": {
      "type": "string",
      "title": "Password"
    },
    "endpoints": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Endpoints"
    },
    "lines": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "title": "Lines"
    }
  },
  "type": "object",
  "required": [
    "username",
    "password",
    "endpoints"
  ],
  "title": "CredentialsOut"
}
HTTPValidationError
components.schemas.HTTPValidationError
{
  "properties": {
    "detail": {
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "type": "array",
      "title": "Detail"
    }
  },
  "type": "object",
  "title": "HTTPValidationError"
}
IngestOut
components.schemas.IngestOut
{
  "properties": {
    "attempt": {
      "$ref": "#/components/schemas/AttemptOut"
    },
    "order": {
      "anyOf": [
        {
          "$ref": "#/components/schemas/OrderOut"
        },
        {
          "type": "null"
        }
      ]
    },
    "attempt_created": {
      "type": "boolean",
      "title": "Attempt Created"
    },
    "order_created": {
      "type": "boolean",
      "title": "Order Created"
    }
  },
  "type": "object",
  "required": [
    "attempt",
    "order",
    "attempt_created",
    "order_created"
  ],
  "title": "IngestOut"
}
OrderIn
components.schemas.OrderIn
{
  "properties": {
    "order_number": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 128
        },
        {
          "type": "null"
        }
      ],
      "title": "Order Number"
    },
    "image_url": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 1024
        },
        {
          "type": "null"
        }
      ],
      "title": "Image Url"
    },
    "status": {
      "type": "string",
      "title": "Status",
      "default": "confirmed"
    },
    "subtotal_cents": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": 0.0
        },
        {
          "type": "null"
        }
      ],
      "title": "Subtotal Cents"
    },
    "shipping_cents": {
      "type": "integer",
      "minimum": 0.0,
      "title": "Shipping Cents",
      "default": 0
    },
    "tax_cents": {
      "type": "integer",
      "minimum": 0.0,
      "title": "Tax Cents",
      "default": 0
    },
    "total_cents": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": 0.0
        },
        {
          "type": "null"
        }
      ],
      "title": "Total Cents"
    },
    "items": {
      "items": {
        "$ref": "#/components/schemas/OrderItemIn"
      },
      "type": "array",
      "title": "Items"
    },
    "detail": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Detail"
    }
  },
  "type": "object",
  "title": "OrderIn"
}
OrderItemIn
components.schemas.OrderItemIn
{
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 255,
      "minLength": 1,
      "title": "Name"
    },
    "sku": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 128
        },
        {
          "type": "null"
        }
      ],
      "title": "Sku"
    },
    "quantity": {
      "type": "integer",
      "maximum": 10000.0,
      "minimum": 1.0,
      "title": "Quantity",
      "default": 1
    },
    "unit_price_cents": {
      "type": "integer",
      "minimum": 0.0,
      "title": "Unit Price Cents",
      "default": 0
    },
    "status": {
      "type": "string",
      "title": "Status",
      "default": "active"
    },
    "cancelled_quantity": {
      "type": "integer",
      "minimum": 0.0,
      "title": "Cancelled Quantity",
      "default": 0
    },
    "cancelled_at": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancelled At"
    },
    "cancellation_reason": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 4000
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancellation Reason"
    },
    "image_url": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 1024
        },
        {
          "type": "null"
        }
      ],
      "title": "Image Url"
    },
    "detail": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Detail"
    }
  },
  "type": "object",
  "required": [
    "name"
  ],
  "title": "OrderItemIn"
}
OrderItemOut
components.schemas.OrderItemOut
{
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    },
    "name": {
      "type": "string",
      "title": "Name"
    },
    "sku": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Sku"
    },
    "quantity": {
      "type": "integer",
      "title": "Quantity"
    },
    "unit_price_cents": {
      "type": "integer",
      "title": "Unit Price Cents"
    },
    "status": {
      "type": "string",
      "title": "Status"
    },
    "cancelled_quantity": {
      "type": "integer",
      "title": "Cancelled Quantity"
    },
    "cancelled_at": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancelled At"
    },
    "cancellation_reason": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancellation Reason"
    },
    "image_url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Image Url"
    }
  },
  "type": "object",
  "required": [
    "id",
    "name",
    "sku",
    "quantity",
    "unit_price_cents",
    "status",
    "cancelled_quantity",
    "cancelled_at",
    "cancellation_reason",
    "image_url"
  ],
  "title": "OrderItemOut"
}
OrderItemStatusIn
components.schemas.OrderItemStatusIn
{
  "properties": {
    "status": {
      "type": "string",
      "title": "Status"
    },
    "quantity": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": 1.0
        },
        {
          "type": "null"
        }
      ],
      "title": "Quantity"
    },
    "cancellation_reason": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 4000
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancellation Reason"
    },
    "cancellation_source": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancellation Source"
    }
  },
  "type": "object",
  "required": [
    "status"
  ],
  "title": "OrderItemStatusIn"
}
OrderOut
components.schemas.OrderOut
{
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    },
    "checkout_attempt_id": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Checkout Attempt Id"
    },
    "source": {
      "type": "string",
      "title": "Source"
    },
    "external_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "External Id"
    },
    "order_number": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Order Number"
    },
    "image_url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Image Url"
    },
    "display_title": {
      "type": "string",
      "title": "Display Title"
    },
    "display_image": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Display Image"
    },
    "retailer": {
      "type": "string",
      "title": "Retailer"
    },
    "status": {
      "type": "string",
      "title": "Status"
    },
    "subtotal_cents": {
      "type": "integer",
      "title": "Subtotal Cents"
    },
    "shipping_cents": {
      "type": "integer",
      "title": "Shipping Cents"
    },
    "tax_cents": {
      "type": "integer",
      "title": "Tax Cents"
    },
    "total_cents": {
      "type": "integer",
      "title": "Total Cents"
    },
    "active_total_cents": {
      "type": "integer",
      "title": "Active Total Cents"
    },
    "currency": {
      "type": "string",
      "title": "Currency"
    },
    "cancellation_reason": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancellation Reason"
    },
    "cancellation_source": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancellation Source"
    },
    "cancelled_at": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancelled At"
    },
    "buying_account_email": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Buying Account Email"
    },
    "master_inbox_email": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Master Inbox Email"
    },
    "ship_to_name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Ship To Name"
    },
    "shipping_address": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Shipping Address"
    },
    "address_signature": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Address Signature"
    },
    "house_id": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "House Id"
    },
    "ordered_at": {
      "type": "string",
      "format": "date-time",
      "title": "Ordered At"
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "title": "Updated At"
    },
    "items": {
      "items": {
        "$ref": "#/components/schemas/OrderItemOut"
      },
      "type": "array",
      "title": "Items"
    }
  },
  "type": "object",
  "required": [
    "id",
    "checkout_attempt_id",
    "source",
    "external_id",
    "order_number",
    "image_url",
    "display_title",
    "display_image",
    "retailer",
    "status",
    "subtotal_cents",
    "shipping_cents",
    "tax_cents",
    "total_cents",
    "active_total_cents",
    "currency",
    "cancellation_reason",
    "cancellation_source",
    "cancelled_at",
    "buying_account_email",
    "master_inbox_email",
    "ship_to_name",
    "shipping_address",
    "address_signature",
    "house_id",
    "ordered_at",
    "updated_at",
    "items"
  ],
  "title": "OrderOut"
}
OrderStatusIn
components.schemas.OrderStatusIn
{
  "properties": {
    "status": {
      "type": "string",
      "title": "Status"
    },
    "message": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 4000
        },
        {
          "type": "null"
        }
      ],
      "title": "Message"
    },
    "cancellation_reason": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 4000
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancellation Reason"
    },
    "cancellation_source": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cancellation Source"
    },
    "detail": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Detail"
    }
  },
  "type": "object",
  "required": [
    "status"
  ],
  "title": "OrderStatusIn"
}
PlanOut
components.schemas.PlanOut
{
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    },
    "name": {
      "type": "string",
      "title": "Name"
    },
    "proxy_type": {
      "type": "string",
      "title": "Proxy Type"
    },
    "tier": {
      "type": "string",
      "title": "Tier"
    },
    "quota_gb": {
      "type": "integer",
      "title": "Quota Gb"
    },
    "price_cents": {
      "type": "integer",
      "title": "Price Cents"
    },
    "features": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Features"
    }
  },
  "type": "object",
  "required": [
    "id",
    "name",
    "proxy_type",
    "tier",
    "quota_gb",
    "price_cents",
    "features"
  ],
  "title": "PlanOut"
}
ProxyOut
components.schemas.ProxyOut
{
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    },
    "proxy_type": {
      "type": "string",
      "title": "Proxy Type"
    },
    "status": {
      "type": "string",
      "title": "Status"
    },
    "username": {
      "type": "string",
      "title": "Username"
    },
    "endpoints": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "title": "Endpoints"
    },
    "quota_bytes": {
      "type": "integer",
      "title": "Quota Bytes"
    },
    "topup_balance_bytes": {
      "type": "integer",
      "title": "Topup Balance Bytes",
      "default": 0
    },
    "remaining_bytes": {
      "type": "integer",
      "title": "Remaining Bytes",
      "default": 0
    },
    "used_bytes": {
      "type": "integer",
      "title": "Used Bytes"
    }
  },
  "type": "object",
  "required": [
    "id",
    "proxy_type",
    "status",
    "username",
    "endpoints",
    "quota_bytes",
    "used_bytes"
  ],
  "title": "ProxyOut"
}
RegionalIn
components.schemas.RegionalIn
{
  "properties": {
    "proxy_id": {
      "type": "integer",
      "title": "Proxy Id"
    },
    "state": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 32,
          "minLength": 2
        },
        {
          "type": "null"
        }
      ],
      "title": "State",
      "description": "US state code or name; required only for Regional plans"
    },
    "city": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 48
        },
        {
          "type": "null"
        }
      ],
      "title": "City"
    },
    "country": {
      "type": "string",
      "maxLength": 64,
      "title": "Country",
      "default": "US"
    },
    "isps": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "title": "Isps",
      "description": "e.g. ['att','spectrum']"
    },
    "qty": {
      "type": "integer",
      "maximum": 25000.0,
      "minimum": 1.0,
      "title": "Qty",
      "default": 100
    },
    "protocol": {
      "type": "string",
      "pattern": "^(http|socks5)$",
      "title": "Protocol",
      "default": "http"
    },
    "session": {
      "type": "string",
      "pattern": "^(sticky|rotating)$",
      "title": "Session",
      "default": "sticky"
    },
    "city_targeting": {
      "type": "boolean",
      "title": "City Targeting",
      "description": "Pin each proxy to a verified city within the selected state.",
      "default": false
    }
  },
  "type": "object",
  "required": [
    "proxy_id"
  ],
  "title": "RegionalIn",
  "description": "Targeting is passed as parameters, never as a shipping address \u2014 we\ndeliberately don't ingest our customers' end-customers' PII\n(docs/REGIONAL_STRATEGY.md \u00a74.1). A bare ZIP is fine; a full address is not."
}
RegionalOut
components.schemas.RegionalOut
{
  "properties": {
    "count": {
      "type": "integer",
      "title": "Count"
    },
    "double_rate": {
      "type": "boolean",
      "title": "Double Rate",
      "description": "Deprecated compatibility field. Regional provider accounting is absorbed upstream and customer usage is never double-counted.",
      "default": false,
      "deprecated": true
    },
    "breakdown": {
      "additionalProperties": {
        "type": "integer"
      },
      "type": "object",
      "title": "Breakdown"
    },
    "proxies": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "title": "Proxies"
    }
  },
  "type": "object",
  "required": [
    "count",
    "breakdown",
    "proxies"
  ],
  "title": "RegionalOut"
}
ShipmentCreateIn
components.schemas.ShipmentCreateIn
{
  "properties": {
    "order_id": {
      "anyOf": [
        {
          "type": "integer",
          "exclusiveMinimum": 0.0
        },
        {
          "type": "null"
        }
      ],
      "title": "Order Id"
    },
    "tracking_number": {
      "type": "string",
      "maxLength": 64,
      "minLength": 8,
      "title": "Tracking Number"
    },
    "carrier": {
      "type": "string",
      "title": "Carrier",
      "default": "auto"
    },
    "status": {
      "type": "string",
      "title": "Status",
      "default": "label_created"
    },
    "estimated_delivery": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Estimated Delivery"
    },
    "friendly_title": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ],
      "title": "Friendly Title"
    }
  },
  "type": "object",
  "required": [
    "tracking_number"
  ],
  "title": "ShipmentCreateIn"
}
ShipmentEventOut
components.schemas.ShipmentEventOut
{
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    },
    "status": {
      "type": "string",
      "title": "Status"
    },
    "source": {
      "type": "string",
      "title": "Source"
    },
    "message": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Message"
    },
    "occurred_at": {
      "type": "string",
      "format": "date-time",
      "title": "Occurred At"
    }
  },
  "type": "object",
  "required": [
    "id",
    "status",
    "source",
    "message",
    "occurred_at"
  ],
  "title": "ShipmentEventOut"
}
ShipmentOut
components.schemas.ShipmentOut
{
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    },
    "order_id": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Order Id"
    },
    "friendly_title": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Friendly Title"
    },
    "source": {
      "type": "string",
      "title": "Source"
    },
    "carrier": {
      "type": "string",
      "title": "Carrier"
    },
    "tracking_number": {
      "type": "string",
      "title": "Tracking Number"
    },
    "status": {
      "type": "string",
      "title": "Status"
    },
    "tracking_url": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Tracking Url"
    },
    "estimated_delivery": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Estimated Delivery"
    },
    "shipped_at": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Shipped At"
    },
    "delivered_at": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Delivered At"
    },
    "last_activity_at": {
      "type": "string",
      "format": "date-time",
      "title": "Last Activity At"
    },
    "last_checked_at": {
      "anyOf": [
        {
          "type": "string",
          "format": "date-time"
        },
        {
          "type": "null"
        }
      ],
      "title": "Last Checked At"
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "title": "Created At"
    },
    "events": {
      "items": {
        "$ref": "#/components/schemas/ShipmentEventOut"
      },
      "type": "array",
      "title": "Events"
    }
  },
  "type": "object",
  "required": [
    "id",
    "order_id",
    "friendly_title",
    "source",
    "carrier",
    "tracking_number",
    "status",
    "tracking_url",
    "estimated_delivery",
    "shipped_at",
    "delivered_at",
    "last_activity_at",
    "last_checked_at",
    "created_at",
    "events"
  ],
  "title": "ShipmentOut"
}
ShipmentStatusIn
components.schemas.ShipmentStatusIn
{
  "properties": {
    "status": {
      "type": "string",
      "title": "Status"
    },
    "message": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 255
        },
        {
          "type": "null"
        }
      ],
      "title": "Message"
    }
  },
  "type": "object",
  "required": [
    "status"
  ],
  "title": "ShipmentStatusIn"
}
UsageOut
components.schemas.UsageOut
{
  "properties": {
    "proxy_id": {
      "type": "integer",
      "title": "Proxy Id"
    },
    "quota_bytes": {
      "type": "integer",
      "title": "Quota Bytes"
    },
    "topup_balance_bytes": {
      "type": "integer",
      "title": "Topup Balance Bytes",
      "default": 0
    },
    "remaining_bytes": {
      "type": "integer",
      "title": "Remaining Bytes",
      "default": 0
    },
    "used_bytes": {
      "type": "integer",
      "title": "Used Bytes"
    },
    "used_pct": {
      "type": "number",
      "title": "Used Pct"
    }
  },
  "type": "object",
  "required": [
    "proxy_id",
    "quota_bytes",
    "used_bytes",
    "used_pct"
  ],
  "title": "UsageOut"
}
ValidationError
components.schemas.ValidationError
{
  "properties": {
    "loc": {
      "items": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "integer"
          }
        ]
      },
      "type": "array",
      "title": "Location"
    },
    "msg": {
      "type": "string",
      "title": "Message"
    },
    "type": {
      "type": "string",
      "title": "Error Type"
    },
    "input": {
      "title": "Input"
    },
    "ctx": {
      "type": "object",
      "title": "Context"
    }
  },
  "type": "object",
  "required": [
    "loc",
    "msg",
    "type"
  ],
  "title": "ValidationError"
}
WhitelistIn
components.schemas.WhitelistIn
{
  "properties": {
    "ip": {
      "type": "string",
      "pattern": "^[0-9a-fA-F\\.:]+$",
      "title": "Ip"
    }
  },
  "type": "object",
  "required": [
    "ip"
  ],
  "title": "WhitelistIn"
}