- Campaign Management 1.0 API

Seller Matches

Adjust Payout
Description
Adjust the payout of an individual Seller on a specific Campaign.
Endpoint:
https://integrate.com/apis/1.0/matches/adjustpayout
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"SellerId": 23456,
"CampaignId": 34567,
"Payout": 15.25
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Unable to Locate Match."]
}
Pause Seller
Description
Pause an individual Seller on a specific Campaign.
Endpoint:
https://integrate.com/apis/1.0/matches/pauseseller
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"SellerId": 23456,
"CampaignId": 34567,
"PauseDate" : '6/1/2016 3:30 PM', "PauseReason" : "We are re-evaluating our budgeting.", "RemoveAfterPause" : false }
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Unable to Locate Match."]
}
Resume Paused Seller
Description
Resume an individual Paused Seller on a specific Campaign.
Endpoint:
https://integrate.com/apis/1.0/matches/resumepausedseller
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"SellerId": 23456,
"CampaignId": 34567
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Unable to Locate Match."]
}
Cancel Scheduled Seller Pause
Description
Cancel a scheduled Paused on an individual Seller on a specific Campaign.
Endpoint:
https://integrate.com/apis/1.0/matches/cancelscheduledsellerpause
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"SellerId": 23456,
"CampaignId": 34567
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Unable to Locate Match."]
}

Buyer Campaigns

Pause Campaign
Description
Pause a specific Campaign.
Endpoint:
https://integrate.com/apis/1.0/buyercampaigns/pausecampaign
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"CampaignId": 34567,
"PauseDate" : '6/1/2016 3:30 PM', "PauseReason" : "We are re-evaluating our budgeting.", }
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Unable to Locate Campaign."]
}
Resume Paused Campaign
Description
Cancel a scheduled Paused on a specific Campaign.
Endpoint:
https://integrate.com/apis/1.0/buyercampaigns/resumepausedcampaign
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"CampaignId": 34567
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Unable to Locate Campaign."]
}
Cancel Scheduled Campaign Pause
Description
Cancel a scheduled Paused on a specific Campaign.
Endpoint:
https://integrate.com/apis/1.0/buyercampaigns/cancelscheduledcampaignpause
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"CampaignId": 34567
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Unable to Locate Campaign."]
}
Clone Campaign
Description
Clone an existing campaign.
Endpoint:
https://integrate.com/apis/1.0/buyercampaigns/clonecampaign
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"CampaignId": 34567
"CampaignName": "New Name"
}
Success Response:
{
"Data": 34568,
"Success": true,
"Errors": []
}
Error Response:
{
"Data": 0,
"Success": false,
"Errors": ["Invalid CampaignID"]
}
Note:
  • "Data" will contain your newly created Campaign Id.
  • The campaign still needs to be published.

Buyer Conversions

Conversions Report
Description
Retrieve a feed of your conversions in a daterange.
Endpoint:
https://integrate.com/apis/1.0/conversions/report
Method:
GET
Headers:
Content-Type: application/json
Input Parameters:
{
"UserId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"StartDate": "7/1/2015",
"EndDate": "7/1/2015"
}
Response:
{
"conversions": [
{
"leadid": 4938552,
"cid": 12345,
"sid": 67890,
"timestamp": "2015-07-01T14:01:00",
"cost": 23.50,
"isBillable": true,
"isReturned": false,
"isQueued": false
},
{
"leadid": 4938481,
"cid": 12345,
"sid": 67890,
"timestamp": "2015-07-01T13:52:00",
"cost": 23.50,
"isBillable": true,
"isReturned": false,
"isQueued": false
}
]
}
Note:
  • All dates are in the timezone of configured in your Buyer Account Settings.
  • Every conversion in "EndDate" will be included.

Leads

Adjust Price
Description
Adjust price of an individual Lead.
Endpoint:
https://integrate.com/apis/1.0/Lead/AdjustPrice
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"LeadId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"Price": 15.25 }
Success Response:
{
"Success": true,
"Errors": [LeadId + " Lead's price has been adjusted."]
}
Error Response:
{
"Success": false,
"Errors": ["Bad Request - not valid input."]
["Lead has not met the criteria for price adjustment."]
["Buyer has not met the criteria for price adjustment."]
["Bad Request - not valid input."]
[Exception]
}
Unrefund
Description
Unrefund of an individual Lead.
{ "ApiKey": "85B3DE46-C6F5-4192-881E-C54F6E1B938C", "CreativeId": "131209", "CampaignId": "13871" } Endpoint:
https://integrate.com/apis/1.0/Lead/Unrefund
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"LeadId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000" }
Success Response:
{
"Success": true,
"Errors": ["Lead " + LeadId + " has been unrefuneded."]
}
Error Response:
{
"Success": false,
"Errors": ["Lead has not met the criteria to unrefuned."]
["Bad Request - not valid input."]
[Exception] }
Campaign Fields
Description
Create a campaign field
Endpoint:
https://integrate.com/apis/1.0/fields/CreateNewCustomCampaignField/
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"ApiKey": "00000000-0000-0000-0000-000000000000",
"CustomAddType": "TEXT", options: "TEXT", "LIST", "NUMERIC", "DATE"
"FieldName": "MyFieldName",
"IsRequired": "false", options: "true", "false"
"IsOff": "false", options: "true", "false"
"PresetFieldId": "0",
"CampaignId": "12345",
"IsActive": "true", options: "true", "false"
"CampaignField": {
"fieldName": "MyFieldName",
"Question": "Is this a field created by API?",
"Sample": "foo",
"FormattedSample": "",
"Type": 1,
"RangeStart": 0,
"RangeEnd": 10,
"Format": ""
}
}
Success Response:
{
"Success"

}
Error Response:
{
"Success": false,
"Errors": ["A field already exists with the same name"]
["Bad Request - not valid input."]
[Exception] }


