API v1 — Documentation
Authenticated endpoints use your single API token as a Bearer token. Rate limit: 100 requests/min per token.
Authentication
Set the Authorization header to your API token:
Authorization: Bearer <your_api_token>
Examples (curl)
List Countries
GET /api/v1/countries
curl -s -H "Authorization: Bearer $TOKEN" \
"https://abcotp.com/api/v1/countries"
List Services
GET /api/v1/services
curl -s -H "Authorization: Bearer $TOKEN" \
"https://abcotp.com/api/v1/services"
Services by Country
GET /api/v1/services/{country}
curl -s -H "Authorization: Bearer $TOKEN" \
"https://abcotp.com/api/v1/services/Nigeria"
Create Order (purchase)
POST /api/v1/orders
Body (JSON): use the opaque uid returned by a services endpoint.
curl -s -X POST -H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"uid":"<opaque-service-id>","country":"Nigeria"}' \
"https://abcotp.com/api/v1/orders"
List Orders
GET /api/v1/orders
curl -s -H "Authorization: Bearer $TOKEN" \
"https://abcotp.com/api/v1/orders"
Get Order
GET /api/v1/orders/{order_id}
curl -s -H "Authorization: Bearer $TOKEN" \
"https://abcotp.com/api/v1/orders/ORDER_ID"
Cancel Order
DELETE /api/v1/orders/{order_id}
curl -s -X DELETE -H "Authorization: Bearer $TOKEN" \
"https://abcotp.com/api/v1/orders/ORDER_ID"
Notes
- Prices returned by the API are in Naira (same as frontend).
- Service identifiers are opaque. Use them exactly as returned and do not parse or modify them.
- Rate limit: 100 requests/min per token. Contact support if you need higher limits.