Skip to main content

Budgets

M
Written by Megan Pratt
Updated over a month ago

CRUD Operations for Budgets

Endpoints

Method

Endpoint

Description

POST

/v3/budgets

Create a new budget

GET

/v3/budgets/[id]

Get details for a budget

PUT

/v3/budgets/[id]

Update a budget

Get Budget

Method: GET
Endpoint: /v3/budgets/[id]

Example

Response

{ "data": { "ad_server_type": "nativo", "amount": 1000.0, "allowed_ad_types": ["native_article"], "bid_type": "fixed", "campaign_id": 2001, "delivery_type": "impressions", "flight_date_end": "2021-02-01T00:00:00", "flight_date_start": "2021-01-01T00:00:00", "id": 3001, "is_enabled": true, "marketplace": "nativo_premium", "name": "Budget X", "placements": {}, "rate": 3.5, "rate_type": "viewable_cpm", "serving_status": "in_flight", "spend_schedule": "lifetime", "targeting": { "brand_safety": [ { "id": 1, "include_type": "exclude", "name": "Adult Content" }, { "id": 5, "include_type": "exclude", "name": "Drugs" }, { "id": 6, "include_type": "exclude", "name": "Fake News" }, { "id": 7, "include_type": "exclude", "name": "Hate Speech" }, { "id": 9, "include_type": "exclude", "name": "Obscenity" }, { "id": 10, "include_type": "exclude", "name": "Terrorism" }, { "id": 11, "include_type": "exclude", "name": "Tobacco" } ] }, "tracking_tags": [ { "devices": [ "desktop", "mobile", "tablet" ], "tags": "<img>", "type": "primary_impression" } ] } }

Create Budget

Method: POST
Endpoint: /v3/budgets/

Parameters

Parameter

Type

Description

name (required)

integer

Name of the budget.

campaign_id (required)

integer

ID of campaign the budget will belong to.

flight_date_start (required)

datetime string

Date the budget will begin spending.

flight_date_end (required)

datetime string

Date the budget will conclude spending.

marketplace (required)

string

Marketplace the budget will be flighted into. Options include nativo_premium, cannabis, nativo_open.

Not all marketplaces are available to all accounts.

rate_type (required)

string

Rate type of the budget. Options include
​cpm, viewable_cpm, cpc, cpv, cpcv, video_cpm, and viewable_cpm_70.

spend_schedule

string

Schedule at which the budget amount will be applied. Lifetime aims to spend the budget amount once during the duration of the budget while daily aims to spend the entire budget amount once per day through the duration of the budget. Options include lifetime, daily

ad_type (required)

string

native_article or native_display.
​ad_type is required on POST to determine the appropriate default rate settings. However, since budget may support multiple ad types, the response payload will include the full list of ad types the budget supports in the allowed_ad_types field.

allowed_ad_types (read-only)

string[]

The ad-types allowed by the budget.

amount

float

The total goal of the budget. This can be a number of impressions or a dollar amount. If delivery_type = 'impressions' the value will be interpreted as impressions. If delivery_type = 'budget' the value will be interpreted as a dollar amount. Default is 0.

bid_type

string

Determines how rate bidding will be applied. Field access is limited by rate card configuration. Options include fixed, max

delivery_type

string

Determines how the value set in amount will be interpreted. Options include impressions and budget. For example, if amount = 1000, setting delivery_type = 'impressions' will serve 1,000 impression. Alternatively, setting delivery_type = 'budget' will serve $1,000 worth of impressions.

targeting

object

See budget targeting documentation here

tracking_tags

array

See budget tracking documentation here

is_enabled

boolean

The current enabled status of the budget. Set to false to disable the budget.

serving_status (read-only)

string

Indicates the ad serving state of the budget. Options include: not_ready, paused, not_serving, pre_flight, in_flight, completed, and deleted.

rate

float

Rate at which the rate type of the budget will be charged.

ad_server_type

string

For owned & operated budgets. Options include: nativo and thirdparty.

Only selectable for organizations that uses "Nativo and 3rd Party" ad servers.

third_party_tag (read-only)

string

This tag contains Nativo JS and budget information for budgets serving via 3rd party ad server within this budget. To use this tag, input into your 3rd party ad server.

rate_option_id (deprecated)

integer

The rate_option_id field has been deprecated.

On POST, the rate_option_id will be inferred from the rate_type and ad_type set in the payload.

marketplace_id (deprecated)

integer

marketplace_id has been deprecated.

The marketplace field should be used instead.

Example

Payload

{ "amount": 1000, "campaign_id": 2001, "delivery_type": "impressions", "flight_date_start": "2021-01-01T00:00:00", "flight_date_end": "2021-02-01T00:00:00", "marketplace": "nativo_premium", "name": "Budget X", "rate_type": "viewable_cpm", "rate": 3.5, "ad_type": "native_display" }

Response
​
Response

{ "data": { "amount": 1000, "allowed_ad_types": [ "native_article", "native_display" ], "bid_type": "fixed", "campaign_id": 2001, "delivery_type": "impressions", "flight_date_end": "2021-02-01T00:00:00", "flight_date_start": "2021-01-01T00:00:00", "id": 3001, "is_enabled": true, "marketplace": "nativo_premium", "marketplace_id": 1, "name": "Budget X", "placements": {}, "rate": 3.5, "rate_option_id": 3, "rate_type": "viewable_cpm", "serving_status": "not_ready", "spend_schedule": "lifetime", "targeting": { "brand_safety": [ { "id": 1, "include_type": "exclude", "name": "Adult Content" }, { "id": 5, "include_type": "exclude", "name": "Drugs" }, { "id": 6, "include_type": "exclude", "name": "Fake News" }, { "id": 7, "include_type": "exclude", "name": "Hate Speech" }, {

PUT Budget

Method: PUT
Endpoint: /v3/budgets/[id]

Example

Increase the impression amount to 50,000

PayloadResponse

{ "amount": 50000 }

Did this answer your question?