API Reference
APIQuick is an endpoint marketplace. Providers import OpenAPI or Postman contracts into API collections, set a price per endpoint invocation, test endpoints through APIQuick's proxy, and publish only working endpoints. Consumers call the visible APIQuick proxy URL; provider backend URLs and upstream paths are hidden from public users.
One collection can contain many endpoints. Each endpoint has its own proxy URL, price per invocation, authentication requirement, rate limit metadata, and test status. Only priced endpoints with a successful proxy test are publicly visible.
Base URL
All APIQuick backend requests use this production base URL:
https://api.quickpod.org/apiquick/v1 Authentication
Marketplace discovery endpoints are public. Provider onboarding endpoints use the dashboard session token in
Authorization: Bearer .... Runtime endpoint invocation requires an APIQuick API key with the
proxy:invoke scope in the X-APIQUICK-API-KEY header.
X-APIQUICK-API-KEY: aqk_... API Collections
Public collection routes return only published collections that have at least one working, priced endpoint.
| Endpoint | Auth | Description |
|---|---|---|
GET /v1/apis | Public | List published API collections. Supports q and category_id. |
GET /v1/apis/:slug | Public or provider session | Load a collection and endpoint catalog. Public callers receive only tested, priced proxy endpoints. The owning provider can also load draft source endpoint details during onboarding. |
GET /v1/categories | Public | Load API category taxonomy for browsing collections. |
curl "https://api.quickpod.org/apiquick/v1/apis?q=breach" Provider Onboarding
Provider imports create draft collections. The onboarding flow then asks providers to review collection copy,
configure endpoint listings, set a positive price per invocation for every endpoint, test endpoints through the proxy,
and publish. Imported endpoint prices default to 0.0010 credits per invocation.
POST /v1/import/openapi
Authorization: Bearer <dashboard-session-token>
Content-Type: multipart/form-data
file=@openapi.yaml
default_credit_usd=0.0010 POST /v1/import/postman
Authorization: Bearer <dashboard-session-token>
Content-Type: multipart/form-data
file=@collection.json
default_credit_usd=0.0010
Publishing with PATCH /v1/collections/:id and { "status": "published" }
is rejected until every active endpoint has a positive price and at least one endpoint has a successful 2xx proxy test.
Endpoint Proxy
Public endpoint details provide a slugged proxy URL that users call instead of the provider backend. The canonical form is:
https://api.quickpod.org/apiquick/v1/proxy/{collectionSlug}/{endpointKey} Numeric proxy IDs are still accepted for compatibility, but public endpoint details prefer slugged URLs.
curl -X GET "https://api.quickpod.org/apiquick/v1/proxy/breach-api-42/get-breach-risk-by-domain?domain=example.com" -H "X-APIQUICK-API-KEY: aqk_..." Metering and Limits
The proxy validates the API key and proxy:invoke scope, enforces endpoint RPM limits when configured,
checks that the caller has enough credit, reserves the endpoint cost before contacting the hidden upstream backend,
and logs usage. If the upstream transport fails before a response is received, the reserved charge is refunded.
| Status | Error | Meaning |
|---|---|---|
401 | missing_api_key or invalid_api_key | The invocation key is missing, inactive, expired, or unknown. |
403 | scope_not_allowed | The key does not include proxy:invoke. |
402 | insufficient_credits | The caller does not have enough credit for the endpoint's price per invocation. |
429 | rate_limit_exceeded | The endpoint-specific requests-per-minute limit was exceeded. |
Error Handling
Error responses include a machine-readable error value:
{
"error": "insufficient_credits"
}