Description
Edit an existing campaign field
Endpoint:
https://integrate.com/apis/1.0/fields/EditCampaignField/
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"CustomAddType": "TEXT",
"CampaignField": {
"CampaignFieldId": 11223,
"BuyerFieldName": "my_field_name",
"Question": "What is your favorite color?",
"Sample": "yes",
"FormattedSample": "",
"RangeStart": 0,
"RangeEnd": 15,
"Format": ""
},
"FieldName": "my_field_name",
"IsRequired": false,
"IsOff": false,
"PresetFieldId": 0,
"CampaignId": 12345,
"ApiKey": "00000000-0000-0000-0000-000000000000",
"IsActive": true
}
Success Response:
{
"Success"

}
Error Response:
{
"Success": false,
"Errors": ["A field already exists with the same name"]
["Bad Request - not valid input."]
[Exception] }
Description
Retrieve Campaign Field
Endpoint:
https://integrate.com/apis/1.0/fields/getcampaignfield
Method:
GET
Input Parameters:
FieldName
CampaignId
ApiKey
Success Response:
{
"Field": {
"Range": {
"Starts": 1,
"Ends": 10
},
"ID": 223344,
"Question": "What is your favorite color?",
"FieldName": "my_campaign_field",
"Sample": "yes",
"FormattedSample": "yes",
"Type": 1
},
"BuyerFieldName": "my_campaign_field",
"IsRequired": false,
"IsOff": false,
"PresetFieldId": 0
}
Error Response:
{
"Success": false,
"Errors": ["Bad Request - not valid input."]
[Exception] }
Description
Retrieve Campaign Field
Endpoint:
https://integrate.com/apis/1.0/fields/getcampaignfield
Method:
POST
Input Parameters:
{
"CampaignId": 12345,
"ApiKey": "99999E46-C6F5-9992-899E-C54F6E999999",
"FieldId": 45561
}
Success Response:
"success"
Error Response:
{
"Success": false,
"Errors": ["Bad Request - not valid input."]
[Exception] }

Domain Lists

Domain Lists
Description
Add Domain list.
Endpoint:
https://integrate.com/apis/1.0/lists/domain
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"ApiKey": "00000000-0000-0000-0000-000000000000" ,
"Name": "Integrate Domain",
"Data": [{"Domain": "integrateTeam.com integrate.com","Company" : "Integrate"}, {"Domain": "integrateScot.com integrateScotTeam.com","Company" : "IntegrateScot"}],
"XData" : [{"Key":"Name","Value":"Integrate"},{"Key":"website","Value":"integrate.com"}],
"Source": "Integrate"
}
Success Response:
{
"Data": 24,
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Domain list is not added."]
["Api Key is not valid."]
[Xdata field: Supports Characters Space, ., @,_,# and alpha numeric]
[Exception]
}
Description
Update domains , additional data to the list, can update List name too.
Endpoint:
https://integrate.com/apis/1.0/lists/overwrite
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"Id" : 23 ,
"ApiKey": "00000000-0000-0000-0000-000000000000" ,
"Name": "Integrate Domain",
"Data": [{"Domain": "integrateTeam.com integrate.com","Company" : "Integrate"}, {"Domain": "integrateScot.com integrateScotTeam.com","Company" : "IntegrateScot"}],
"XData" : [{"Key":"Name","Value":"Integrate"},{"Key":"website","Value":"integrate.com"}],
"Source": "Integrate"
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Domain list is not updated."]
["Api Key is not valid."]
[Xdata field: Supports Characters Space, ., @,_,# and alpha numeric]
[Exception]
}
Description
Append Domains, additional data to the list, can update List name too.
Endpoint:
https://integrate.com/apis/1.0/lists/update
Method:
POST
Headers:
Content-Type: application/json
Input Parameters:
{
"Id" : 23 ,
"ApiKey": "00000000-0000-0000-0000-000000000000" ,
"Name": "Integrate Domain",
"Data": [{"Domain": "integrateTeam.com integrate.com","Company" : "Integrate"}, {"Domain": "integrateScot.com integrateScotTeam.com","Company" : "IntegrateScot"}],
"XData" : [{"Key":"Name","Value":"Integrate"},{"Key":"website","Value":"integrate.com"}],
"Source": "Integrate"
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["Domain list is not updated."]
["Api Key is not valid."]
[Xdata field: Supports Characters Space, ., @,_,# and alpha numeric]
[Exception]
}
Description
Get Domain list.
Endpoint:
https://integrate.com/apis/1.0/lists/domain
Method:
GET
Headers:
Content-Type: application/json
Input Parameters:
{
"Id" : 23 ,
"ApiKey": "00000000-0000-0000-0000-000000000000"
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["There are no Domains with this Id."]
["Api Key is not valid."]
[Exception]
}
Description
Get All Domain lists.
Endpoint:
https://integrate.com/apis/1.0/lists/domains
Method:
GET
Headers:
Content-Type: application/json
Input Parameters:
{
"ApiKey": "00000000-0000-0000-0000-000000000000"
}
Success Response:
{
"Success": true,
"Errors": []
}
Error Response:
{
"Success": false,
"Errors": ["There are no domains."]
["Api Key is not valid."]
[Exception]
}