Assignment
Binds a creative to a line with rotation rules. The wire-level execution unit is the Line; the seller repo's placement-level binding is a seller-internal mapping. ID minting: ``assignment_id`` is seller-issued (created via the seller's API on buyer request).
Properties
| Name | Type | Description |
|---|---|---|
| assignment_id | string | Seller-issued assignment identifier. |
| creative_id | string | |
| effective_end_date | object | |
| effective_start_date | object | |
| ext | object | |
| line_id | string | Seller-issued line the creative runs on. |
| rotation_mode | object | |
| sov | object | Share of voice (0-1) for weighted rotation. |
| status | object | Free-form assignment status; the typed vocabulary lands with the EP-1.4 state-machine bead. |
JSON Schema
{
"$defs": {
"RotationMode": {
"description": "Creative rotation mode within an assignment.",
"enum": [
"even",
"weighted"
],
"title": "RotationMode",
"type": "string"
}
},
"description": "Binds a creative to a line with rotation rules.\n\nThe wire-level execution unit is the Line; the seller repo's\nplacement-level binding is a seller-internal mapping.\n\nID minting: ``assignment_id`` is seller-issued (created via the\nseller's API on buyer request).",
"properties": {
"assignment_id": {
"description": "Seller-issued assignment identifier.",
"title": "Assignment Id",
"type": "string"
},
"creative_id": {
"title": "Creative Id",
"type": "string"
},
"effective_end_date": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Effective End Date"
},
"effective_start_date": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Effective Start Date"
},
"ext": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"title": "Ext"
},
"line_id": {
"description": "Seller-issued line the creative runs on.",
"title": "Line Id",
"type": "string"
},
"rotation_mode": {
"$ref": "#/$defs/RotationMode",
"default": "even"
},
"sov": {
"anyOf": [
{
"maximum": 1,
"minimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Share of voice (0-1) for weighted rotation.",
"title": "Sov"
},
"status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Free-form assignment status; the typed vocabulary lands with the EP-1.4 state-machine bead.",
"title": "Status"
}
},
"required": [
"assignment_id",
"creative_id",
"line_id"
],
"title": "Assignment",
"type": "object"
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/iab-tech-lab-agentic-primitive-assignment"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.