Managing Campaigns
A MPO-Campaign is a course of action to advertise the products of your sellers.
Adding Campaigns
Campaigns are not added with the API. Instead, they are created, started and stopped by your Technical Solution engineer.
Managing Seller-Campaigns
A Seller-Campaign contains all the information relative to the advertisement of the products of a Seller in a Campaign. In particular it contains information about bid and status:
bid
Bid specified for this Seller in this Campaign
suspendedSince
Date and time since we stopped delivering adds for this Seller in this Campaign
suspensionReasons
List of reasons why the campaign is suspended (possible values are: NoMoreBudget
, ManuallyStopped
, NoBudgetDefined
, NoCpcDefined
, RemovedFromCatalog
)
Every Seller-Campaign is identified by:
sellerId
SellerId of the seller associated to this Seller-Campaign
campaignId
CampaignId of the MPO-campaign associated to this Seller-Campaign
Adding Seller-Campaigns
Seller-Campaigns get automatically created for every Campaign and every Seller in your feed.
- New Seller-Campaigns are created inactive by default (
suspendedSince
flag is set to the moment of creation)
Getting Seller-Campaigns
To see what Seller-Campaigns are available you can make following query:

/marketplace-performance-outcomes/seller-campaigns
[{
"id": "1.10001",
"suspendedSince": "2018-07-30T18:00:13.333",
"suspensionReasons": ["NoMoreBudget"],
"sellerId": "1",
"campaignId": 10001,
"bid": null
},{
"id": "2.10001",
"suspendedSince": "2018-09-03T09:00:23.8",
"suspensionReasons": ["ManuallyStopped"],
"sellerId": "2",
"campaignId": 10001,
"bid": null
},{
"id": "3.10001",
"suspendedSince": "2018-09-03T09:00:23.8",
"suspensionReasons": ["NoCpcDefined"],
"sellerId": "3",
"campaignId": 10001,
"bid": null
}]
Get specific Seller-campaign
You can also fetch the details of a single Seller-campaign using the following request:

/marketplace-performance-outcomes/seller-campaigns/{sellerCampaignId}
Below is the example of the response:
{
"id": "543210.123456",
"sellerId": "543210",
"campaignId": 123456,
"bid": 1.55,
"suspendedSince": "2018-07-30T15:15:24.813",
"suspensionReasons": [
"NoMoreBudget"
]
}
An active seller campaign meets these conditions:
- The suspendedSince field is
null
. - The bid value is greater than zero.
- The bid currency matches the bidCurrency of the related campaign.
Additionally, an active seller campaign must have an active total budget (capped or uncapped). It may also have an active daily budget to further restrict spending.
Suspension reasons:
- ManuallyStopped: The campaign has been manually paused, independent of other suspension causes.
- NoBudgetDefined: No valid budget is linked to the campaign.
- NoCpcDefined: No cost-per-click (CPC) has been set for the campaign.
- NoMoreBudget: The current budget of the campaign has been fully used.
- RemovedFromCatalog: All products in the campaign have been removed from the catalog.
- NotYetStarted: The campaign is newly created and has not yet been processed.
Get a collection of budgets for selected Seller-Campaign
The following endpoint retrieves a list of budgets for the specified seller campaign, applying any optional filters provided.
If no filters are set, return all accessible budgets except those with an endDate in the past.
When multiple filters are applied, only budgets meeting all criteria are included.

/marketplace-performance-outcomes/seller-campaigns/{sellerCampaignId}/budgets
Below is the example of the response:
[
{
"id": "6907877",
"sellerId": "10624700",
"campaignIds": [
225662
],
"budgetType": "Daily",
"amount": 12.0000,
"startDate": "2021-02-25",
"endDate": "Never",
"spend": null,
"status": "Current",
"isSuspended": false
}
]
You can apply the following query parameters to the endpoint to specify filters:
Parameter | Definition | Type | Required? |
---|---|---|---|
endAfterDate | Returns budgets ending after the specified date (yyyy-MM-DD ). Defaults to only active (not ended) budgets if omitted. | string | No |
sellerCampaignId | Filters budgets belonging to the specified seller campaign. | string | Yes |
startBeforeDate | Returns budgets starting on or before the specified date (yyyy-MM-DD ). | string | No |
status | Filters budgets by their status. Possible values: Archived, Current, Scheduled. | string | No |
type | Filters budgets by the specified budget type. | string | No |
withBalance | Returns only budgets with a positive balance. | boolean | No |
withSpend | Returns budgets with a positive spend amount. | boolean | No |
Starting Seller-Campaigns
In order to start delivering ads for a Seller in a Campaign, the Seller-Campaign needs to :
- be part of a running Campaign
- have a bid (see "Setting the Bid for a given Seller-Campaign" section)
- have an active budget (see "Managing Budgets" section)
When a Seller-Campaign becomes inactive, the suspendedSince
flag is null.
Stopping Seller-Campaigns
In order to stop delivering ads for a Seller in a Campaign, you can do one of the following actions :
- set the bid of the Seller-Campaign to null (see "Setting the Bid for a given Seller-Campaign" section)
- suspend the current budget (see "Suspend a Budget" section)
- remove products of this Seller from the feed (if you have several MPO-Campaigns, this will also stop the Seller in the other MPO-Campaigns)
When a Seller-Campaign becomes inactive, the suspendedSince
flag is set to the current date.
Setting the Bids of Seller-Campaigns
In order to have a Sellers active in the campaign, you have to specify the bids that will be used for these Sellers in the given Campaign.

/marketplace-performance-outcomes/seller-campaigns
[{
"id": "1.10001",
"bid": 0.3
},{
"id": "2.10001",
"bid": 0.6
},{
"id": "3.10001",
"bid": 0.5
}]
Note that the ID is defined by “seller ID” dot “campaign ID” (e.g 1.10001 for seller ID 1 and campaign 10001).
Updated 1 day ago