Auth
Send the key on every call.
Authorization: Bearer YOUR_API_KEY Content-Type: application/json
API
Two routes under /api/v1/external. Enable API access and create a key in the panel. Billing follows the selected service and any active personal unit price.
Send the key on every call.
Authorization: Bearer YOUR_API_KEY Content-Type: application/json
POST /api/v1/external/submit
Google uses instant indexing for index_type 0, 1, or an omitted value. Use search_engine: "bing" for Bing. The account submission quota sets the request limit. Cost uses the selected service and any active personal unit price; example amounts are illustrative.
curl https://YOUR_PANEL/api/v1/external/submit \
-X POST \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"urls": ["https://example.com/a", "https://example.com/b"],
"index_type": 1
}'
{
"code": 0,
"message": "success",
"data": {
"status": "submitted",
"batch_no": "DURL...",
"total_urls": 2,
"cost": 2,
"balance": 4498
}
}
GET /api/v1/external/status?batch_no=DURL...
curl 'https://YOUR_PANEL/api/v1/external/status?batch_no=DURL...' \ -H 'Authorization: Bearer YOUR_API_KEY'
New batches and their items return submitted, meaning accepted by the platform, not indexed by a search engine. success_count counts accepted URLs; fail_count and pending_count are zero. Historical batches may retain legacy statuses.
{
"code": 0,
"message": "success",
"data": {
"batch_no": "DURL...",
"status": "submitted",
"total_urls": 2,
"success_count": 2,
"fail_count": 0,
"pending_count": 0,
"items": [
{ "url": "https://example.com/a", "status": "submitted" },
{ "url": "https://example.com/b", "status": "submitted" }
]
}
}
Credits are spent when the batch is created. A failed URL is not credited back.