Offerwall
HTML (iframe version)
API
Accessing the API API Parameters API Response
Postbacks
Reward Apps
Addons
Content Locker Link Locker

API Response

Understanding the structure and format of API responses.

Response Structure

All API responses follow a consistent JSON structure:

        
{
    "success": boolean,
    "data": object | array | null,
    "message": string,
    "meta": {
    "timestamp": integer,
    "request_id": string
    }
}
        

Success Response Example

        
{
    "success": true,
    "data": {
    "offers": [
        {
        "offer_id": 12345,
        "name": "Complete Survey",
        "description": "Answer questions and earn rewards",
        "payout": 0.50,
        "payout_local": 0.46,
        "currency": "EUR",
        "category": "survey",
        "link": "https://letest.scriptstore.store/click?...",
        "image_url": "https://letest.scriptstore.store/offers/12345.jpg",
        "countries": ["US", "GB", "CA"],
        "platforms": ["web", "mobile"],
        "difficulty": "easy",
        "time_estimate": "5-10 minutes"
        }
    ],
    "total": 45
    },
    "message": "Offers retrieved successfully",
    "meta": {
    "timestamp": 1705789234,
    "request_id": "req_abc123def456"
    }
}
        

Offer Object Fields

Field Type Description
offer_id integer Unique offer identifier
name string Offer title
description string Detailed offer description
payout float Payout amount in USD
payout_local float Payout in your app's currency
currency string Your app's currency code
category string Offer type: survey, app, game, video, quiz
link string Tracking URL to redirect users
image_url string Offer thumbnail image URL
countries array Available country codes
platforms array Supported platforms
difficulty string easy, medium, hard
time_estimate string Estimated completion time

Error Response Example

        
{
    "success": false,
    "error": {
    "code": "INVALID_API_KEY",
    "message": "The provided API key is invalid or has been revoked",
    "details": {
        "apiKey": "The API key provided is not valid"
    }
    },
    "meta": {
        "timestamp": 1705789234,
        "request_id": "req_abc123def456"
    }
}

        

HTTP Status Codes

Code Status Description
200 OK Request successful
201 Created Resource created successfully
400 Bad Request Invalid or missing parameters
401 Unauthorized Authentication failed
403 Forbidden Insufficient permissions
404 Not Found Resource not found
429 Too Many Requests Rate limit exceeded
500 Server Error Internal server error

Pagination

When applicable, paginated responses include pagination metadata:

        
{
    "success": true,
    "data": [ ... ],
    "meta": {
        "timestamp": 1705789234,
        "request_id": "req_abc123",
        "pagination": {
            "total": 150,
            "count": 20,
            "per_page": 20,
            "current_page": 1,
            "total_pages": 8,
            "links": {
                "next": "https://letest.scriptstore.store/api/v1/offers?page=2"
            }
        }
    }
}
    
        

Response Headers

Important information is also provided in response headers:

Header Description
X-RateLimit-Limit Total requests allowed per minute
X-RateLimit-Remaining Requests remaining in current window
X-RateLimit-Reset Unix timestamp when the limit resets
X-Request-ID Unique request identifier for debugging