Store a version of your workspace's own template as a draft, its checks and tests passing: its last version plus one, or the same draft revised; when your plan allows private templates
POST
/v1/buyer/templates
const url = 'https://example.com/v1/buyer/templates';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"source":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/v1/buyer/templates \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "source": "example" }'Who: a workspace’s buyer, or its key. API keys with the buyer:write scope.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”Idempotency-Key
string
Made once per action and sent again on every retry of it, so the service acts once: the request_id of the create or money-moving call; a new one when left out
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
source
required
string
Example generated
{ "source": "example"}Responses
Section titled “Responses”Created
Media typeapplication/json
object
authored_by
required
category
required
string | null
created_at
required
string format: date-time
decided_at
required
string | null format: date-time
decided_by
required
deprecated_at
required
string | null format: date-time
docs
required
string
id
required
string
kind
required
string | null
name
required
string
personal_data_acknowledged
required
boolean
retire_after
required
string | null format: date-time
retired_at
required
string | null format: date-time
review_note
required
string
sha256
required
string
source
string
spec
string
status
required
string | null
submitted_at
required
string | null format: date-time
submitted_by
required
summary
required
object
auth
required
string | null
consent
required
string | null
cost_models
required
Array<string | null>
costs
required
boolean
events
required
Array<object>
object
kind
required
string | null
name
required
string
fields
required
Array<object>
object
help
required
string
label
required
string
name
required
string
pattern
required
string
required
required
boolean
sealed
required
boolean
type
required
string | null
values
required
Array<string>
final_url_direct
required
boolean
hosts
required
Array<string>
max_age_seconds
required
integer format: int64
needs
required
Array<string | null>
network
required
Any of:
object
click_id_param
required
string
default_kind
required
string | null
keep_named
required
boolean
method
required
string
offer_params
required
Array<object>
object
name
required
string
value
required
string
params
required
Array<object>
object
field
required
string | null
location
required
string | null
macro
required
string
name
required
string
signature
required
string | null
statuses
required
Array<object>
object
name
required
string
status
required
string | null
txid_from
required
Array<string>
without_click
required
Array<string | null>
null
objects
required
overridable
required
Array<string>
personal_data
required
boolean
placements
required
boolean
probe
required
boolean
send_on
required
Array<string | null>
test_conversion
required
boolean
test_note
required
string
token_cost
required
tokens
required
Array<object>
object
auto
required
boolean
field
required
string | null
label
required
string
macro
required
string
param
required
string
slot
required
integer format: int32
user_identifiers
required
Array<string>
values
required
Any of:
object
levels
required
Array<object>
object
bounds
required
Any of:
object
increment
required
max
required
null
by_country
required
boolean
currency
required
string
inherits
required
string | null
key_tokens
required
Array<string>
kind
required
string | null
level
required
string | null
reset
required
boolean
sealed_fields
required
Array<string>
spend
required
boolean
units
required
Array<string | null>
settle_seconds
required
integer format: int64
null
updated_at
required
string format: date-time
version
required
integer format: int32
workspace_id
required
integer format: int64
Example
{ "authored_by": { "kind": "user" }, "category": "push", "decided_by": { "kind": "user" }, "kind": "traffic_source", "status": "draft", "submitted_by": { "kind": "user" }, "summary": { "auth": "none", "consent": "none", "cost_models": [ "from_token" ], "events": [ { "kind": "lead" } ], "fields": [ { "type": "string" } ], "needs": [ "ip" ], "network": { "default_kind": "lead", "params": [ { "field": "click_id", "location": "query" } ], "signature": "none", "statuses": [ { "status": "approved" } ], "without_click": [ "click_id" ] }, "objects": { "levels": [ { "level": "campaign" } ] }, "send_on": [ "approved" ], "token_cost": { "unit": "visit" }, "tokens": [ { "field": "placement" } ], "values": { "levels": [ { "inherits": "campaign", "kind": "bid", "level": "campaign", "units": [ "cpc" ] } ] } }}default
Section titled “default”An error, as go-commons apperr maps it
Media typeapplication/json
object
error
required
object
code
required
string
fields
object
key
additional properties
string
message
required
string
Example generated
{ "error": { "code": "example", "fields": { "additionalProperty": "example" }, "message": "example" }}