Survey Panel Integration

    Complete guide for adding placements, setting up postbacks, and tracking survey completions

    Easy Setup
    Secure Tracking
    Real-time Events

    This documentation provides step-by-step guidance on how to:

    • 1
      Add and manage placements

      Set up traffic sources and publishers

    • 2
      Set up and verify postbacks

      Track completions and other events

    Your panel will be integrated with external traffic sources or affiliates who need placements and accurate tracking.

    📍 Placements

    What is a Placement?

    A placement represents a traffic source or publisher sending users to your survey panel. Each placement has a unique ID and can be configured individually for targeting, payouts, etc.

    🔧 Create a New Placement

    POST /api/placements/create

    Create a new placement

    Request Example:

    Description

    Add Placement with all the required paramters.

    🔁 Tracking URL Structure

    Use the tracking URL to send traffic to your panel.

    Example:

    https://enlignesurvey.com/iframe?placement_id=plc_123456&user_id={respondent_click_id}

    Parameters

    Parameter Description
    placement_id Placement ID
    user_id Unique respondent ID for tracking (passed back on postback)

    🔁 Postbacks

    What is a Postback?

    A postback is a server-to-server callback that notifies the partner of user actions like survey completions.

    ✅ Available Postback Events

    survey_completed (1)

    User completed a survey

    Success
    screened_out (0)

    User was disqualified

    Error

    🔧 Add or Edit Postback URL

    POST /api/placements/update-postback

    Set or update the postback URL for a placement.

    Request Example:

    Description

    🛰️ Postback Firing Format

    URL Format:

    https://example.com/postback?camp_id=xyz123&p_id=3634c34fdfd4535533&sid=11&respid=23&status=1&country=IN&ip=121.1.1.0&txn=343jdfu4343hvdh3434nj34&supp_payout=1.5&resp_payout=0.5&offer_name=survey

    Variables Available:

    Variable Description
    {campaignId} Unique Campaign ID
    {placementId} Placement ID of supplier specific placement
    {supplierId} Unique supplier ID
    {respondentId} Respondent unique click ID
    {surveyStatus} survey_completed (1), screened_out (0)
    {countryIso} Country Name
    {ipAddress} IP Address of respondent
    {transactionId} Unique transaction ID of each click
    {supplierCommission} Payout to Supplier
    {respondentCommission} Payout to Respondent
    {affSubId} Affiliate Sub ID
    {offerName} Name of the campaign

    📤 Example Postback Sent

    Example URL Called:

    https://partner.com/postback?subid=abc789&event=survey_completed&payout=0.70

    HTTP Method: GET or POST (configurable)

    🧪 Testing

    Test Your Placement

    You can test postbacks by using our internal testing tool or test URL:

    Test URL Format:

    https://yourpanel.com/test-postback?plc=plc_123456&subid=test123&event=survey_completed&payout=0.50

    Expected Result:

    • Partner should receive the postback with the values sent
    • Your system will log the response for debugging

    🧪 API Feed

    Access API Feed

    You can access complete inventory by using our internal feed API through access token proivded to you in the dashboard:

    API Feed Format:

    https://enlignesurvey.com/get/api_feed/{access_token}

    Expected Result:

    {
      "message": [
        {
          "survey_id": "LMS-CAMP-3",
          "name": "Enligne Survey",
          "payout": "0.05",
          "description": "complete a survey ",
          "entry_url": "https://enlignesurvey.com/start_survey?survey_id=LMS-CAMP-3&user_id={userId}&placement_id={placement_id}&company=campaign&country={country}&ip={ip}"
        },
        {
          "survey_id": "LMS-CAMP-5",
          "name": "Enligne Survey ",
          "payout": "1.3",
          "description": "Get $50",
          "entry_url": "https://enlignesurvey.com/start_survey?survey_id=LMS-CAMP-5&user_id={userId}&placement_id={placement_id}&company=campaign&country={country}&ip={ip}"
        },
        {
          "survey_id": "LMS-CAMP-9",
          "name": "Enligne Survey",
          "payout": "4.55",
          "description": "Payable action: New FTD - $20 accumulative baseline + wager",
          "entry_url": "https://enlignesurvey.com/start_survey?survey_id=LMS-CAMP-9&user_id={userId}&placement_id={placement_id}&company=campaign&country={country}&ip={ip}"
        }
      ],
      "status": "Success"
    }

    🛡️ Security & Best Practices

    Whitelist IPs

    Optionally, allow postbacks only from our server IPs.

    Use Tokens

    Add a security token or hash in postback to verify authenticity.

    Logging

    Enable postback logs in your dashboard for debugging.

    Rate Limits

    Ensure your server can handle multiple postbacks per second if volume is high.