Digital Platform API - Object Limit service

Xandr limits the number of line items, campaigns, creatives, publishers, sites, placements, packages, deals, mediated networks, and mediated bids that you can have on the platform. In addition, Xandr limits the number of domains that can be used in a single domain list, the number of certain targets that can be used in a single profile, and the number of content categories that can be assigned to a single placement. For all object types except creatives, both active and inactive objects are counted against the limit. For creatives, only non-expired objects are counted against the limit.

The Object Limit Service allows you to view these limits and proactively monitor your current usage.

REST API

HTTP Method Endpoint Description
GET https://api.appnexus.com/object-limit View your limits and current usage for all object types.
GET https://api.appnexus.com/object-limit?object_type=OBJECT_TYPE View your limit and current usage for a specific object type.

Note: The following object types are available:
- campaign
- profile
- domain_list
- creative
- publisher
- site
- placement
- package
- deal
- mediated_network
- mediated_bid.
Note that to retrieve your limit for line items, you must use campaign_group.

JSON fields

Field Type Description
count_active int The current number of active objects. For creatives, this count does not include expired objects.
count_inactive int The current number of inactive objects, not including deleted objects. For creatives, this count does not include expired objects.
count_total int The current total number of active and inactive objects. For creatives, this count does not include expired objects.
limit int The maximum number of objects that the member is allowed. For all object types except "creative", both active and inactive objects are counted agains the limit. For creatives, only non-expired objects are counted against the limit.
mapping_limits object This field is populated only for the "profile", "domain_list", and "placement" object types. It lists the limits for objects within each profile and domain list, for example, the maximum number of segment targets you can use in a single profile or the maximum number of domains you can use in a single domain list. For placements, it lists the maximum number of content categories that can be applied to a placement See Mapping Limits below for more details.
object_type enum The type of object. Possible values:
- "line_item"
- "campaign"
- "profile"
- "domain_list"
- "creative"
- "publisher"
- "site"
- "placement"
- "package"
- "deal"
- "mediated_network"
- "mediated bid".

Note:
For "profile" and "domain_list", the limit, count_active, count_inactive, count_total fields will show a value of null, as Xandr does not limit the number of profiles and domain lists that you can have. Xandr does limit the number of objects within each profile or domain list, however. These limits will be shown in the mapping_limits field.

Mapping limits

This part of the JSON response is populated only for the "profile", "domain_list", and "placement" object types.

For profiles

Field Type Description
content_category_targets int The maximum number of custom content categories that you can target in a single profile.
inventory_source_targets int Deprecated.
placement_targets int The maximum number of placements that you can target in a single profile.
platform_content_category_targets int The maximum number of platform-defined content categories that you can target in a single profile.
postal_code_targets int The maximum number of postal codes that you can target in a single profile.
publisher_targets int The maximum number of publishers that you can target in a single profile.
segment_targets int The maximum number of segments that you can target in a single profile.
segment_group_targets int The maximum number of segment groups that you can target in a single profile.
site_targets int The maximum number of sites that you can target in a single profile.

For domain lists

Field Type Description
domains int The maximum number of domains that you can include or exclude in a single domain list.

For placements

Field Type Description
content_categories int The maximum number of content categories that you can apply to a single placement.

Examples

View your limits and current usage for all object types

$ curl -b cookies -c cookies 'https://api.appnexus.com/object-limit'
{
    "response": {
        "status": "OK",
        "count": 21,
        "start_element": 0,
        "num_elements": 100,
        "object-limits": [
            {
                "object_type": "site",
                "limit": 10000,
                "mappings": [
                ],
                "count_active": 8,
                "count_inactive": 0,
                "count_total": 8
            },
            {
                "object_type": "publisher",
                "limit": 3000,
                "mappings": [
                ],
                "count_active": 8,
                "count_inactive": 0,
                "count_total": 8
            },
            {
                "object_type": "profile",
                "limit": null,
                "mappings": {
                    "site_targets": 100,
                    "publisher_targets": 300,
                    "inventory_source_targets": 500,
                    "content_category_targets": 300,
                    "placement_targets": 250,
                    "segment_targets": 400
                },
                "count_active": null,
                "count_inactive": null,
                "count_total": null
            },
            {
                "object_type": "placement",
                "limit": 20000,
                "mappings": [
                ],
                "count_active": 21,
                "count_inactive": 0,
                "count_total": 21
            },
            {
                "object_type": "line_item",
                "limit": 3000,
                "mappings": [
                ],
                "count_active": 4,
                "count_inactive": 1,
                "count_total": 5
            },
            {
                "object_type": "domain_list",
                "limit": null,
                "mappings": {
                    "domain": 30000
                },
                "count_active": null,
                "count_inactive": null,
                "count_total": null
            },
            {
                "object_type": "creative",
                "limit": 10000,
                "mappings": [
                ],
                "count_active": 32,
                "count_inactive": 0,
                "count_total": 32
            },
            {
                "object_type": "campaign",
                "limit": 10000,
                "mappings": [
                ],
                "count_active": 6,
                "count_inactive": 6,
                "count_total": 12
            }
        ]
    }
}

View your limits and current usage for creatives

$ curl -b cookies -c cookies 'https://api.appnexus.com/object-limit?object_type=creative'
{
    "response": {
        "status": "OK",
        "count": 2,
        "start_element": 0,
        "num_elements": 100,
        "object-limits": [
            {
                "object_type": "creative",
                "limit": 10000,
                "mappings": [
                ],
                "count_active": 32,
                "count_inactive": 0,
                "count_total": 32
            }
        ]
    }
}

Default limits

For a list of default object limits and frequently asked questions, see API Usage Constraints.

Deleting objects

When you approach or reach your limit for line items, campaigns, publishers, sites, or placements, you can use reports such as Network Advertiser Analytics and Network Publisher Analytics to identify objects that have, for example, not been modified or used in the last 30 days, and then delete those objects manually. For line items and campaigns, you can also use a query string filter to find objects based on when they first or last had impressions. See Line Item Service and Campaign Service for more information.

When you approach or reach your limit for creatives, you should delete non-expired creatives. Non-expired creatives have the is_expired field set to false. Note that removing expired creatives will not impact your creative count.