API Reference
Overview
The Catch.club API is a RESTful HTTP service. Every request is authenticated with an API key you generate from the API Keys page. Requests and responses are JSON. Permission scopes on your key determine which endpoints you can call.
Base URL
Content type
All requests and responses use
application/json.Authentication
Send your API key in the
X-API-Key header. Each key is scoped to the permissions you enabled when you created it — calling an endpoint without the matching permission returns a 403.X-API-Key: YOUR_API_KEY Content-Type: application/json Accept: application/json
Endpoints
2 endpoints are unverified. These paths were inferred from permission names and aren't called from the frontend. Confirm before using in production.
Read-only access to public auction details and bid history for a given domain.
GET
/public/auction/{domain} View auction info
Permission
auctions.viewAuctionInfoFull URL
Path parameters
domain string required
Fully-qualified domain name (e.g. example.com).
cURL
curl -X GET 'https://api.catch.club/api/v1/public/auction/{domain}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .GET
/public/auction/{domain}/bids View bid history
Permission
auctions.viewBidHistoryFull URL
Path parameters
domain string required
Fully-qualified domain name (e.g. example.com).
cURL
curl -X GET 'https://api.catch.club/api/v1/public/auction/{domain}/bids' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .Search the full catalog of domains currently in auction.
GET
/public/domain-auction/search Search auctions
Permission
domainSearch.searchAuctionsFull URL
Query parameters
page integer optional
Zero-based page number. Default 0.
size integer optional
Page size (max per request).
query string optional
Free-text search query.
cURL
curl -X GET 'https://api.catch.club/api/v1/public/domain-auction/search?page=0&size=50&query=...' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .List your pending backorder requests.
GET
/user/backorder/search Search backorders
Permission
backorders.searchBackordersFull URL
Query parameters
page integer optional
Zero-based page number. Default 0.
size integer optional
Page size (max per request).
cURL
curl -X GET 'https://api.catch.club/api/v1/user/backorder/search?page=0&size=50' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .Place single bids, bulk bids, and bulk-increase existing bids. Live-money actions.
POST
/user/bid Place bid
Permission
bidding.placeBidFull URL
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/bid' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .POST
/user/bid/bulk-place Place bids (bulk)
Permission
bidding.placeBidsBulkFull URL
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/bid/bulk-place' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .POST
/user/bid/bulk-increase Increase bids (bulk)
Permission
bidding.increaseBidsBulkFull URL
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/bid/bulk-increase' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .Manage your domain watchlist — create, search, pause/resume, toggle notifications, download, and delete entries.
POST
/user/domain/watch/create Create watch
Permission
domainWatch.createFull URL
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/domain/watch/create' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .GET
/user/domain/watch/search Search watchlist
Permission
domainWatch.searchFull URL
Query parameters
page integer optional
Zero-based page number. Default 0.
size integer optional
Page size (max per request).
cURL
curl -X GET 'https://api.catch.club/api/v1/user/domain/watch/search?page=0&size=50' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .POST
/user/domain/watch/toggle-pause/{id} Pause / resume
Permission
domainWatch.togglePauseFull URL
Path parameters
id string required
Resource identifier.
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/domain/watch/toggle-pause/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .POST
/user/domain/watch/toggle-notifications/{id} Toggle notifications
Permission
domainWatch.toggleNotificationsFull URL
Path parameters
id string required
Resource identifier.
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/domain/watch/toggle-notifications/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .GET
/user/domain/watch/download Download watchlist
Permission
domainWatch.downloadFull URL
cURL
curl -X GET 'https://api.catch.club/api/v1/user/domain/watch/download' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .GET
/user/domain/watch/download/{id} UnverifiedDownload individual
Permission
domainWatch.downloadIndividualFull URL
Path parameters
id string required
Resource identifier.
cURL
curl -X GET 'https://api.catch.club/api/v1/user/domain/watch/download/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .DELETE
/user/domain/watch/{id} Delete watch
Permission
domainWatch.deleteFull URL
Path parameters
id string required
Resource identifier.
cURL
curl -X DELETE 'https://api.catch.club/api/v1/user/domain/watch/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .Create, search, update, and delete DNS records on your domains.
POST
/user/dns Create record
Permission
dnsManagement.createFull URL
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/dns' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .GET
/user/dns/search Search records
Permission
dnsManagement.searchFull URL
Query parameters
page integer optional
Zero-based page number. Default 0.
size integer optional
Page size (max per request).
domain string required
Fully-qualified domain name (e.g. example.com).
cURL
curl -X GET 'https://api.catch.club/api/v1/user/dns/search?page=0&size=100&domain=...' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .PUT
/user/dns/{id} Update record
Permission
dnsManagement.updateFull URL
Path parameters
id string required
Resource identifier.
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X PUT 'https://api.catch.club/api/v1/user/dns/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .DELETE
/user/dns/{id} Delete record
Permission
dnsManagement.deleteFull URL
Path parameters
id string required
Resource identifier.
cURL
curl -X DELETE 'https://api.catch.club/api/v1/user/dns/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .Manage default DNS templates that are applied to newly-caught domains.
POST
/user/dns/default Create default
Permission
defaultDns.createFull URL
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/dns/default' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .GET
/user/dns/default/search Search defaults
Permission
defaultDns.searchFull URL
Query parameters
page integer optional
Zero-based page number. Default 0.
size integer optional
Page size (max per request).
cURL
curl -X GET 'https://api.catch.club/api/v1/user/dns/default/search?page=0&size=100' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .PUT
/user/dns/default/{id} Update default
Permission
defaultDns.updateFull URL
Path parameters
id string required
Resource identifier.
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X PUT 'https://api.catch.club/api/v1/user/dns/default/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .DELETE
/user/dns/default/{id} Delete default
Permission
defaultDns.deleteFull URL
Path parameters
id string required
Resource identifier.
cURL
curl -X DELETE 'https://api.catch.club/api/v1/user/dns/default/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .View your current subscription plan and history, subscribe to a new plan, or cancel.
GET
/user/plan/my View my plan
Permission
billingPlan.viewMyPlanFull URL
cURL
curl -X GET 'https://api.catch.club/api/v1/user/plan/my' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .GET
/user/plan/history View history
Permission
billingPlan.viewHistoryFull URL
cURL
curl -X GET 'https://api.catch.club/api/v1/user/plan/history' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .POST
/user/plan/subscribe Subscribe
Permission
billingPlan.subscribeFull URL
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/plan/subscribe' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .POST
/user/plan/cancel Cancel
Permission
billingPlan.cancelFull URL
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/plan/cancel' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .Search invoices, read a single invoice, or pay it.
GET
/user/invoice/search Search invoices
Permission
invoices.searchFull URL
Query parameters
page integer optional
Zero-based page number. Default 0.
size integer optional
Page size (max per request).
cURL
curl -X GET 'https://api.catch.club/api/v1/user/invoice/search?page=0&size=50' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .GET
/user/invoice/{id} View invoice
Permission
invoices.viewFull URL
Path parameters
id string required
Resource identifier.
cURL
curl -X GET 'https://api.catch.club/api/v1/user/invoice/{id}' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .POST
/user/invoice/{id}/pay Pay invoice
Permission
invoices.payFull URL
Path parameters
id string required
Resource identifier.
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/invoice/{id}/pay' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .POST
/user/invoice/{id}/pay/v2 UnverifiedPay invoice (v2)
Permission
invoices.payV2Full URL
Path parameters
id string required
Resource identifier.
Request body
This endpoint accepts a JSON body. The exact shape isn't individually documented here — see the section for a worked case.
cURL
curl -X POST 'https://api.catch.club/api/v1/user/invoice/{id}/pay/v2' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ ... }'Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .Search your account transaction history.
GET
/user/transaction/search Search transactions
Permission
transactions.searchFull URL
Query parameters
page integer optional
Zero-based page number. Default 0.
size integer optional
Page size (max per request).
cURL
curl -X GET 'https://api.catch.club/api/v1/user/transaction/search?page=0&size=50' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .Read your account profile — balance, credit limit, email, settings.
GET
/user/me View profile
Permission
accountInfo.viewProfileFull URL
cURL
curl -X GET 'https://api.catch.club/api/v1/user/me' \ -H 'X-API-Key: YOUR_API_KEY' \ -H 'Accept: application/json'
Response
200 OKReturns a JSON object. Exact response shape isn't individually documented here — see the section for a worked case. On error, a non-2xx status is returned with an
errors array — see .