API Documentation
Simple API for indexing URLs and checking index status
Getting Started
Authentication
All API requests require an API key in the X-API-Key header:
X-API-Key: your_api_key_here
Base URL
https://api.quickindex.app
Credits
- Check Balance:
GET /api/credits/balance - Cost: 1 credit per URL (both indexing and checking)
- Deducted: Immediately upon successful submission
Submit URLs to Google for indexing.
Endpoint
POST /api/submissions/
Request
{
"urls": [
"https://example.com/page1",
"https://example.com/page2"
]
}Response
{
"id": "proj_abc123",
"project_name": "API Submission - 2025-01-21 13:45:00",
"total_links": 2,
"credits_used": 2,
"status": "SUCCESS",
"submitted_at": "2025-01-21T13:45:00Z",
"completed_at": "2025-01-21T13:45:05Z"
}Status Values:
- •
SUCCESS- URLs submitted successfully - •
FAILED- Submission failed - •
PROCESSING- Currently processing
Code Examples
cURL
curl -X POST https://api.quickindex.app/api/submissions/ \
-H "X-API-Key: sk_live_abc123..." \
-H "Content-Type: application/json" \
-d '{"urls": ["https://example.com/page1"]}'Python
import requests
response = requests.post(
"https://api.quickindex.app/api/submissions/",
headers={
"X-API-Key": "sk_live_abc123...",
"Content-Type": "application/json"
},
json={"urls": ["https://example.com/page1"]}
)
if response.status_code == 200:
print("Success:", response.json())
elif response.status_code == 402:
print("Insufficient credits")
elif response.status_code == 401:
print("Invalid API key")JavaScript
const response = await fetch('https://api.quickindex.app/api/submissions/', {
method: 'POST',
headers: {
'X-API-Key': 'sk_live_abc123...',
'Content-Type': 'application/json'
},
body: JSON.stringify({
urls: ['https://example.com/page1']
})
});
const data = await response.json();
console.log(data);Credit Management
Check Balance
GET /api/credits/balance
Response
{
"total_credits": 1000,
"expired_credits": 0,
"available_credits": 1000
}Example
response = requests.get(
"https://api.quickindex.app/api/credits/balance",
headers={"X-API-Key": "sk_live_abc123..."}
)
balance = response.json()["available_credits"]Error Handling
| Code | Meaning | Action |
|---|---|---|
| 200 | Success | Request completed |
| 201 | Created | Resource created |
| 400 | Bad Request | Check request format |
| 401 | Unauthorized | Invalid API key |
| 402 | Payment Required | Buy more credits |
| 422 | Validation Error | Fix request data |
| 500 | Server Error | Retry after a few seconds |
401 - Invalid API Key
{"detail": "Invalid or inactive API key"}Fix: Check your API key in dashboard settings
402 - Insufficient Credits
{"detail": "Insufficient credits. Need 100, have 50"}Fix: Buy more credits
500 - Server Error
{"detail": "Internal server error"}Fix: Retry after a few seconds with exponential backoff
Support
Dashboard: https://quickindex.app/dashboard
Buy Credits: https://quickindex.app/buy-credits
API Keys: https://quickindex.app/settings/api-keys