Account Management API
Programmatically check your OEM credit balance and retrieve audit logs for usage tracking and billing reconciliation.
warning
OEM API requires special partner access. Contact FullHunt sales to enable OEM capabilities on your account.
Check Credit Balance
Returns the current OEM credit balance without deducting any credits.
HTTP Request
POST https://fullhunt.io/api/v1/oem/account/credits
Request Body Parameters
| Parameter | Required | Type | Description |
|---|---|---|---|
| query_tags | No | object | Key-value pairs for client-specific tracking |
Example Request
curl -X POST "https://fullhunt.io/api/v1/oem/account/credits" \
-H "X-API-KEY: xxxx-xxxx-xxxx-xxxxxx" \
-H "Content-Type: application/json" \
-d '{
"query_tags": {
"client_name": "ACMECorp",
"check_reason": "billing_reconciliation"
}
}'
Example Response
{
"response": {
"credits_remaining": 4500,
"oem_enabled": true,
"company": "ACME Corp",
"account_id": "acc_123",
"timestamp": 1708012800
}
}
Response Fields
| Field | Type | Description |
|---|---|---|
response.credits_remaining | integer | Number of OEM API credits remaining |
response.oem_enabled | boolean | Whether OEM is enabled on the account |
response.company | string | Company name associated with the account |
response.account_id | string | Enterprise account identifier |
response.timestamp | integer | Unix timestamp of the request |
Rate Limiting
- 30 requests per minute per API key
- Credit checks do not consume credits
Retrieve Audit Logs
Returns paginated OEM API usage logs with optional date range filtering.
HTTP Request
POST https://fullhunt.io/api/v1/oem/account/audit-logs
Request Body Parameters
| Parameter | Required | Type | Description |
|---|---|---|---|
| page | No | integer | Page number (default: 1, 50 results per page) |
| start_date | No | string | Start date filter (YYYY-MM-DD format) |
| end_date | No | string | End date filter (YYYY-MM-DD format) |
| query_tags | No | object | Key-value pairs for client-specific tracking |
Example Request — Basic
curl -X POST "https://fullhunt.io/api/v1/oem/account/audit-logs" \
-H "X-API-KEY: xxxx-xxxx-xxxx-xxxxxx" \
-H "Content-Type: application/json" \
-d '{
"page": 1,
"per_page": 10
}'
Example Request — Date Filtered
curl -X POST "https://fullhunt.io/api/v1/oem/account/audit-logs" \
-H "X-API-KEY: xxxx-xxxx-xxxx-xxxxxx" \
-H "Content-Type: application/json" \
-d '{
"start_date": "2026-01-01",
"end_date": "2026-01-31",
"page": 1,
"per_page": 25
}'
Example Response
{
"response": {
"logs": [
{
"account_id": "acc_123",
"timestamp": 1708012800,
"ip_address": "203.0.113.50",
"query_tag": {
"client_name": "ACMECorp"
},
"user_id": "user_456",
"service": "darkweb",
"name": "search",
"params": {
"type": "domain",
"query": "acme.com"
}
}
],
"pagination": {
"page": 1,
"total": 1234,
"total_pages": 25,
"has_next": true,
"has_prev": false
},
"timestamp": 1708012800
}
}
Response Fields
| Field | Type | Description |
|---|---|---|
response.logs | array | Array of audit log entries |
response.logs[].account_id | string | Enterprise account identifier |
response.logs[].timestamp | integer | Unix timestamp of the API call |
response.logs[].ip_address | string | Client IP address |
response.logs[].query_tag | object | Query tags provided with the original request |
response.logs[].user_id | string | User who made the API call |
response.logs[].service | string | OEM service that was called |
response.logs[].name | string | Specific endpoint name within the service |
response.logs[].params | object | Request parameters from the original call |
response.pagination.page | integer | Current page number |
response.pagination.total | integer | Total number of matching log entries |
response.pagination.total_pages | integer | Total number of pages |
response.pagination.has_next | boolean | Whether more pages exist after the current page |
response.pagination.has_prev | boolean | Whether pages exist before the current page |
response.timestamp | integer | Unix timestamp of this request |
Rate Limiting
- 15 requests per minute per API key
- Audit log queries do not consume credits
Use Cases
Billing Reconciliation
- Periodically check credit balance to forecast usage
- Retrieve audit logs filtered by date range for monthly billing reports
Usage Monitoring
- Review all API calls to understand usage patterns
- Use query_tags to attribute usage per customer
Security Auditing
- Review all API calls within a specific date range for compliance
Error Handling
| Status Code | Description |
|---|---|
| 200 | Success |
| 400 | Bad Request — invalid parameters (bad page/per_page, invalid date format) |
| 401 | Unauthorized — invalid API key |
| 403 | Forbidden — OEM access not enabled |
| 429 | Rate limit exceeded |
| 500 | Internal server error |
Example Error Response
{
"error": "start_date must be in YYYY-MM-DD format"
}