Marketplace gateway
Members' APIs are called through Ceta: subscribe on the API's page, take the key you are given (scope api:<slug>), and call
curl
curl https://developers.cetatraders.com/gw/<api>/<path>?<query> \
-H "Authorization: Bearer $CETA_API_KEY"
-
The path and query after
/gw/<api>are appended to the provider's base URL; any method; bodies up to 10 MB, unchanged. -
Ceta adds the provider's own secret (you never see it) and
x-ceta-consumer(your company's id). It removes your Ceta key, cookies and forwarding headers. -
The provider's answer is streamed back as it comes (up to 50 MB), without cookies or hop-by-hop headers;
x-ceta-gateway: 1is added. Redirects are passed back, never followed. - Providers are reached only at public internet addresses over https.
- Every call is counted (status, bytes, latency) and visible to you and to the provider. A call the provider fails (5xx, timeout) is not billed.
| Status | error | Meaning |
|---|---|---|
| 401 | invalid_api_key | No key, or a wrong one. |
| 403 | key_not_for_this_api | The key lacks the API's scope api:<slug>. |
| 403 | not_subscribed | Your company has no subscription to this API. |
| 403 | subscription_inactive | The subscription ended or its payment failed past the grace period. |
| 403 | sandbox_not_offered | A test key, and the API has no sandbox. |
| 404 | api_not_found | No API has that slug. |
| 413 | body_too_large | Request bodies up to 10 MB. |
| 429 | rate_limited | More than the plan's calls per minute (retry-after). |
| 429 | quota_exceeded | The plan's included calls are used up and it has no price for more. |
| 502 | upstream_unavailable | The provider could not be reached. |
| 502 | upstream_refused | The provider's address is not a public internet address. |
| 504 | upstream_timeout | The provider did not answer in time (its timeout, at most 60 s). |