API documentation Landing pages
Get, create, edit or delete landing pages for an existing offer.
GET https://demo.trafficmanager.com/api/v1/offers/{id}/landing-pages
POST https://demo.trafficmanager.com/api/v1/offers/{id}/landing-pages
PUT https://demo.trafficmanager.com/api/v1/offers/{id}/landing-pages/{lpId}
DELETE https://demo.trafficmanager.com/api/v1/offers/{id}/landing-pages/{lpId}
The endpoints are available only for advertiser and admin accounts. Advertisers can manage landing pages only for offers they can edit.
Create requires name and url. Edit is partial, so you can send only the fields you want to change. Delete removes the landing page from the offer, like the offer edit page does; the last active landing page of an offer cannot be deleted, because the delivery picks the traffic destination among the offer's active landing pages (inactive ones can always be deleted). Landing pages imported by the offer auto-sync are controlled by the source platform and cannot be deleted while the auto-sync is active (pause the auto-sync first).
You can send the request as JSON or as form-data. For form-data, use countries[] multiple times or a comma-separated countries value.
Authentication:
The request must be authenticated with the following HTTP headers:x-api-key: Your API key, found on the Security pagex-user-id: Your User ID, found on the Security page
Body Parameters
- Required:
name: landing page name, maximum 80 charactersurl: destination URL, must start withhttp://orhttps://and must contain{clickid}- Optional:
weight: traffic weight, defaults to 100, integer between 0 and 65535description: landing page description, maximum 1000 characterspreviewUrl: preview URL, maximum 255 characterscountries: array of valid country codes assigned to the landing page; unknown codes are rejectedscreenshot: public image URL; the image is downloaded and stored as the LP screenshot- If the offer has countries,
countriesis required and every landing page country must be inside the offer countries; worldwide offers can use any valid countries - The same offer cannot have two active landing pages with the same
url
GET response
{
"status": 200,
"landingPages": [
{
"id": 456,
"offerId": 123,
"status": 1,
"name": "Main LP",
"weight": 100,
"description": "Primary landing page",
"url": "https://example.com/?clickid={clickid}",
"previewUrl": "https://example.com/preview",
"countries": ["RO", "IT"],
"screenshot": "65f1f3f0dabc12.jpg",
"image": "https://static.trafficmanager.com/offers/screenshots/65f1f3f0dabc12.jpg"
}
]
}
Request example
{
"name": "Main LP",
"weight": 100,
"description": "Primary landing page",
"url": "https://example.com/?clickid={clickid}",
"previewUrl": "https://example.com/preview",
"countries": ["RO", "IT"],
"screenshot": "https://example.com/lp-image.jpg"
}
Create response
{
"status": 201,
"message": "Operation successful",
"landingPage": {
"id": 456,
"offerId": 123,
"status": 1,
"name": "Main LP",
"weight": 100,
"description": "Primary landing page",
"url": "https://example.com/?clickid={clickid}",
"previewUrl": "https://example.com/preview",
"countries": ["RO", "IT"],
"screenshot": "65f1f3f0dabc12.jpg",
"image": "https://static.trafficmanager.com/offers/screenshots/65f1f3f0dabc12.jpg"
}
}
Edit response
{
"status": 200,
"message": "Operation successful",
"landingPage": {
"id": 456,
"offerId": 123,
"status": 1,
"name": "Main LP Updated",
"weight": 150,
"description": "Updated landing page",
"url": "https://example.com/?clickid={clickid}",
"previewUrl": "https://example.com/preview-updated",
"countries": ["RO"],
"screenshot": "65f1f3f0dabc12.jpg",
"image": "https://static.trafficmanager.com/offers/screenshots/65f1f3f0dabc12.jpg"
}
}
Error Response
{
"status": 400,
"message": "The url parameter must contain {clickid}"
}
English
العربية
Dansk
Deutsch
Español
Suomi
Italiano
한국어
Português
Română
Українська
Svenska
中文