IPMusk Products API
The Products API from IPMusk — 1 operation(s) for products.
The Products API from IPMusk — 1 operation(s) for products.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/ipmusk-com:ipmusk-com-products-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: IPMusk Customer Products API
version: 1.0.0
description: 'Read the catalogue, get residential and static proxy credentials, check usage and orders, and handle support tickets. Authenticate with an API key from the dashboard (Settings > API keys) sent as `Authorization: Bearer `; each key carries the scopes read, connect and/or support. Rate limits per key and minute: read 60, connect 20, support 30 (429 rate_limited, with a Retry-After header in seconds). JSON responses are `{ data, request_id }`; errors are `{ error: { code, message, field_errors? }, request_id }`. Money is amount_minor (minor units) with an ISO 4217 currency.'
servers:
- url: https://ipmusk.com
tags:
- name: Products
paths:
/api/v1/products:
get:
operationId: products_list
summary: List products
description: '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.'
parameters: []
responses:
'200':
description: List products
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
items:
type: array
items:
type: object
properties:
id:
type: string
enum:
- rotating_residential
- static_isp
name:
type: string
description:
type: string
billing_model:
type: string
enum:
- traffic
- ip_and_term
available:
type: boolean
static_categories:
type: array
items:
type: string
enum:
- native_isp
- isp
- datacenter
- residential
required:
- id
- name
- description
- billing_model
- available
- static_categories
additionalProperties: false
required:
- items
additionalProperties: false
request_id:
type: string
minLength: 8
maxLength: 128
required:
- data
- request_id
additionalProperties: false
default:
$ref: '#/components/responses/Error'
tags:
- Products
components:
responses:
Error:
description: '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.'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
schemas:
ErrorEnvelope:
type: object
properties:
error:
type: object
properties:
code:
type: string
enum:
- validation_error
- authentication_required
- region_blocked
- forbidden
- not_found
- idempotency_conflict
- invalid_state_transition
- checkout_unavailable
- product_unavailable
- capability_unavailable
- rate_limited
- challenge_required
- upstream_unavailable
- internal_error
message:
type: string
minLength: 1
maxLength: 500
field_errors:
type: object
propertyNames:
type: string
additionalProperties:
type: array
items:
type: string
minLength: 1
maxLength: 300
required:
- code
- message
additionalProperties: false
request_id:
type: string
minLength: 8
maxLength: 128
required:
- error
- request_id
additionalProperties: false
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: An IPMusk API key (ipm_live_…).