Create credit-pack checkout
curl --request POST \
--url https://mcp.enricho.co/api/billing/checkout/credits \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"packs": 1
}'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({packs: 1})
};
fetch('https://mcp.enricho.co/api/billing/checkout/credits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://mcp.enricho.co/api/billing/checkout/credits"
payload = { "packs": 1 }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"result": {
"checkout_url": "<string>",
"item": "<string>",
"price_usd": "<string>",
"credits": 123,
"note": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}Billing and usage
Create credit-pack checkout
Hosted payment link for non-expiring one-time credits.
POST
/
api
/
billing
/
checkout
/
credits
Create credit-pack checkout
curl --request POST \
--url https://mcp.enricho.co/api/billing/checkout/credits \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"packs": 1
}'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({packs: 1})
};
fetch('https://mcp.enricho.co/api/billing/checkout/credits', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://mcp.enricho.co/api/billing/checkout/credits"
payload = { "packs": 1 }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"success": true,
"result": {
"checkout_url": "<string>",
"item": "<string>",
"price_usd": "<string>",
"credits": 123,
"note": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}{
"success": false,
"result": {
"code": "<string>"
},
"message": "<string>"
}curl -X POST 'https://mcp.enricho.co/api/billing/checkout/credits' \
-H 'Authorization: Bearer enr_YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"packs":2}'
packs from 1–50. An empty object, omitted packs, zero or negative integers normalize to 1 pack; they do not cancel the request. More than 50 returns 422. Each pack is 10,000 credits for $25 USD: two packs produce a $50.00 checkout for 20,000 credits. Link creation does not charge you.
The result includes checkout_url, item, total formatted price_usd, total credits and note. Open the link to pay, then check usage after confirmation. Purchased credits never expire and are spent after monthly credits. This API consumes no directory credits. Do not send card data. Payment-provider failures can return 502; unavailable checkout returns 503.Authorizations
apiKeyheaderKey
Enricho API key (enr_...)
Body
application/json
Send JSON with Content-Type: application/json.
Number of packs. Omitted, 0 or negative integers normalize to 1; more than 50 returns 422. Send 1–50.
Required range:
x <= 50