Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Campaign Webhook


Table of Contents


Scope

The Publisher API Webhook allows the V2 API to be used without having to use a OAuth token so you can use Webhooks to send data into Convertr. This is done by providing a unique campaign level token which is active for the duration of the campaign. This Campaign web-hook allows the user to post to the campaign with an optional publisherId without having to renew their access tokencampaign using a campaign API key.

Setup Process

1. Go to ‘Setup’ under the ‘Admin’ tab on the Convertr campaign overview dashboard



2.Once you have been redirected to are on the setup page, scroll down to the ‘Campaign API’ section. This is where you will see the ‘Campaign API Key’. This will present a code that will function as the access token for the duration of the campaign you have selected.


Using the Campaign API Key

Form Fields Endpoint

This API call will supply an array of forms , which are available to `POST` leads to (see section 3.5) on a given campaign. The response will allow you to see which form fields are available to populate per form (each campaign can have multiple forms)along with the form fields on the campaign.

Example Form Fields Request

Code Block
languagejs
titleGET request - Campaign Form Fields
https://[enterprise].cvtr.io/webhook/campaign/[CampaignID]/form/fields?apikey=[campaignAPIkey]

Example Form Fields Response

Code Block
titleGET response - Campaign Form Fields
[
    {
        "formName": "Form Fields Endpoint",
        "formId": 75,
        "fields": [
            "form[firstName]",
            "form[lastName]",
            "form[email]",
            "form[telephone]"
        ]
    }
]


Campaign Links Endpoint

This API method call will return an array of available links for the given campaign. Links are required as it provides The Link ID are optional but it does provided insight into which channel a lead entered the Convertr Platform or was captured.

Example Campaign Links Request

Code Block
languagejs
titleGET request - Campaign Links
https://[enterprise].cvtr.io/webhook/campaign/[CampaignID]/links?apikey=[campaignAPIkey]

Example Campaign Links Response

Code Block
titleGET response - Campaign Links
[
    {
        "id": 135,
        "name": "Campaign Links Endpoint",
        "channel": "Email",
        "destination": "https://Campaign-Links-Endpoint.cvtr.io/lp/Campaign-Links-Endpoint"
    }
]


Campaign Lead Post Endpoint

The API campaign key method call will allow you to post leads to the given campaign.

Example Lead Post Request

Code Block
languagejs
titlePOST request - Lead Data
https://[enterprise].cvtr.io/webhook/campaign/[CampaignID]/links?apikey=[campaignAPIkey]&campaignLinkId=[linkid]

Example Lead Post Request with Publisher ID

Additionally if you want would like to pass the publisher id with the lead you can post as below (the publisher ID can be obtained from the platform by going to the publisher section https://[enterprise].cvtr.io/publisher/list).

Code Block
languagejs
titlePOST request - Lead Data
https://[enterprise].cvtr.io/webhook/campaign/[CampaignID]/links?apikey=[campaignAPIkey]&campaignLinkId=[linkid]&publisherId=[publisherId]

Example Lead Post Payload (unencoded)

Code Block
languagejs
titleGET request - Campaign Links
form[firstName]=Joe&form[lastName]=Bloggs&form[email]=tech@convertrmedia.net&form[telephone]=02036177659

Example Lead Post Response

Code Block
titleGET response - Form Fields
{
    "code": 201,
    "message": "Lead was created successfully",
    "data": 55907
}

Error Responses

Error codeError BodyDescription
500{"code": 500, "message": ""}Internal server error.
404The server returned a "404 Not Found"Campaign ID Incorrect or incorrect URL
404{"code": 404,"message": "Publisher not found"}Publisher ID incorrect
400{"code": 400,"message": "Validation failed","data": [{"message": "This form should not contain extra fields."},{"fieldName": "form[lastName]","message": ""}]}The form field(s) submitted are incorrect and do not match the correct form mapping
400{"code": 400,"message": "Validation failed","data": [{"message": "This form should not contain extra fields."}]}Some form field(s) submitted in your request do not exist on the form
401{"code": 401,"message": "Access denied."}Access denied. Incorrect API key