API Endpoints
Tham chiếu đầy đủ cho tất cả Toolify API endpoints
Tổng quan
The Toolify API provides a comprehensive set of endpoints for managing tasks, checking your balance, and listing available services. All endpoints require authentication using your API key.
Base URL: https://api.toolify.io/api/v1
GET /services
List all available services and their pricing information.
Description
Returns a list of all available services on the Toolify platform, including their names, descriptions, and pricing information.
Parameters
No parameters required.
Response
{
"success": true,
"data": [
{
"service": "facebook_fanpage_extract_contact",
"display_name": "Extract Fanpage Contact",
"description": "Extract contact information from Facebook fanpages",
"pricing": 30,
"currency": "coins"
},
{
"service": "domain_check_availability",
"display_name": "Check Domain Availability",
"description": "Check if a domain name is available for registration",
"pricing": 30,
"currency": "coins"
}
],
"meta": {
"total": 2,
"currency": "coins"
}
}
Examples
curl -H "X-API-Key: your_api_key_here" \
https://api.toolify.io/api/v1/services
const axios = require('axios');
const response = await axios.get('https://api.toolify.io/api/v1/services', {
headers: {
'X-API-Key': 'your_api_key_here'
}
});
console.log(response.data);
import requests
headers = {
'X-API-Key': 'your_api_key_here'
}
response = requests.get(
'https://api.toolify.io/api/v1/services',
headers=headers
)
print(response.json())
GET /balance
Get your current account balance.
Description
Returns your current account balance in coins. This endpoint is useful for checking if you have enough coins to perform a task.
Parameters
No parameters required.
Response
{
"success": true,
"data": {
"balance": 1500,
"currency": "coins"
}
}
Examples
curl -H "X-API-Key: your_api_key_here" \
https://api.toolify.io/api/v1/balance
const axios = require('axios');
const response = await axios.get('https://api.toolify.io/api/v1/balance', {
headers: {
'X-API-Key': 'your_api_key_here'
}
});
console.log(response.data);
import requests
headers = {
'X-API-Key': 'your_api_key_here'
}
response = requests.get(
'https://api.toolify.io/api/v1/balance',
headers=headers
)
print(response.json())
POST /tasks
Create a new task to process items.
Description
Creates a new task with the specified service and items. The cost is calculated automatically based on the service pricing and number of items.
Request Body Parameters
service(required, string) - Service identifier (e.g., "domain_check_availability")items(required, array) - Array of items to process
Response
{
"success": true,
"message": "Task created successfully",
"data": {
"id": 123,
"service": "domain_check_availability",
"status": "pending",
"total_items": 2,
"cost": 60,
"created_at": "2025-01-15T10:28:00Z",
"completed_at": null
}
}
Examples
curl -X POST \
-H "X-API-Key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"service": "domain_check_availability",
"items": ["example.com", "test.com"]
}' \
https://api.toolify.io/api/v1/tasks
const axios = require('axios');
const data = {
service: 'domain_check_availability',
items: ['example.com', 'test.com']
};
const response = await axios.post(
'https://api.toolify.io/api/v1/tasks',
data,
{
headers: {
'X-API-Key': 'your_api_key_here',
'Content-Type': 'application/json'
}
}
);
console.log(response.data);
import requests
headers = {
'X-API-Key': 'your_api_key_here',
'Content-Type': 'application/json'
}
data = {
'service': 'domain_check_availability',
'items': ['example.com', 'test.com']
}
response = requests.post(
'https://api.toolify.io/api/v1/tasks',
headers=headers,
json=data
)
print(response.json())
GET /tasks
List your tasks with pagination.
Description
Returns a paginated list of all your tasks, including their status and completion information.
Query Parameters
page(optional, integer) - Page number (default: 1)per_page(optional, integer) - Items per page (default: 25, max: 100)
Response
{
"success": true,
"data": [
{
"id": 123,
"service": "domain_check_availability",
"status": "completed",
"total_items": 2,
"cost": 60,
"created_at": "2025-01-15T10:28:00Z",
"completed_at": "2025-01-15T10:30:00Z"
}
],
"meta": {
"current_page": 1,
"total_pages": 2,
"total_count": 50,
"per_page": 25
}
}
Examples
curl -H "X-API-Key: your_api_key_here" \
"https://api.toolify.io/api/v1/tasks?page=1&per_page=25"
const axios = require('axios');
const response = await axios.get('https://api.toolify.io/api/v1/tasks', {
params: {
page: 1,
per_page: 25
},
headers: {
'X-API-Key': 'your_api_key_here'
}
});
console.log(response.data);
import requests
headers = {
'X-API-Key': 'your_api_key_here'
}
params = {
'page': 1,
'per_page': 25
}
response = requests.get(
'https://api.toolify.io/api/v1/tasks',
headers=headers,
params=params
)
print(response.json())
GET /tasks/:id
Get detailed information about a specific task.
Description
Returns detailed information about a specific task, including all processed items and their results.
Path Parameters
id(required, integer) - Task ID
Response
{
"success": true,
"data": {
"id": 123,
"service": "domain_check_availability",
"status": "completed",
"total_items": 2,
"cost": 60,
"created_at": "2025-01-15T10:28:00Z",
"completed_at": "2025-01-15T10:30:00Z",
"items": [
{
"target": "example.com",
"status": "completed",
"data": {
"available": true
}
},
{
"target": "google.com",
"status": "completed",
"data": {
"available": false
}
}
]
}
}
Examples
curl -H "X-API-Key: your_api_key_here" \
https://api.toolify.io/api/v1/tasks/123
const axios = require('axios');
const taskId = 123;
const response = await axios.get(
`https://api.toolify.io/api/v1/tasks/${taskId}`,
{
headers: {
'X-API-Key': 'your_api_key_here'
}
}
);
console.log(response.data);
import requests
task_id = 123
headers = {
'X-API-Key': 'your_api_key_here'
}
response = requests.get(
f'https://api.toolify.io/api/v1/tasks/{task_id}',
headers=headers
)
print(response.json())
Error Codes
All API errors return a consistent JSON structure with status and error information.
Error Response Format
{
"success": false,
"error": {
"code": "error_code",
"message": "Human readable error message"
}
}
Common Error Codes
unauthorized- Invalid or missing API keynot_found- Resource not found (task, service, etc.)validation_error- Validation failed or missing required parametersinsufficient_balance- Not enough coins to perform the operationinternal_error- Internal server error occurred
Example Error Responses
Insufficient Balance
{
"success": false,
"error": {
"code": "insufficient_balance",
"message": "Not enough coins. Your balance is 10 coins, but this task requires 60 coins"
}
}
Invalid API Key
{
"success": false,
"error": {
"code": "unauthorized",
"message": "Invalid or missing API key"
}
}
Resource Not Found
{
"success": false,
"error": {
"code": "not_found",
"message": "Task with ID 123 not found"
}
}
Rate Limiting
The API has rate limiting in place to ensure fair usage. Current limits are:
- 100 requests per minute per API key
- Contact support for higher limits if needed
Rate limit information is included in response headers:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1642265280
Ready to Build?
Start integrating the Toolify API into your application. For authentication details, check out our authentication guide.
View Authentication Guide →