---
title: "List products"
method: GET
path: "/api/v1/products"
---

# List products

`GET /api/v1/products`

## Request

- Base URL: `https://ipmusk.com`
- URL: `https://ipmusk.com/api/v1/products`
- Auth: none declared

The two products: rotating_residential (billed by traffic) and static_isp (billed per IP and term), with the static proxy kinds sold under static_isp.

## Response `200`

List products

- object
  - `data` object, required
    - `items` object[], required
      - `id` 'rotating_residential' | 'static_isp', required
      - `name` string, required
      - `description` string, required
      - `billing_model` 'traffic' | 'ip_and_term', required
      - `available` boolean, required
      - `static_categories` string[], required
  - `request_id` string, required

## Other responses

- `default`: Any failure: 400 validation_error, 401 authentication_required, 403 forbidden / capability_unavailable, 404 not_found, 409 invalid_state_transition / idempotency_conflict, 422 product_unavailable, 429 rate_limited, 500 internal_error.

---

[API](https://skmtc.dev/ipmusk/apis/ipmusk-customer-api.md) · [All operations](https://skmtc.dev/ipmusk/apis/ipmusk-customer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ipmusk/apis/ipmusk-customer-api/revisions/89f8b46fda61?raw)
