diff --git a/api-specifications/marketingsolutions_2022-07.json b/api-specifications/marketingsolutions_2022-07.json deleted file mode 100644 index 07c2408..0000000 --- a/api-specifications/marketingsolutions_2022-07.json +++ /dev/null @@ -1,5090 +0,0 @@ -{ - "openapi": "3.0.1", - "info": { - "title": "Criteo API", - "description": "Criteo API - MarketingSolutions", - "version": "2022-07" - }, - "servers": [ - { - "url": "https://api.criteo.com" - } - ], - "paths": { - "/2022-07/audiences": { - "get": { - "tags": [ - "Audience" - ], - "description": "Get a list of all the audiences for the user or for the given advertiser_id", - "operationId": "getAudiences", - "parameters": [ - { - "name": "advertiser-id", - "in": "query", - "description": "The advertiser id to get all the audiences for.\nMandatory for internal users. For external users,\n if you don't provide it, we will take into account the advertisers from your portfolio", - "style": "form", - "schema": { - "type": "string", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "The list was retrieved.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetAudiencesResponse" - }, - "example": { - "data": [ - { - "type": "AudienceContactlist", - "id": "1", - "attributes": { - "advertiserId": "18", - "name": "Audience name", - "description": "Audience", - "created": "2018-12-10T10:00:50.0000000+00:00", - "updated": "2018-12-10T10:17:15.0000000+00:00", - "nbLines": 100, - "nbLinesEmail": 10, - "nbMatchesEmail": 10 - } - } - ], - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "post": { - "tags": [ - "Audience" - ], - "description": "Create an Audience for an Advertiser", - "operationId": "createAudience", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/NewAudienceRequest" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "200": { - "description": "The audience was created", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/NewAudienceResponse" - }, - "example": { - "data": { - "id": "1", - "type": "Audience" - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - } - }, - "/2022-07/audiences/{audience-id}": { - "delete": { - "tags": [ - "Audience" - ], - "description": "Delete an audience by id", - "operationId": "removeAudience", - "responses": { - "200": { - "description": "The audience was deleted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DeleteAudienceResponse" - }, - "example": { - "data": { - "id": "1", - "type": "Audience" - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "patch": { - "tags": [ - "Audience" - ], - "description": "Update user audience specified by the audience id", - "operationId": "modifyAudience", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReplaceAudienceRequest" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "200": { - "description": "The audience was updated", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReplaceAudienceResponse" - }, - "example": { - "data": { - "id": "1", - "type": "AudienceContactlist", - "attributes": { - "name": "example audience", - "description": "example audience description" - } - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "parameters": [ - { - "name": "audience-id", - "in": "path", - "description": "The id of the audience to amend", - "required": true, - "style": "simple", - "schema": { - "type": "string", - "format": "int32" - } - } - ] - }, - "/2022-07/audiences/{audience-id}/contactlist": { - "delete": { - "tags": [ - "Audience" - ], - "description": "delete all identifiers from an Audience", - "operationId": "deleteIdentifiers", - "responses": { - "200": { - "description": "The contactlist was deleted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DeleteAudienceContactListResponse" - }, - "example": { - "data": { - "id": "1", - "type": "AudienceContactlist" - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "patch": { - "tags": [ - "Audience" - ], - "description": "Add/remove users to or from an audience", - "operationId": "modifyAudienceUsers", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ContactlistAmendmentRequest" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "200": { - "description": "Summary of created request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModifyAudienceResponse" - }, - "example": { - "data": { - "type": "ContactlistAmendment", - "attributes": { - "contactListId": 12, - "operation": "add", - "requestDate": "2018-12-10T10:00:50.0000000+00:00", - "identifierType": "madid", - "nbValidIdentifiers": 7343, - "nbInvalidIdentifiers": 13, - "sampleInvalidIdentifiers": [ - "InvalidIdentifier" - ] - } - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "404": { - "description": "Audience 123 not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "parameters": [ - { - "name": "audience-id", - "in": "path", - "description": "The id of the audience to amend", - "required": true, - "style": "simple", - "schema": { - "type": "string", - "format": "int32" - } - } - ] - }, - "/2022-07/marketing-solutions/me": { - "get": { - "tags": [ - "Gateway" - ], - "description": "Get information about the currently logged application", - "operationId": "GetCurrentApplication", - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ApplicationSummaryModelResponse" - } - } - } - }, - "404": { - "description": "Not Found", - "content": { - "application/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/ad-sets": { - "patch": { - "tags": [ - "Campaign" - ], - "description": "Patch a list of AdSets.", - "operationId": "PatchAdSets", - "requestBody": { - "description": "List of adsets to patch.", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/RequestsPatchAdSet" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/RequestsPatchAdSet" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/RequestsPatchAdSet" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/RequestsPatchAdSet" - } - } - }, - "x-bodyName": "adSets" - }, - "responses": { - "200": { - "description": "List of patched adSets.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponseAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponseAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponseAdSetId" - } - } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/ad-sets/search": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Search for ad sets", - "operationId": "SearchAdSets", - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/RequestAdSetSearch" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/RequestAdSetSearch" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/RequestAdSetSearch" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/RequestAdSetSearch" - } - } - }, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "data for the ad sets", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponsesReadAdSet" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesReadAdSet" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesReadAdSet" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "Forbidden", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/ad-sets/start": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Start the specified list of ad sets", - "operationId": "StartAdSets", - "requestBody": { - "description": "All the ad sets to start", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - } - }, - "x-bodyName": "adSets" - }, - "responses": { - "200": { - "description": "List of ad sets that have been started and errors / warnings by ad set", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/ad-sets/stop": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Stop the specified list of ad sets", - "operationId": "StopAdSets", - "requestBody": { - "description": "All the ad sets to stop", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - } - }, - "x-bodyName": "adSets" - }, - "responses": { - "200": { - "description": "List of ad sets that have been stopped and errors / warnings by ad set", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/ad-sets/{ad-set-id}/category-bids": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the Category Bids for all valid Categories associated to an Ad Set", - "operationId": "GetCategoryBidList", - "parameters": [ - { - "name": "ad-set-id", - "in": "path", - "description": "Id of the Ad Set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "List of Category Bids for all valid Categories associated to an Ad Set.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/AdSetCategoryBidListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/AdSetCategoryBidListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/AdSetCategoryBidListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - }, - "patch": { - "tags": [ - "Campaign" - ], - "description": "Patch Category Bids for one or more Categories in a single request. Partial success policy is followed.", - "operationId": "PatchCategoryBidList", - "parameters": [ - { - "name": "ad-set-id", - "in": "path", - "description": "Id of the Ad Set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" - } - } - }, - "x-bodyName": "categoryBidsToUpdate" - }, - "responses": { - "200": { - "description": "List of updated Category Bids for given Categories associated to an Ad Set.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/ad-sets/{ad-set-id}/display-multipliers": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the Display Multipliers for all valid Categories associated to an Ad Set", - "operationId": "GetDisplayMultipliers", - "parameters": [ - { - "name": "ad-set-id", - "in": "path", - "description": "Id of the Ad Set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "List of Display Multipliers for all valid Categories associated to an Ad Set.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - }, - "patch": { - "tags": [ - "Campaign" - ], - "description": "Patch Display Multipliers for one or more Categories in a single request. Partial success policy is followed.", - "operationId": "PatchDisplayMultipliers", - "parameters": [ - { - "name": "ad-set-id", - "in": "path", - "description": "Id of the Ad Set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" - } - } - }, - "x-bodyName": "displayMultipliersToUpdate" - }, - "responses": { - "200": { - "description": "List of updated Display Multipliers for given Categories associated to an Ad Set.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/ad-sets/{adSetId}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the data for the specified ad set", - "operationId": "GetAdSet", - "parameters": [ - { - "name": "adSetId", - "in": "path", - "description": "Id of the ad set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "data for the ad set", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponseReadAdSet" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponseReadAdSet" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponseReadAdSet" - } - } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/campaigns": { - "patch": { - "tags": [ - "Campaign" - ], - "description": "Patch a list of Campaigns.", - "operationId": "PatchCampaigns", - "requestBody": { - "description": "List of campaigns to patch.", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/PatchCampaignListRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchCampaignListRequest" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchCampaignListRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/PatchCampaignListRequest" - } - } - }, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "List of patched campaigns.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/PatchResultCampaignListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchResultCampaignListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchResultCampaignListResponse" - } - } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/campaigns/search": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Search for campaigns", - "operationId": "SearchCampaigns", - "requestBody": { - "description": "filters on campaigns", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/CampaignSearchRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/CampaignSearchRequest" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/CampaignSearchRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/CampaignSearchRequest" - } - } - }, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "data for the campaigns", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/CampaignListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/CampaignListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/CampaignListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "Forbidden", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/marketing-solutions/campaigns/{campaign-id}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the data for the specified campaign", - "operationId": "GetCampaign", - "parameters": [ - { - "name": "campaign-id", - "in": "path", - "description": "Id of the campaign", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "data for the campaign", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/CampaignResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/CampaignResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/CampaignResponse" - } - } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-07/log-level/advertisers/{advertiser-id}/report": { - "post": { - "tags": [ - "Analytics" - ], - "description": "This Statistics endpoint provides publisher data.", - "operationId": "GetTransparencyReport", - "parameters": [ - { - "name": "advertiser-id", - "in": "path", - "description": "The advertiser id to fetch the transparency data.", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/TransparencyQueryMessage" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/TransparencyQueryMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/TransparencyQueryMessage" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/TransparencyQueryMessage" - } - } - }, - "x-bodyName": "queryMessage" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TransparencyReportDataMessage" - }, - "example": { - "data": [ - { - "type": "TransparencyReport", - "attributes": { - "advertiserId": "123", - "tokenValidUntil": "2021-01-31T00:00:00.0000000+00:00", - "files": [ - { - "fileName": "report.csv", - "url": "https://www.example.com/transparency" - } - ] - } - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/TransparencyReportDataMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/TransparencyReportDataMessage" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "validation", - "code": "required-field", - "instance": "/report", - "title": "Start date and end date are required." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "access-control", - "code": "insufficient-advertiser-permission", - "instance": "/report", - "title": "Insufficient advertiser permission.", - "detail": "You do not have the rights to report on this advertiser." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - } - } - } - }, - "/2022-07/placements/report": { - "post": { - "tags": [ - "Analytics" - ], - "description": "Your ads are placed in different domains (publishers) and environments (websites and apps). Thanks to the placements endpoint, you can analyse the performances for each publisher, comparing displays, clicks and sales generated.", - "operationId": "GetPlacementsReport", - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" - } - } - }, - "x-bodyName": "dataMessage" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/json": { - "schema": { - "type": "string", - "format": "byte" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "validation", - "code": "required-field", - "instance": "/report", - "title": "Start date and end date are required." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "access-control", - "code": "insufficient-advertiser-permission", - "instance": "/report", - "title": "Insufficient advertiser permission.", - "detail": "You do not have the rights to report on this advertiser." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - } - } - } - }, - "/2022-07/statistics/report": { - "post": { - "tags": [ - "Analytics" - ], - "description": "This Statistics endpoint provides adset related data. It is an upgrade of our previous Statistics endpoint, and includes new metrics and customization capabilities.", - "operationId": "GetAdsetReport", - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/StatisticsReportQueryMessage" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/StatisticsReportQueryMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/StatisticsReportQueryMessage" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/StatisticsReportQueryMessage" - } - } - }, - "x-bodyName": "reportQuery" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/csv": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/xml": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "type": "string", - "format": "byte" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "validation", - "code": "required-field", - "instance": "/report", - "title": "Start date and end date are required." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/csv": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/xml": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "access-control", - "code": "insufficient-advertiser-permission", - "instance": "/report", - "title": "Insufficient advertiser permission.", - "detail": "You do not have the rights to report on this advertiser." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/csv": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/xml": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - } - } - } - }, - "/2022-07/transactions/report": { - "post": { - "tags": [ - "Analytics" - ], - "description": "This Transactions endpoint provides transactions id related data.", - "operationId": "GetTransactionsReport", - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" - } - } - }, - "x-bodyName": "dataMessage" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/csv": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/xml": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "type": "string", - "format": "byte" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "validation", - "code": "required-field", - "instance": "/report", - "title": "Start date and end date are required." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/csv": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/xml": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "access-control", - "code": "insufficient-advertiser-permission", - "instance": "/report", - "title": "Insufficient advertiser permission.", - "detail": "You do not have the rights to report on this advertiser." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/csv": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/xml": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - } - } - } - }, - "/2022-07/advertisers/me": { - "get": { - "tags": [ - "Advertiser" - ], - "description": "Fetch the portfolio of Advertisers for this account", - "operationId": "ApiPortfolioGet", - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - }, - "example": { - "data": [ - { - "type": "advertiser", - "id": "13", - "attributes": { - "advertiserName": "ClientName1" - } - }, - { - "type": "advertiser", - "id": "1352", - "attributes": { - "advertiserName": "ClientName2" - } - }, - { - "type": "advertiser", - "id": "73550", - "attributes": { - "advertiserName": "ClientName3" - } - } - ], - "errors": [ ], - "warnings": [ ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - } - } - }, - "401": { - "description": "Unauthorized", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - } - } - } - } - } - } - }, - "components": { - "schemas": { - "GetAudiencesResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Audience" - } - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Body of the GET audience operation" - }, - "ErrorCodeResponse": { - "required": [ - "errors" - ], - "type": "object", - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - }, - "nullable": true - } - }, - "description": "Definition of the error code" - }, - "NewAudienceResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/BasicAudienceDefinition" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Response of a newly created audience" - }, - "DeleteAudienceResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/BasicAudienceDefinition" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Response of an audience deletion" - }, - "ReplaceAudienceResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/BasicAudienceDefinition" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Response of an audience replacement" - }, - "DeleteAudienceContactListResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/BasicAudienceDefinition" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Response of a contactlist deletion" - }, - "ModifyAudienceResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ContactlistOperation" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Parameters to modify an audience" - }, - "NewAudienceRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/NewAudience" - } - }, - "description": "Body of creation of a new audience" - }, - "ReplaceAudienceRequest": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ReplaceAudience" - } - }, - "description": "Request to replace an audience" - }, - "ContactlistAmendmentRequest": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ContactlistAmendment" - } - }, - "description": "Request for a contactlist amendment" - }, - "Audience": { - "required": [ - "attributes", - "id", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "Audience" - }, - "id": { - "type": "string", - "description": "id of the Audience", - "example": "314159" - }, - "attributes": { - "required": [ - "created", - "description", - "name", - "updated" - ], - "type": "object", - "properties": { - "advertiserId": { - "type": "string", - "description": "The advertiser id that owns this Audience", - "format": "int32", - "nullable": true - }, - "name": { - "type": "string", - "description": "The name of the Audience" - }, - "description": { - "type": "string", - "description": "The string description of the Audience" - }, - "created": { - "type": "string", - "description": "Date and time ISO 8601 formatted string", - "format": "date-time" - }, - "updated": { - "type": "string", - "description": "Date and time ISO 8601 formatted string", - "format": "date-time" - }, - "nbLines": { - "type": "integer", - "description": "The number of line in the audience available once processed", - "nullable": true - }, - "nbLinesEmail": { - "type": "integer", - "description": "The number of email line in the audience available once processed", - "nullable": true - }, - "nbMatchesEmail": { - "type": "integer", - "description": "The number of email matches in the audience available once processed", - "nullable": true - } - } - } - }, - "description": "Definition of an audience and all its information" - }, - "AudienceError": { - "required": [ - "code", - "instance", - "type" - ], - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", - "nullable": true - }, - "type": { - "enum": [ - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "(REQUIRED) The classification of the error" - }, - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case." - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem" - }, - "title": { - "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type", - "nullable": true - }, - "detail": { - "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem", - "nullable": true - }, - "source": { - "type": "object", - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", - "nullable": true - }, - "stackTrace": { - "type": "array", - "items": { - "type": "string" - }, - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", - "nullable": true - } - }, - "description": "Definition of an audience error" - }, - "AudienceWarning": { - "required": [ - "code", - "detail", - "instance", - "type" - ], - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", - "nullable": true - }, - "type": { - "enum": [ - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "(REQUIRED) The classification of the error" - }, - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case." - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem" - }, - "title": { - "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type", - "nullable": true - }, - "detail": { - "type": "string", - "description": "(REQUIRED) A human-readable explanation specific to this occurrence of the problem" - }, - "source": { - "type": "object", - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", - "nullable": true - }, - "stackTrace": { - "type": "array", - "items": { - "type": "string" - }, - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", - "nullable": true - } - }, - "description": "Definition of the warning" - }, - "BasicAudienceDefinition": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "the id of the entity type" - }, - "type": { - "type": "string", - "description": "the name of the entity type" - }, - "attributes": { - "$ref": "#/components/schemas/AudienceNameDescription" - } - }, - "description": "Common definition of an audience" - }, - "ContactlistOperation": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type" - }, - "attributes": { - "required": [ - "operation" - ], - "type": "object", - "properties": { - "contactListId": { - "type": "integer", - "description": "the affected user list id", - "nullable": true - }, - "operation": { - "type": "string", - "description": "The action recorded" - }, - "requestDate": { - "type": "string", - "description": "When the action was recorded", - "format": "date-time", - "nullable": true - }, - "identifierType": { - "type": "string", - "description": "The schema specified for of the identifiers", - "nullable": true - }, - "nbValidIdentifiers": { - "type": "integer", - "description": "How many identifiers were valid for the specified schema", - "nullable": true - }, - "nbInvalidIdentifiers": { - "type": "integer", - "description": "How many identifiers were invalid for the specified schema", - "nullable": true - }, - "sampleInvalidIdentifiers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A sample of invalid identifiers if there is some", - "nullable": true - } - }, - "description": "the contactlist operation attributes" - } - }, - "description": "Response definition of a contactlist operation" - }, - "NewAudience": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "Audience" - }, - "attributes": { - "required": [ - "name" - ], - "type": "object", - "properties": { - "advertiserId": { - "type": "string", - "description": "The advertiser id to create the audience for", - "nullable": true - }, - "name": { - "type": "string", - "description": "The name of the new audience" - }, - "description": { - "type": "string", - "description": "The description of the audience", - "nullable": true - } - } - } - }, - "description": "Body for the creation of a new audience (name, advertiserId, etc)" - }, - "ReplaceAudience": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "Audience" - }, - "attributes": { - "$ref": "#/components/schemas/AudienceNameDescription" - } - }, - "description": "Parameters required to replace an audience" - }, - "ContactlistAmendment": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "User List", - "example": "ContactlistAmendment" - }, - "attributes": { - "required": [ - "identifiers", - "operation" - ], - "type": "object", - "properties": { - "operation": { - "enum": [ - "add", - "remove" - ], - "type": "string", - "description": "Operation to add or remove users" - }, - "identifierType": { - "enum": [ - "email", - "madid", - "identityLink", - "gum", - "customerid" - ], - "type": "string", - "description": "What type of identifiers are used", - "nullable": true - }, - "identifiers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The users tos add or remove, each in the schema specified" - }, - "gumCallerId": { - "type": "integer", - "description": "The Gum caller id of the advertiser patching identifiers of type Gum", - "nullable": true - } - }, - "description": "the name of the entity type" - } - }, - "description": "Parameters for the amendment of a contactlist" - }, - "AudienceNameDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name to designate the audience by", - "nullable": true - }, - "description": { - "type": "string", - "description": "The description of the audience", - "nullable": true - } - }, - "description": "Description of an audience with name and detailed description" - }, - "ApplicationSummaryModelResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ApplicationSummaryModelResource" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Response of ApplicationSummaryModel" - }, - "ApplicationSummaryModelResource": { - "type": "object", - "properties": { - "type": { - "type": "string", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ApplicationSummaryModel" - } - }, - "description": "A class that represents a ValueType in a guild compliant way" - }, - "CommonProblem": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The request correlation ID this problem comes from.", - "nullable": true - }, - "traceIdentifier": { - "type": "string", - "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", - "nullable": true - }, - "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "The problem's category.", - "nullable": true - }, - "code": { - "type": "string", - "description": "A machine-readable error code, expressed as a string value.", - "nullable": true - }, - "instance": { - "type": "string", - "description": "A URI that identifies the specific occurrence of the problem.", - "nullable": true - }, - "title": { - "type": "string", - "description": "A short human-readable description of the problem type", - "nullable": true - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem", - "nullable": true - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "A machine-readable structure to reference to the exact location(s) causing the error(s)", - "nullable": true - }, - "stackTrace": { - "type": "string", - "nullable": true - } - }, - "description": "Common problem object. Can be specialized as needed." - }, - "ApplicationSummaryModel": { - "type": "object", - "properties": { - "applicationId": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "name": { - "type": "string", - "nullable": true - }, - "organizationId": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "description": { - "type": "string", - "nullable": true - }, - "criteoService": { - "type": "string", - "nullable": true - } - }, - "description": "Model of ApplicationSummary" - }, - "ResponseAdSetId": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ReadModelAdSetId" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "output resource" - }, - "ResponsesReadAdSet": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ReadModelReadAdSet" - }, - "nullable": true, - "readOnly": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "List of output resources" - }, - "ResponsesAdSetId": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ReadModelAdSetId" - }, - "nullable": true, - "readOnly": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "List of output resources" - }, - "AdSetCategoryBidListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/AdSetCategoryBidResource" - }, - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Data model for a list of response resources" - }, - "PatchAdSetCategoryBidResultListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResultResource" - }, - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Data model for a list of response resources" - }, - "AdSetDisplayMultiplierListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/AdSetDisplayMultiplierResource" - }, - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Data model for a list of response resources" - }, - "PatchAdSetDisplayMultiplierResultListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultResource" - }, - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Data model for a list of response resources" - }, - "ResponseReadAdSet": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ReadModelReadAdSet" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "output resource" - }, - "PatchResultCampaignListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchResultCampaignReadResource" - }, - "nullable": true, - "readOnly": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "List of output resources" - }, - "CampaignListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CampaignReadResource" - }, - "nullable": true, - "readOnly": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "List of output resources" - }, - "CampaignResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/CampaignReadResource" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "output resource" - }, - "RequestsPatchAdSet": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/WriteModelPatchAdSet" - }, - "nullable": true - } - }, - "description": "List of input resources" - }, - "RequestAdSetSearch": { - "type": "object", - "properties": { - "filters": { - "$ref": "#/components/schemas/AdSetSearchFilter" - } - }, - "description": "request payload of the search endpoint" - }, - "RequestsAdSetId": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/WriteModelAdSetId" - }, - "nullable": true - } - }, - "description": "List of input resources" - }, - "PatchAdSetCategoryBidListRequest": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResource" - }, - "nullable": true - } - }, - "description": "Data model for a list of input resources" - }, - "PatchAdSetDisplayMultiplierListRequest": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResource" - }, - "nullable": true - } - }, - "description": "Data model for a list of input resources" - }, - "PatchCampaignListRequest": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchCampaignWriteResource" - }, - "nullable": true - } - }, - "description": "List of input resources" - }, - "CampaignSearchRequest": { - "type": "object", - "properties": { - "filters": { - "$ref": "#/components/schemas/CampaignSearchFilters" - } - }, - "description": "request payload of the search endpoint" - }, - "ReadModelAdSetId": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true, - "readOnly": true - }, - "type": { - "type": "string", - "nullable": true, - "readOnly": true, - "example": "AdSetId" - } - }, - "description": "read model data for resources" - }, - "ProblemDetails": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The request correlation ID this problem comes from.", - "nullable": true - }, - "traceIdentifier": { - "type": "string", - "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", - "nullable": true - }, - "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "nullable": true - }, - "code": { - "type": "string", - "nullable": true - }, - "instance": { - "type": "string", - "nullable": true - }, - "title": { - "type": "string", - "nullable": true - }, - "detail": { - "type": "string", - "nullable": true - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "nullable": true - }, - "stackTrace": { - "type": "string", - "nullable": true - } - }, - "description": "Data model for common error or warning" - }, - "ReadModelReadAdSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true, - "readOnly": true - }, - "type": { - "type": "string", - "nullable": true, - "readOnly": true, - "example": "ReadAdSet" - }, - "attributes": { - "$ref": "#/components/schemas/ReadAdSet" - } - }, - "description": "read model data for resources" - }, - "AdSetCategoryBidResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/AdSetCategoryBid" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetCategoryBid" - } - }, - "description": "Data model for a Resource" - }, - "PatchAdSetCategoryBidResultResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetCategoryBid" - } - }, - "description": "Data model for a Resource" - }, - "AdSetDisplayMultiplierResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/AdSetDisplayMultiplier" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetDisplayMultiplier" - } - }, - "description": "Data model for a Resource" - }, - "PatchAdSetDisplayMultiplierResultResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetDisplayMultiplier" - } - }, - "description": "Data model for a Resource" - }, - "PatchResultCampaignReadResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true, - "readOnly": true - }, - "type": { - "type": "string", - "nullable": true, - "readOnly": true, - "example": "Campaign" - } - }, - "description": "read model data for resources" - }, - "CampaignReadResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true, - "readOnly": true - }, - "type": { - "type": "string", - "nullable": true, - "readOnly": true, - "example": "Campaign" - }, - "attributes": { - "$ref": "#/components/schemas/Campaign" - } - }, - "description": "read model data for resources" - }, - "WriteModelPatchAdSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "PatchAdSet" - }, - "attributes": { - "$ref": "#/components/schemas/PatchAdSet" - } - }, - "description": "write model data for resources" - }, - "AdSetSearchFilter": { - "type": "object", - "properties": { - "adSetIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Ad set ids to filter on", - "nullable": true - }, - "advertiserIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Advertiser ids which ad sets belongs to (indirectly via their marketing campaign)", - "nullable": true - }, - "campaignIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Campaign ids to filter on", - "nullable": true - } - }, - "description": "filter on ad set ids" - }, - "WriteModelAdSetId": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetId" - } - }, - "description": "write model data for resources" - }, - "PatchAdSetCategoryBidResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/PatchAdSetCategoryBid" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetCategoryBid" - } - }, - "description": "Data model for a Resource" - }, - "PatchAdSetDisplayMultiplierResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplier" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetDisplayMultiplier" - } - }, - "description": "Data model for a Resource" - }, - "PatchCampaignWriteResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "Campaign" - }, - "attributes": { - "$ref": "#/components/schemas/PatchCampaign" - } - }, - "description": "write model data for resources" - }, - "CampaignSearchFilters": { - "type": "object", - "properties": { - "campaignIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Campaign ids to filter on", - "nullable": true - }, - "advertiserIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Advertiser ids to which campaigns are linked to", - "nullable": true - } - }, - "description": "filters on campaign" - }, - "ReadAdSet": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the ad set", - "nullable": true - }, - "advertiserId": { - "type": "string", - "description": "Advertiser id of the campaign this ad set belongs to", - "nullable": true - }, - "datasetId": { - "type": "string", - "description": "Dataset id of this ad set", - "nullable": true - }, - "campaignId": { - "type": "string", - "description": "Campaign id this ad set belongs to", - "nullable": true - }, - "destinationEnvironment": { - "enum": [ - "undefined", - "web", - "app" - ], - "type": "string", - "description": "The environment that an ad click will lead a user to", - "nullable": true - }, - "schedule": { - "$ref": "#/components/schemas/ReadAdSetSchedule" - }, - "bidding": { - "$ref": "#/components/schemas/ReadAdSetBidding" - }, - "targeting": { - "$ref": "#/components/schemas/AdSetTargeting" - }, - "budget": { - "$ref": "#/components/schemas/ReadAdSetBudget" - }, - "mediaType": { - "enum": [ - "display", - "video" - ], - "type": "string", - "description": "Media type for the ad set", - "nullable": true - } - }, - "description": "ad set read model" - }, - "AdSetCategoryBid": { - "type": "object", - "properties": { - "categoryName": { - "type": "string", - "description": "The name of the Category to which the Category Bid has been applied.", - "nullable": true - }, - "bidAmount": { - "type": "number", - "description": "The Bid amount applied to the given Category associated to an Ad Set. At most 4 decimals are supported. Additional decimals are rounded.", - "format": "double", - "nullable": true - } - }, - "description": "Category Bid information about a Category for a given Ad Set." - }, - "AdSetDisplayMultiplier": { - "type": "object", - "properties": { - "categoryName": { - "type": "string", - "description": "The name of the Category to which the given for which the Display Multiplier has been applied.", - "nullable": true - }, - "displayMultiplier": { - "type": "number", - "description": "The Display Multiplier applied to the given Category associated to an Ad Set.", - "format": "double", - "nullable": true - } - }, - "description": "Display Multiplier information about a Category for a given Ad Set." - }, - "Campaign": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the campaign", - "nullable": true - }, - "advertiserId": { - "type": "string", - "description": "Advertiser id of the campaign", - "nullable": true - }, - "objective": { - "type": "string", - "description": "Campaign's marketing objective", - "nullable": true - }, - "spendLimit": { - "$ref": "#/components/schemas/CampaignSpendLimit" - }, - "goal": { - "enum": [ - "Unspecified", - "Acquisition", - "Retention" - ], - "type": "string", - "description": "Goal of the campaign", - "nullable": true - } - }, - "description": "campaign read model" - }, - "PatchAdSet": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the ad set", - "nullable": true - }, - "scheduling": { - "$ref": "#/components/schemas/PatchAdSetScheduling" - }, - "bidding": { - "$ref": "#/components/schemas/PatchAdSetBidding" - }, - "targeting": { - "$ref": "#/components/schemas/AdSetTargeting" - }, - "budget": { - "$ref": "#/components/schemas/PatchAdSetBudget" - } - }, - "description": "ad set patch model" - }, - "PatchAdSetCategoryBid": { - "type": "object", - "properties": { - "bidAmount": { - "type": "number", - "description": "The Bid amount applied to the given Category associated to an Ad Set. At most 4 decimals are supported. Additional decimals are rounded.", - "format": "double", - "nullable": true - } - }, - "description": "Category Bid to update for a given combination of Ad Set and Category." - }, - "PatchAdSetDisplayMultiplier": { - "type": "object", - "properties": { - "displayMultiplier": { - "type": "number", - "description": "Any positive decimal value. To remove the impact of the Display Multiplier set it to 1. At most 4 decimals are supported. Additional decimals are rounded.", - "format": "double", - "nullable": true - } - }, - "description": "Display Multiplier to update for a given combination of Ad Set and Category." - }, - "PatchCampaign": { - "type": "object", - "properties": { - "spendLimit": { - "$ref": "#/components/schemas/PatchCampaignSpendLimit" - } - }, - "description": "campaign patch model" - }, - "ReadAdSetSchedule": { - "type": "object", - "properties": { - "startDate": { - "$ref": "#/components/schemas/NillableDateTime" - }, - "endDate": { - "$ref": "#/components/schemas/NillableDateTime" - }, - "activationStatus": { - "enum": [ - "on", - "off" - ], - "type": "string", - "description": "Activation status of the ad set, i.e. whether the consumer wants it to deliver", - "nullable": true - }, - "deliveryStatus": { - "enum": [ - "draft", - "inactive", - "live", - "notLive", - "pausing", - "paused", - "scheduled", - "ended", - "notDelivering", - "archived" - ], - "type": "string", - "description": "Delivery status of the delivery of the ad set, i.e. whether the ad set is delivering", - "nullable": true - } - }, - "description": "ad set schedule read model" - }, - "ReadAdSetBidding": { - "type": "object", - "properties": { - "bidAmount": { - "$ref": "#/components/schemas/NillableDecimal" - }, - "bidStrategy": { - "enum": [ - "actions", - "clicks", - "conversions", - "displays", - "installs", - "revenue", - "storeConversions", - "value", - "viewedImpressions", - "Visits", - "completedVideoViews" - ], - "type": "string", - "description": "The intended optimization for the Ad Set", - "nullable": true - }, - "costController": { - "enum": [ - "COS", - "CPC", - "CPI", - "CPM", - "CPO", - "CPSV", - "CPV", - "dailyBudget" - ], - "type": "string", - "description": "How spend is controlled", - "nullable": true - } - }, - "description": "ad set bidding read model" - }, - "AdSetTargeting": { - "type": "object", - "properties": { - "deliveryLimitations": { - "$ref": "#/components/schemas/AdSetDeliveryLimitations" - }, - "geoLocation": { - "$ref": "#/components/schemas/AdSetGeoLocation" - }, - "frequencyCapping": { - "$ref": "#/components/schemas/AdSetFrequencyCapping" - } - }, - "description": "ad set targeting model" - }, - "ReadAdSetBudget": { - "type": "object", - "properties": { - "budgetStrategy": { - "enum": [ - "capped", - "uncapped" - ], - "type": "string", - "description": "Whether your budget is capped or not", - "nullable": true - }, - "budgetRenewal": { - "enum": [ - "undefined", - "daily", - "monthly", - "lifetime" - ], - "type": "string", - "description": "The pace of the budget renewal", - "nullable": true - }, - "budgetDeliverySmoothing": { - "enum": [ - "accelerated", - "standard" - ], - "type": "string", - "description": "The pace at which the budget can be spent", - "nullable": true - }, - "budgetDeliveryWeek": { - "enum": [ - "undefined", - "mondayToSunday", - "tuesdayToMonday", - "wednesdayToTuesday", - "thursdayToWednesday", - "fridayToThursday", - "saturdayToFriday", - "sundayToSaturday" - ], - "type": "string", - "description": "The delivery week for the budget", - "nullable": true - }, - "budgetAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "ad set budget read model" - }, - "CampaignSpendLimit": { - "type": "object", - "properties": { - "spendLimitType": { - "enum": [ - "capped", - "uncapped" - ], - "type": "string", - "description": "Whether your spend limit is capped or not", - "nullable": true - }, - "spendLimitRenewal": { - "enum": [ - "undefined", - "daily", - "monthly", - "lifetime" - ], - "type": "string", - "description": "The pace of the spend limit renewal", - "nullable": true - }, - "spendLimitAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "campaign spend limit model" - }, - "PatchAdSetScheduling": { - "type": "object", - "properties": { - "startDate": { - "$ref": "#/components/schemas/NillableDateTime" - }, - "endDate": { - "$ref": "#/components/schemas/NillableDateTime" - } - }, - "description": "ad set schedule patch model" - }, - "PatchAdSetBidding": { - "type": "object", - "properties": { - "bidAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "ad set bidding patch model" - }, - "PatchAdSetBudget": { - "type": "object", - "properties": { - "budgetStrategy": { - "enum": [ - "capped", - "uncapped" - ], - "type": "string", - "description": "Whether your budget is capped or not", - "nullable": true - }, - "budgetRenewal": { - "enum": [ - "undefined", - "daily", - "monthly", - "lifetime" - ], - "type": "string", - "description": "The pace of the budget renewal", - "nullable": true - }, - "budgetDeliverySmoothing": { - "enum": [ - "accelerated", - "standard" - ], - "type": "string", - "description": "The pace at which the budget can be spent", - "nullable": true - }, - "budgetDeliveryWeek": { - "enum": [ - "undefined", - "mondayToSunday", - "tuesdayToMonday", - "wednesdayToTuesday", - "thursdayToWednesday", - "fridayToThursday", - "saturdayToFriday", - "sundayToSaturday" - ], - "type": "string", - "description": "The delivery week for the budget", - "nullable": true - }, - "budgetAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "ad set budget patch model" - }, - "PatchCampaignSpendLimit": { - "type": "object", - "properties": { - "spendLimitType": { - "enum": [ - "capped", - "uncapped" - ], - "type": "string", - "description": "Whether your spend limit is capped or not", - "nullable": true - }, - "spendLimitRenewal": { - "enum": [ - "undefined", - "daily", - "monthly", - "lifetime" - ], - "type": "string", - "description": "The pace of the spend limit renewal", - "nullable": true - }, - "spendLimitAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "campaign spend limit model" - }, - "NillableDateTime": { - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "type": "string", - "format": "date-time", - "nullable": true, - "x-nullable": true - } - }, - "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." - }, - "NillableDecimal": { - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "type": "number", - "format": "double", - "nullable": true, - "x-nullable": true - } - }, - "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." - }, - "AdSetDeliveryLimitations": { - "type": "object", - "properties": { - "environments": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "web", - "inApp" - ], - "type": "string" - }, - "description": "List of environments which the ad set should target", - "nullable": true - }, - "devices": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "other", - "desktop", - "mobile", - "tablet" - ], - "type": "string" - }, - "description": "List of devices which the ad set should target", - "nullable": true - }, - "operatingSystems": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "android", - "ios", - "unknown" - ], - "type": "string" - }, - "description": "List of operating systems which the ad set should target", - "nullable": true - } - }, - "description": "ad set delivery limitations model" - }, - "AdSetGeoLocation": { - "type": "object", - "properties": { - "countries": { - "$ref": "#/components/schemas/NillableAdSetTargetingRule" - }, - "subdivisions": { - "$ref": "#/components/schemas/NillableAdSetTargetingRule" - }, - "zipCodes": { - "$ref": "#/components/schemas/NillableAdSetTargetingRule" - } - }, - "description": "ad set geolocation model" - }, - "AdSetFrequencyCapping": { - "type": "object", - "properties": { - "frequency": { - "enum": [ - "hourly", - "daily", - "lifetime", - "advanced" - ], - "type": "string", - "description": "Period on which impression limitation is calculated", - "nullable": true - }, - "maximumImpressions": { - "type": "integer", - "description": "Maximum impressions for the specified period", - "format": "int32", - "nullable": true - } - }, - "description": "ad set frequency capping model" - }, - "NillableAdSetTargetingRule": { - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "allOf": [ - { - "$ref": "#/components/schemas/AdSetTargetingRule" - } - ], - "nullable": true, - "x-nullable": true - } - }, - "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." - }, - "AdSetTargetingRule": { - "type": "object", - "properties": { - "operand": { - "enum": [ - "undefined", - "in", - "notIn" - ], - "type": "string", - "description": "Operand which states how the values should be applied", - "nullable": true - }, - "values": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "List of values to apply", - "nullable": true - } - }, - "description": "ad set targeting rule model" - }, - "TransparencyReportDataMessage": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/TransparencyReportEntityMessage" - } - } - }, - "description": "This is the message defining the response for Transparency report" - }, - "ProblemsDetails": { - "type": "object", - "properties": { - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Common problems object" - }, - "TransparencyQueryMessage": { - "required": [ - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "shouldDisplayProductIds": { - "type": "boolean", - "description": "Specify if the product ids are displayed in the report.", - "default": false, - "nullable": true - }, - "startDate": { - "type": "string", - "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - } - }, - "description": "This is the message defining the query for Transparency report", - "example": { - "shouldDisplayProductIds": false, - "startDate": "2023-04-03T00:00:00.0000000+00:00", - "endDate": "2023-04-06T00:00:00.0000000+00:00" - } - }, - "PlacementsReportQueryDataMessage": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PlacementsReportQueryEntityMessage" - } - } - }, - "description": "Contains queries for Placements report", - "example": { - "data": [ - { - "type": "PlacementReport", - "attributes": { - "advertiserIds": "123,456,789", - "campaignIds": "111,222,333,444", - "adsetIds": "135,246,357,468", - "environment": "web", - "placement": "MyPlacement", - "dimensions": [ - "AdsetId", - "AdvertiserId", - "Placement" - ], - "metrics": [ - "clicks", - "displays", - "cost" - ], - "currency": "EUR", - "disclosed": false, - "format": "csv", - "timezone": "Europe/Paris", - "startDate": "2022-08-29T00:00:00.0000000+00:00", - "endDate": "2022-08-29T00:00:00.0000000+00:00" - } - } - ] - } - }, - "StatisticsReportQueryMessage": { - "required": [ - "dimensions", - "metrics", - "currency", - "format", - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "advertiserIds": { - "type": "string", - "description": "The comma-separated list of advertiser ids. If empty, all the advertisers in the portfolio will be used", - "nullable": true - }, - "adSetIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "list of adSets ids. If empty, all the adSets will be fetched", - "nullable": true - }, - "adSetNames": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "list of adSets names. If empty, all the adSets will be fetched", - "nullable": true - }, - "adSetStatus": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "list of adSets status. If empty, all the adSets will be fetched", - "nullable": true - }, - "dimensions": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "AdsetId", - "Adset", - "AdvertiserId", - "Advertiser", - "CategoryId", - "Category", - "Hour", - "Day", - "Week", - "Month", - "Year", - "Os", - "Device", - "CampaignId", - "Campaign", - "AdId", - "Ad", - "CouponId", - "Coupon", - "MarketingObjectiveId", - "MarketingObjective", - "ChannelId", - "Channel", - "Goal" - ], - "type": "string" - }, - "description": "The dimensions for the report." - }, - "metrics": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of metrics to report." - }, - "currency": { - "type": "string", - "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." - }, - "format": { - "type": "string", - "description": "The file format of the generated report: csv, xml, excel or json." - }, - "timezone": { - "type": "string", - "description": "The timezone used for the report. Timezone Database format (Tz).", - "default": "UTC", - "nullable": true - }, - "startDate": { - "type": "string", - "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - } - }, - "description": "This is the message defining the query for Adset report", - "example": { - "advertiserIds": "123,456,789", - "adSetIds": [ - "12345", - "54321" - ], - "adSetNames": [ - "myAdSet1", - "myAdSet2" - ], - "adSetStatus": [ - "Active" - ], - "dimensions": [ - "CampaignId", - "Campaign", - "AdsetId", - "Adset", - "AdvertiserId", - "Advertiser", - "AdId", - "Ad", - "CouponId", - "Coupon", - "CategoryId", - "Category", - "Hour", - "Day", - "Week", - "Month", - "Year", - "Os", - "Device" - ], - "metrics": [ - "Clicks", - "Displays", - "Cpc", - "Visits" - ], - "currency": "EUR", - "format": "csv", - "timezone": "Europe/Paris", - "startDate": "2022-08-29T00:00:00.0000000+00:00", - "endDate": "2022-09-01T00:00:00.0000000+00:00" - } - }, - "TransactionsReportQueryDataMessage": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/TransactionsReportQueryEntityMessage" - } - } - }, - "description": "Contains queries for Transactions report", - "example": { - "data": [ - { - "type": "TransactionsReport", - "attributes": { - "advertiserIds": "123,456,789", - "eventType": "display", - "currency": "EUR", - "format": "csv", - "timezone": "Europe/Paris", - "startDate": "2023-04-03T00:00:00.0000000+00:00", - "endDate": "2023-04-03T00:00:00.0000000+00:00" - } - } - ] - } - }, - "TransparencyReportEntityMessage": { - "required": [ - "type", - "attributes" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "readOnly": true - }, - "attributes": { - "$ref": "#/components/schemas/TransparencyReportAttributes" - } - }, - "description": "This is the message defining the entity response for Transparency report" - }, - "PlacementsReportQueryEntityMessage": { - "required": [ - "type", - "attributes" - ], - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "attributes": { - "$ref": "#/components/schemas/PlacementsReportQueryMessage" - } - }, - "description": "Contains a query for Transaction report and its type" - }, - "TransactionsReportQueryEntityMessage": { - "required": [ - "type", - "attributes" - ], - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "attributes": { - "$ref": "#/components/schemas/TransactionsReportQueryMessage" - } - }, - "description": "Contains a query for Transaction report and its type" - }, - "TransparencyReportAttributes": { - "required": [ - "advertiserId", - "tokenValidUntil", - "files" - ], - "type": "object", - "properties": { - "advertiserId": { - "type": "string" - }, - "tokenValidUntil": { - "type": "string", - "format": "date-time" - }, - "files": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/TransparencyReportFile" - } - } - }, - "description": "This is the message defining the attribute response for Transparency report" - }, - "PlacementsReportQueryMessage": { - "required": [ - "advertiserIds", - "dimensions", - "metrics", - "currency", - "format", - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "advertiserIds": { - "type": "string", - "description": "The comma-separated list of advertiser ids." - }, - "campaignIds": { - "type": "string", - "description": "The comma-separated list of campaign ids.", - "nullable": true - }, - "adsetIds": { - "type": "string", - "description": "The comma-separated list of adSet ids.", - "nullable": true - }, - "environment": { - "type": "string", - "description": "Type of environment: Web, Android or iOS.", - "nullable": true - }, - "placement": { - "type": "string", - "description": "Filter the value of the placement", - "nullable": true - }, - "dimensions": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "AdsetId", - "AdvertiserId", - "Placement", - "Environment", - "AdsetName", - "AdvertiserName", - "CampaignId", - "CampaignName" - ], - "type": "string" - }, - "description": "The dimensions for the report." - }, - "metrics": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of metrics to report." - }, - "currency": { - "type": "string", - "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." - }, - "disclosed": { - "type": "boolean", - "description": "Returns disclosed or undisclosed placements.", - "default": true, - "nullable": true - }, - "format": { - "type": "string", - "description": "The file format of the generated report: csv, xml, excel or json." - }, - "timezone": { - "type": "string", - "description": "The timezone used for the report. Timezone Database format (Tz).", - "default": "UTC", - "nullable": true - }, - "startDate": { - "type": "string", - "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - } - }, - "description": "This is the message defining the query for Placements report" - }, - "TransactionsReportQueryMessage": { - "required": [ - "currency", - "format", - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "advertiserIds": { - "type": "string", - "description": "The comma-separated list of advertiser ids. If empty, all the advertisers in the portfolio will be used", - "nullable": true - }, - "eventType": { - "type": "string", - "description": "Apply a filter on Event type .", - "nullable": true - }, - "currency": { - "type": "string", - "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." - }, - "format": { - "type": "string", - "description": "The file format of the generated report: csv, xml, excel or json." - }, - "timezone": { - "type": "string", - "description": "The timezone used for the report. Timezone Database format (Tz).", - "default": "UTC", - "nullable": true - }, - "startDate": { - "type": "string", - "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - } - }, - "description": "This is the message defining the query for Transaction report" - }, - "TransparencyReportFile": { - "required": [ - "fileName", - "url" - ], - "type": "object", - "properties": { - "fileName": { - "type": "string" - }, - "url": { - "type": "string" - } - }, - "description": "This is the message defining the file response for Transparency report" - }, - "GetPortfolioResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/EntityOfPortfolioMessage" - }, - "description": "The response�s primary data", - "nullable": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CriteoApiError" - }, - "description": "Error list returned by the Criteo API\r\nFor successful requests it is empty", - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CriteoApiWarning" - }, - "description": "Warnings list returned by the Criteo API\r\nIn some situations the operations are successful but it may be useful to issue warnings to the API consumer.\r\nFor example the endpoint, entity or field is deprecated. Warnings are like compiler warnings, they indicate that problems may occur in the future.", - "nullable": true - } - }, - "description": "Portfolio fetch Response" - }, - "EntityOfPortfolioMessage": { - "type": "object", - "properties": { - "type": { - "enum": [ - "campaign", - "adset", - "ad", - "advertiser", - "agency", - "publisher", - "address", - "client", - "contact", - "industry" - ], - "type": "string", - "description": "A string containing the entity type", - "nullable": true, - "example": "campaign" - }, - "id": { - "type": "string", - "description": "A opaque string containing the unique Id of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/PortfolioMessage" - }, - "meta": { - "type": "object", - "description": "A meta object that contains application-specific metadata", - "nullable": true - } - }, - "description": "Generic Criteo API successful data model" - }, - "CriteoApiError": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The correlation ID provided by the gateway", - "nullable": true - }, - "type": { - "enum": [ - "access_control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "A machine-readable code specifying error category", - "nullable": true, - "example": "access_control" - }, - "code": { - "enum": [ - "internal-error", - "deprecated-field", - "endpoint-deprecated", - "required-field", - "invalid-date-format", - "invalid", - "invalid-ranged", - "invalid-timespan" - ], - "type": "string", - "description": "A machine-readable error code string in kabab-case. Unique across Criteo", - "nullable": true, - "example": "internal-error" - }, - "instance": { - "type": "string", - "description": "A URI reference that identifies the specific occurrence of the problem", - "nullable": true - }, - "title": { - "type": "string", - "description": "A short, human-readable remarks of the problem type.", - "nullable": true - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem.", - "nullable": true - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "A machine-readable structure to reference to the exact location(s) causing the error(s).", - "nullable": true - } - }, - "description": "Criteo API response error" - }, - "CriteoApiWarning": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The correlation ID provided by the gateway", - "nullable": true - }, - "type": { - "enum": [ - "access_control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "A machine-readable code specifying error category", - "nullable": true, - "example": "access_control" - }, - "code": { - "enum": [ - "internal-error", - "deprecated-field", - "endpoint-deprecated", - "required-field", - "invalid-date-format", - "invalid", - "invalid-ranged", - "invalid-timespan" - ], - "type": "string", - "description": "A machine-readable error code string in kabab-case. Unique across Criteo", - "nullable": true, - "example": "internal-error" - }, - "instance": { - "type": "string", - "description": "A URI reference that identifies the specific occurrence of the problem", - "nullable": true - }, - "title": { - "type": "string", - "description": "A short, human-readable remarks of the problem type.", - "nullable": true - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem.", - "nullable": true - } - }, - "description": "Criteo API response warning" - }, - "PortfolioMessage": { - "type": "object", - "properties": { - "advertiserName": { - "type": "string", - "nullable": true - } - }, - "description": "Class with elementary info about advertiser" - } - }, - "securitySchemes": { - "oauth": { - "type": "oauth2", - "flows": { - "clientCredentials": { - "tokenUrl": "https://api.criteo.com/oauth2/token", - "scopes": { } - }, - "authorizationCode": { - "authorizationUrl": "https://api.criteo.com/oauth2", - "tokenUrl": "https://api.criteo.com/oauth2/token", - "scopes": { } - } - } - } - } - }, - "security": [ - { - "oauth": [ ] - } - ], - "x-samples-languages": [ - "java", - "python", - "php", - "csharp", - "javascript", - "curl", - "ruby" - ] -} \ No newline at end of file diff --git a/api-specifications/marketingsolutions_2022-10.json b/api-specifications/marketingsolutions_2022-10.json deleted file mode 100644 index a5f1ce7..0000000 --- a/api-specifications/marketingsolutions_2022-10.json +++ /dev/null @@ -1,5090 +0,0 @@ -{ - "openapi": "3.0.1", - "info": { - "title": "Criteo API", - "description": "Criteo API - MarketingSolutions", - "version": "2022-10" - }, - "servers": [ - { - "url": "https://api.criteo.com" - } - ], - "paths": { - "/2022-10/audiences": { - "get": { - "tags": [ - "Audience" - ], - "description": "Get a list of all the audiences for the user or for the given advertiser_id", - "operationId": "getAudiences", - "parameters": [ - { - "name": "advertiser-id", - "in": "query", - "description": "The advertiser id to get all the audiences for.\nMandatory for internal users. For external users,\n if you don't provide it, we will take into account the advertisers from your portfolio", - "style": "form", - "schema": { - "type": "string", - "format": "int32" - } - } - ], - "responses": { - "200": { - "description": "The list was retrieved.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetAudiencesResponse" - }, - "example": { - "data": [ - { - "type": "AudienceContactlist", - "id": "1", - "attributes": { - "advertiserId": "18", - "name": "Audience name", - "description": "Audience", - "created": "2018-12-10T10:00:50.0000000+00:00", - "updated": "2018-12-10T10:17:15.0000000+00:00", - "nbLines": 100, - "nbLinesEmail": 10, - "nbMatchesEmail": 10 - } - } - ], - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "post": { - "tags": [ - "Audience" - ], - "description": "Create an Audience for an Advertiser", - "operationId": "createAudience", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/NewAudienceRequest" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "200": { - "description": "The audience was created", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/NewAudienceResponse" - }, - "example": { - "data": { - "id": "1", - "type": "Audience" - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - } - }, - "/2022-10/audiences/{audience-id}": { - "delete": { - "tags": [ - "Audience" - ], - "description": "Delete an audience by id", - "operationId": "removeAudience", - "responses": { - "200": { - "description": "The audience was deleted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DeleteAudienceResponse" - }, - "example": { - "data": { - "id": "1", - "type": "Audience" - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "patch": { - "tags": [ - "Audience" - ], - "description": "Update user audience specified by the audience id", - "operationId": "modifyAudience", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReplaceAudienceRequest" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "200": { - "description": "The audience was updated", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReplaceAudienceResponse" - }, - "example": { - "data": { - "id": "1", - "type": "AudienceContactlist", - "attributes": { - "name": "example audience", - "description": "example audience description" - } - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "parameters": [ - { - "name": "audience-id", - "in": "path", - "description": "The id of the audience to amend", - "required": true, - "style": "simple", - "schema": { - "type": "string", - "format": "int32" - } - } - ] - }, - "/2022-10/audiences/{audience-id}/contactlist": { - "delete": { - "tags": [ - "Audience" - ], - "description": "delete all identifiers from an Audience", - "operationId": "deleteIdentifiers", - "responses": { - "200": { - "description": "The contactlist was deleted", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DeleteAudienceContactListResponse" - }, - "example": { - "data": { - "id": "1", - "type": "AudienceContactlist" - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "patch": { - "tags": [ - "Audience" - ], - "description": "Add/remove users to or from an audience", - "operationId": "modifyAudienceUsers", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ContactlistAmendmentRequest" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "200": { - "description": "Summary of created request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ModifyAudienceResponse" - }, - "example": { - "data": { - "type": "ContactlistAmendment", - "attributes": { - "contactListId": 12, - "operation": "add", - "requestDate": "2018-12-10T10:00:50.0000000+00:00", - "identifierType": "madid", - "nbValidIdentifiers": 7343, - "nbInvalidIdentifiers": 13, - "sampleInvalidIdentifiers": [ - "InvalidIdentifier" - ] - } - }, - "errors": [ ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - }, - "404": { - "description": "Audience 123 not found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ErrorCodeResponse" - }, - "example": { - "errors": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "validation", - "code": "audience-invalid", - "instance": "/audience/314159", - "title": "Audience is invalid", - "detail": "Audience is not found, please choose a valid audience" - } - ], - "warnings": [ - { - "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", - "type": "deprecation", - "code": "deprecated-field", - "instance": "/audiences/314195", - "title": "'nbValidIds' is deprecated", - "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" - } - ] - } - } - } - } - } - }, - "parameters": [ - { - "name": "audience-id", - "in": "path", - "description": "The id of the audience to amend", - "required": true, - "style": "simple", - "schema": { - "type": "string", - "format": "int32" - } - } - ] - }, - "/2022-10/marketing-solutions/me": { - "get": { - "tags": [ - "Gateway" - ], - "description": "Get information about the currently logged application", - "operationId": "GetCurrentApplication", - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ApplicationSummaryModelResponse" - } - } - } - }, - "404": { - "description": "Not Found", - "content": { - "application/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/ad-sets": { - "patch": { - "tags": [ - "Campaign" - ], - "description": "Patch a list of AdSets.", - "operationId": "PatchAdSets", - "requestBody": { - "description": "List of adsets to patch.", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/RequestsPatchAdSet" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/RequestsPatchAdSet" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/RequestsPatchAdSet" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/RequestsPatchAdSet" - } - } - }, - "x-bodyName": "adSets" - }, - "responses": { - "200": { - "description": "List of patched adSets.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponseAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponseAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponseAdSetId" - } - } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/ad-sets/search": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Search for ad sets", - "operationId": "SearchAdSets", - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/RequestAdSetSearch" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/RequestAdSetSearch" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/RequestAdSetSearch" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/RequestAdSetSearch" - } - } - }, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "data for the ad sets", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponsesReadAdSet" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesReadAdSet" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesReadAdSet" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "Forbidden", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/ad-sets/start": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Start the specified list of ad sets", - "operationId": "StartAdSets", - "requestBody": { - "description": "All the ad sets to start", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - } - }, - "x-bodyName": "adSets" - }, - "responses": { - "200": { - "description": "List of ad sets that have been started and errors / warnings by ad set", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/ad-sets/stop": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Stop the specified list of ad sets", - "operationId": "StopAdSets", - "requestBody": { - "description": "All the ad sets to stop", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/RequestsAdSetId" - } - } - }, - "x-bodyName": "adSets" - }, - "responses": { - "200": { - "description": "List of ad sets that have been stopped and errors / warnings by ad set", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponsesAdSetId" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/ad-sets/{ad-set-id}/category-bids": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the Category Bids for all valid Categories associated to an Ad Set", - "operationId": "GetCategoryBidList", - "parameters": [ - { - "name": "ad-set-id", - "in": "path", - "description": "Id of the Ad Set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "List of Category Bids for all valid Categories associated to an Ad Set.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/AdSetCategoryBidListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/AdSetCategoryBidListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/AdSetCategoryBidListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - }, - "patch": { - "tags": [ - "Campaign" - ], - "description": "Patch Category Bids for one or more Categories in a single request. Partial success policy is followed.", - "operationId": "PatchCategoryBidList", - "parameters": [ - { - "name": "ad-set-id", - "in": "path", - "description": "Id of the Ad Set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" - } - } - }, - "x-bodyName": "categoryBidsToUpdate" - }, - "responses": { - "200": { - "description": "List of updated Category Bids for given Categories associated to an Ad Set.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/ad-sets/{ad-set-id}/display-multipliers": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the Display Multipliers for all valid Categories associated to an Ad Set", - "operationId": "GetDisplayMultipliers", - "parameters": [ - { - "name": "ad-set-id", - "in": "path", - "description": "Id of the Ad Set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "List of Display Multipliers for all valid Categories associated to an Ad Set.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - }, - "patch": { - "tags": [ - "Campaign" - ], - "description": "Patch Display Multipliers for one or more Categories in a single request. Partial success policy is followed.", - "operationId": "PatchDisplayMultipliers", - "parameters": [ - { - "name": "ad-set-id", - "in": "path", - "description": "Id of the Ad Set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" - } - } - }, - "x-bodyName": "displayMultipliersToUpdate" - }, - "responses": { - "200": { - "description": "List of updated Display Multipliers for given Categories associated to an Ad Set.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/ad-sets/{adSetId}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the data for the specified ad set", - "operationId": "GetAdSet", - "parameters": [ - { - "name": "adSetId", - "in": "path", - "description": "Id of the ad set", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "data for the ad set", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ResponseReadAdSet" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ResponseReadAdSet" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ResponseReadAdSet" - } - } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/campaigns": { - "patch": { - "tags": [ - "Campaign" - ], - "description": "Patch a list of Campaigns.", - "operationId": "PatchCampaigns", - "requestBody": { - "description": "List of campaigns to patch.", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/PatchCampaignListRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchCampaignListRequest" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchCampaignListRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/PatchCampaignListRequest" - } - } - }, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "List of patched campaigns.", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/PatchResultCampaignListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PatchResultCampaignListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PatchResultCampaignListResponse" - } - } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/campaigns/search": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Search for campaigns", - "operationId": "SearchCampaigns", - "requestBody": { - "description": "filters on campaigns", - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/CampaignSearchRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/CampaignSearchRequest" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/CampaignSearchRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/CampaignSearchRequest" - } - } - }, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "data for the campaigns", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/CampaignListResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/CampaignListResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/CampaignListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "Forbidden", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/marketing-solutions/campaigns/{campaign-id}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the data for the specified campaign", - "operationId": "GetCampaign", - "parameters": [ - { - "name": "campaign-id", - "in": "path", - "description": "Id of the campaign", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "data for the campaign", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/CampaignResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/CampaignResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/CampaignResponse" - } - } - } - }, - "401": { - "description": "The API client is not properly authenticated.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - }, - "403": { - "description": "The API client is not authorized to access this resource or the resource does not exist.", - "content": { - "text/plain": { }, - "application/json": { }, - "text/json": { } - } - } - } - } - }, - "/2022-10/log-level/advertisers/{advertiser-id}/report": { - "post": { - "tags": [ - "Analytics" - ], - "description": "This Statistics endpoint provides publisher data.", - "operationId": "GetTransparencyReport", - "parameters": [ - { - "name": "advertiser-id", - "in": "path", - "description": "The advertiser id to fetch the transparency data.", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int32" - } - } - ], - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/TransparencyQueryMessage" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/TransparencyQueryMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/TransparencyQueryMessage" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/TransparencyQueryMessage" - } - } - }, - "x-bodyName": "queryMessage" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TransparencyReportDataMessage" - }, - "example": { - "data": [ - { - "type": "TransparencyReport", - "attributes": { - "advertiserId": "123", - "tokenValidUntil": "2021-01-31T00:00:00.0000000+00:00", - "files": [ - { - "fileName": "report.csv", - "url": "https://www.example.com/transparency" - } - ] - } - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/TransparencyReportDataMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/TransparencyReportDataMessage" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "validation", - "code": "required-field", - "instance": "/report", - "title": "Start date and end date are required." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "access-control", - "code": "insufficient-advertiser-permission", - "instance": "/report", - "title": "Insufficient advertiser permission.", - "detail": "You do not have the rights to report on this advertiser." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - } - } - } - }, - "/2022-10/placements/report": { - "post": { - "tags": [ - "Analytics" - ], - "description": "Your ads are placed in different domains (publishers) and environments (websites and apps). Thanks to the placements endpoint, you can analyse the performances for each publisher, comparing displays, clicks and sales generated.", - "operationId": "GetPlacementsReport", - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" - } - } - }, - "x-bodyName": "dataMessage" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/json": { - "schema": { - "type": "string", - "format": "byte" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "validation", - "code": "required-field", - "instance": "/report", - "title": "Start date and end date are required." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "access-control", - "code": "insufficient-advertiser-permission", - "instance": "/report", - "title": "Insufficient advertiser permission.", - "detail": "You do not have the rights to report on this advertiser." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - } - } - } - }, - "/2022-10/statistics/report": { - "post": { - "tags": [ - "Analytics" - ], - "description": "This Statistics endpoint provides adset related data. It is an upgrade of our previous Statistics endpoint, and includes new metrics and customization capabilities.", - "operationId": "GetAdsetReport", - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/StatisticsReportQueryMessage" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/StatisticsReportQueryMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/StatisticsReportQueryMessage" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/StatisticsReportQueryMessage" - } - } - }, - "x-bodyName": "reportQuery" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/csv": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/xml": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "type": "string", - "format": "byte" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "validation", - "code": "required-field", - "instance": "/report", - "title": "Start date and end date are required." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/csv": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/xml": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "access-control", - "code": "insufficient-advertiser-permission", - "instance": "/report", - "title": "Insufficient advertiser permission.", - "detail": "You do not have the rights to report on this advertiser." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/csv": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/xml": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - } - } - } - }, - "/2022-10/transactions/report": { - "post": { - "tags": [ - "Analytics" - ], - "description": "This Transactions endpoint provides transactions id related data.", - "operationId": "GetTransactionsReport", - "requestBody": { - "content": { - "application/json-patch+json": { - "schema": { - "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" - } - } - }, - "x-bodyName": "dataMessage" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/json": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/csv": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "text/xml": { - "schema": { - "type": "string", - "format": "byte" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "type": "string", - "format": "byte" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "validation", - "code": "required-field", - "instance": "/report", - "title": "Start date and end date are required." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/csv": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/xml": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - }, - "example": { - "errors": [ - { - "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", - "traceIdentifier": "1234e1717d88aa8a", - "type": "access-control", - "code": "insufficient-advertiser-permission", - "instance": "/report", - "title": "Insufficient advertiser permission.", - "detail": "You do not have the rights to report on this advertiser." - } - ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/csv": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "text/xml": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - }, - "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { - "schema": { - "$ref": "#/components/schemas/ProblemsDetails" - } - } - } - } - } - } - }, - "/2022-10/advertisers/me": { - "get": { - "tags": [ - "Advertiser" - ], - "description": "Fetch the portfolio of Advertisers for this account", - "operationId": "ApiPortfolioGet", - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - }, - "example": { - "data": [ - { - "type": "advertiser", - "id": "13", - "attributes": { - "advertiserName": "ClientName1" - } - }, - { - "type": "advertiser", - "id": "1352", - "attributes": { - "advertiserName": "ClientName2" - } - }, - { - "type": "advertiser", - "id": "73550", - "attributes": { - "advertiserName": "ClientName3" - } - } - ], - "errors": [ ], - "warnings": [ ] - } - }, - "text/plain": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - } - } - }, - "401": { - "description": "Unauthorized", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/GetPortfolioResponse" - } - } - } - } - } - } - } - }, - "components": { - "schemas": { - "GetAudiencesResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Audience" - } - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Body of the GET audience operation" - }, - "ErrorCodeResponse": { - "required": [ - "errors" - ], - "type": "object", - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - }, - "nullable": true - } - }, - "description": "Definition of the error code" - }, - "NewAudienceResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/BasicAudienceDefinition" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Response of a newly created audience" - }, - "DeleteAudienceResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/BasicAudienceDefinition" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Response of an audience deletion" - }, - "ReplaceAudienceResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/BasicAudienceDefinition" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Response of an audience replacement" - }, - "DeleteAudienceContactListResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/BasicAudienceDefinition" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Response of a contactlist deletion" - }, - "ModifyAudienceResponse": { - "required": [ - "data", - "errors", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ContactlistOperation" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceError" - } - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AudienceWarning" - } - } - }, - "description": "Parameters to modify an audience" - }, - "NewAudienceRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/NewAudience" - } - }, - "description": "Body of creation of a new audience" - }, - "ReplaceAudienceRequest": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ReplaceAudience" - } - }, - "description": "Request to replace an audience" - }, - "ContactlistAmendmentRequest": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ContactlistAmendment" - } - }, - "description": "Request for a contactlist amendment" - }, - "Audience": { - "required": [ - "attributes", - "id", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "Audience" - }, - "id": { - "type": "string", - "description": "id of the Audience", - "example": "314159" - }, - "attributes": { - "required": [ - "created", - "description", - "name", - "updated" - ], - "type": "object", - "properties": { - "advertiserId": { - "type": "string", - "description": "The advertiser id that owns this Audience", - "format": "int32", - "nullable": true - }, - "name": { - "type": "string", - "description": "The name of the Audience" - }, - "description": { - "type": "string", - "description": "The string description of the Audience" - }, - "created": { - "type": "string", - "description": "Date and time ISO 8601 formatted string", - "format": "date-time" - }, - "updated": { - "type": "string", - "description": "Date and time ISO 8601 formatted string", - "format": "date-time" - }, - "nbLines": { - "type": "integer", - "description": "The number of line in the audience available once processed", - "nullable": true - }, - "nbLinesEmail": { - "type": "integer", - "description": "The number of email line in the audience available once processed", - "nullable": true - }, - "nbMatchesEmail": { - "type": "integer", - "description": "The number of email matches in the audience available once processed", - "nullable": true - } - } - } - }, - "description": "Definition of an audience and all its information" - }, - "AudienceError": { - "required": [ - "code", - "instance", - "type" - ], - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", - "nullable": true - }, - "type": { - "enum": [ - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "(REQUIRED) The classification of the error" - }, - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case." - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem" - }, - "title": { - "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type", - "nullable": true - }, - "detail": { - "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem", - "nullable": true - }, - "source": { - "type": "object", - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", - "nullable": true - }, - "stackTrace": { - "type": "array", - "items": { - "type": "string" - }, - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", - "nullable": true - } - }, - "description": "Definition of an audience error" - }, - "AudienceWarning": { - "required": [ - "code", - "detail", - "instance", - "type" - ], - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", - "nullable": true - }, - "type": { - "enum": [ - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "(REQUIRED) The classification of the error" - }, - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case." - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem" - }, - "title": { - "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type", - "nullable": true - }, - "detail": { - "type": "string", - "description": "(REQUIRED) A human-readable explanation specific to this occurrence of the problem" - }, - "source": { - "type": "object", - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", - "nullable": true - }, - "stackTrace": { - "type": "array", - "items": { - "type": "string" - }, - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", - "nullable": true - } - }, - "description": "Definition of the warning" - }, - "BasicAudienceDefinition": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "the id of the entity type" - }, - "type": { - "type": "string", - "description": "the name of the entity type" - }, - "attributes": { - "$ref": "#/components/schemas/AudienceNameDescription" - } - }, - "description": "Common definition of an audience" - }, - "ContactlistOperation": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type" - }, - "attributes": { - "required": [ - "operation" - ], - "type": "object", - "properties": { - "contactListId": { - "type": "integer", - "description": "the affected user list id", - "nullable": true - }, - "operation": { - "type": "string", - "description": "The action recorded" - }, - "requestDate": { - "type": "string", - "description": "When the action was recorded", - "format": "date-time", - "nullable": true - }, - "identifierType": { - "type": "string", - "description": "The schema specified for of the identifiers", - "nullable": true - }, - "nbValidIdentifiers": { - "type": "integer", - "description": "How many identifiers were valid for the specified schema", - "nullable": true - }, - "nbInvalidIdentifiers": { - "type": "integer", - "description": "How many identifiers were invalid for the specified schema", - "nullable": true - }, - "sampleInvalidIdentifiers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A sample of invalid identifiers if there is some", - "nullable": true - } - }, - "description": "the contactlist operation attributes" - } - }, - "description": "Response definition of a contactlist operation" - }, - "NewAudience": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "Audience" - }, - "attributes": { - "required": [ - "name" - ], - "type": "object", - "properties": { - "advertiserId": { - "type": "string", - "description": "The advertiser id to create the audience for", - "nullable": true - }, - "name": { - "type": "string", - "description": "The name of the new audience" - }, - "description": { - "type": "string", - "description": "The description of the audience", - "nullable": true - } - } - } - }, - "description": "Body for the creation of a new audience (name, advertiserId, etc)" - }, - "ReplaceAudience": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "Audience" - }, - "attributes": { - "$ref": "#/components/schemas/AudienceNameDescription" - } - }, - "description": "Parameters required to replace an audience" - }, - "ContactlistAmendment": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "User List", - "example": "ContactlistAmendment" - }, - "attributes": { - "required": [ - "identifiers", - "operation" - ], - "type": "object", - "properties": { - "operation": { - "enum": [ - "add", - "remove" - ], - "type": "string", - "description": "Operation to add or remove users" - }, - "identifierType": { - "enum": [ - "email", - "madid", - "identityLink", - "gum", - "customerid" - ], - "type": "string", - "description": "What type of identifiers are used", - "nullable": true - }, - "identifiers": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The users tos add or remove, each in the schema specified" - }, - "gumCallerId": { - "type": "integer", - "description": "The Gum caller id of the advertiser patching identifiers of type Gum", - "nullable": true - } - }, - "description": "the name of the entity type" - } - }, - "description": "Parameters for the amendment of a contactlist" - }, - "AudienceNameDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name to designate the audience by", - "nullable": true - }, - "description": { - "type": "string", - "description": "The description of the audience", - "nullable": true - } - }, - "description": "Description of an audience with name and detailed description" - }, - "ApplicationSummaryModelResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ApplicationSummaryModelResource" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Response of ApplicationSummaryModel" - }, - "ApplicationSummaryModelResource": { - "type": "object", - "properties": { - "type": { - "type": "string", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ApplicationSummaryModel" - } - }, - "description": "A class that represents a ValueType in a guild compliant way" - }, - "CommonProblem": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The request correlation ID this problem comes from.", - "nullable": true - }, - "traceIdentifier": { - "type": "string", - "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", - "nullable": true - }, - "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "The problem's category.", - "nullable": true - }, - "code": { - "type": "string", - "description": "A machine-readable error code, expressed as a string value.", - "nullable": true - }, - "instance": { - "type": "string", - "description": "A URI that identifies the specific occurrence of the problem.", - "nullable": true - }, - "title": { - "type": "string", - "description": "A short human-readable description of the problem type", - "nullable": true - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem", - "nullable": true - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "A machine-readable structure to reference to the exact location(s) causing the error(s)", - "nullable": true - }, - "stackTrace": { - "type": "string", - "nullable": true - } - }, - "description": "Common problem object. Can be specialized as needed." - }, - "ApplicationSummaryModel": { - "type": "object", - "properties": { - "applicationId": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "name": { - "type": "string", - "nullable": true - }, - "organizationId": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "description": { - "type": "string", - "nullable": true - }, - "criteoService": { - "type": "string", - "nullable": true - } - }, - "description": "Model of ApplicationSummary" - }, - "ResponseAdSetId": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ReadModelAdSetId" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "output resource" - }, - "ResponsesReadAdSet": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ReadModelReadAdSet" - }, - "nullable": true, - "readOnly": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "List of output resources" - }, - "ResponsesAdSetId": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ReadModelAdSetId" - }, - "nullable": true, - "readOnly": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "List of output resources" - }, - "AdSetCategoryBidListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/AdSetCategoryBidResource" - }, - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Data model for a list of response resources" - }, - "PatchAdSetCategoryBidResultListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResultResource" - }, - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Data model for a list of response resources" - }, - "AdSetDisplayMultiplierListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/AdSetDisplayMultiplierResource" - }, - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Data model for a list of response resources" - }, - "PatchAdSetDisplayMultiplierResultListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultResource" - }, - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Data model for a list of response resources" - }, - "ResponseReadAdSet": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ReadModelReadAdSet" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "output resource" - }, - "PatchResultCampaignListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchResultCampaignReadResource" - }, - "nullable": true, - "readOnly": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "List of output resources" - }, - "CampaignListResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CampaignReadResource" - }, - "nullable": true, - "readOnly": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "List of output resources" - }, - "CampaignResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/CampaignReadResource" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "output resource" - }, - "RequestsPatchAdSet": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/WriteModelPatchAdSet" - }, - "nullable": true - } - }, - "description": "List of input resources" - }, - "RequestAdSetSearch": { - "type": "object", - "properties": { - "filters": { - "$ref": "#/components/schemas/AdSetSearchFilter" - } - }, - "description": "request payload of the search endpoint" - }, - "RequestsAdSetId": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/WriteModelAdSetId" - }, - "nullable": true - } - }, - "description": "List of input resources" - }, - "PatchAdSetCategoryBidListRequest": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchAdSetCategoryBidResource" - }, - "nullable": true - } - }, - "description": "Data model for a list of input resources" - }, - "PatchAdSetDisplayMultiplierListRequest": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResource" - }, - "nullable": true - } - }, - "description": "Data model for a list of input resources" - }, - "PatchCampaignListRequest": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PatchCampaignWriteResource" - }, - "nullable": true - } - }, - "description": "List of input resources" - }, - "CampaignSearchRequest": { - "type": "object", - "properties": { - "filters": { - "$ref": "#/components/schemas/CampaignSearchFilters" - } - }, - "description": "request payload of the search endpoint" - }, - "ReadModelAdSetId": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true, - "readOnly": true - }, - "type": { - "type": "string", - "nullable": true, - "readOnly": true, - "example": "AdSetId" - } - }, - "description": "read model data for resources" - }, - "ProblemDetails": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The request correlation ID this problem comes from.", - "nullable": true - }, - "traceIdentifier": { - "type": "string", - "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", - "nullable": true - }, - "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "nullable": true - }, - "code": { - "type": "string", - "nullable": true - }, - "instance": { - "type": "string", - "nullable": true - }, - "title": { - "type": "string", - "nullable": true - }, - "detail": { - "type": "string", - "nullable": true - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "nullable": true - }, - "stackTrace": { - "type": "string", - "nullable": true - } - }, - "description": "Data model for common error or warning" - }, - "ReadModelReadAdSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true, - "readOnly": true - }, - "type": { - "type": "string", - "nullable": true, - "readOnly": true, - "example": "ReadAdSet" - }, - "attributes": { - "$ref": "#/components/schemas/ReadAdSet" - } - }, - "description": "read model data for resources" - }, - "AdSetCategoryBidResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/AdSetCategoryBid" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetCategoryBid" - } - }, - "description": "Data model for a Resource" - }, - "PatchAdSetCategoryBidResultResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetCategoryBid" - } - }, - "description": "Data model for a Resource" - }, - "AdSetDisplayMultiplierResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/AdSetDisplayMultiplier" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetDisplayMultiplier" - } - }, - "description": "Data model for a Resource" - }, - "PatchAdSetDisplayMultiplierResultResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetDisplayMultiplier" - } - }, - "description": "Data model for a Resource" - }, - "PatchResultCampaignReadResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true, - "readOnly": true - }, - "type": { - "type": "string", - "nullable": true, - "readOnly": true, - "example": "Campaign" - } - }, - "description": "read model data for resources" - }, - "CampaignReadResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true, - "readOnly": true - }, - "type": { - "type": "string", - "nullable": true, - "readOnly": true, - "example": "Campaign" - }, - "attributes": { - "$ref": "#/components/schemas/Campaign" - } - }, - "description": "read model data for resources" - }, - "WriteModelPatchAdSet": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "PatchAdSet" - }, - "attributes": { - "$ref": "#/components/schemas/PatchAdSet" - } - }, - "description": "write model data for resources" - }, - "AdSetSearchFilter": { - "type": "object", - "properties": { - "adSetIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Ad set ids to filter on", - "nullable": true - }, - "advertiserIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Advertiser ids which ad sets belongs to (indirectly via their marketing campaign)", - "nullable": true - }, - "campaignIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Campaign ids to filter on", - "nullable": true - } - }, - "description": "filter on ad set ids" - }, - "WriteModelAdSetId": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetId" - } - }, - "description": "write model data for resources" - }, - "PatchAdSetCategoryBidResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/PatchAdSetCategoryBid" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetCategoryBid" - } - }, - "description": "Data model for a Resource" - }, - "PatchAdSetDisplayMultiplierResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/PatchAdSetDisplayMultiplier" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "AdSetDisplayMultiplier" - } - }, - "description": "Data model for a Resource" - }, - "PatchCampaignWriteResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true, - "example": "Campaign" - }, - "attributes": { - "$ref": "#/components/schemas/PatchCampaign" - } - }, - "description": "write model data for resources" - }, - "CampaignSearchFilters": { - "type": "object", - "properties": { - "campaignIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Campaign ids to filter on", - "nullable": true - }, - "advertiserIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "Advertiser ids to which campaigns are linked to", - "nullable": true - } - }, - "description": "filters on campaign" - }, - "ReadAdSet": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the ad set", - "nullable": true - }, - "advertiserId": { - "type": "string", - "description": "Advertiser id of the campaign this ad set belongs to", - "nullable": true - }, - "datasetId": { - "type": "string", - "description": "Dataset id of this ad set", - "nullable": true - }, - "campaignId": { - "type": "string", - "description": "Campaign id this ad set belongs to", - "nullable": true - }, - "destinationEnvironment": { - "enum": [ - "undefined", - "web", - "app" - ], - "type": "string", - "description": "The environment that an ad click will lead a user to", - "nullable": true - }, - "schedule": { - "$ref": "#/components/schemas/ReadAdSetSchedule" - }, - "bidding": { - "$ref": "#/components/schemas/ReadAdSetBidding" - }, - "targeting": { - "$ref": "#/components/schemas/AdSetTargeting" - }, - "budget": { - "$ref": "#/components/schemas/ReadAdSetBudget" - }, - "mediaType": { - "enum": [ - "display", - "video" - ], - "type": "string", - "description": "Media type for the ad set", - "nullable": true - } - }, - "description": "ad set read model" - }, - "AdSetCategoryBid": { - "type": "object", - "properties": { - "categoryName": { - "type": "string", - "description": "The name of the Category to which the Category Bid has been applied.", - "nullable": true - }, - "bidAmount": { - "type": "number", - "description": "The Bid amount applied to the given Category associated to an Ad Set. At most 4 decimals are supported. Additional decimals are rounded.", - "format": "double", - "nullable": true - } - }, - "description": "Category Bid information about a Category for a given Ad Set." - }, - "AdSetDisplayMultiplier": { - "type": "object", - "properties": { - "categoryName": { - "type": "string", - "description": "The name of the Category to which the given for which the Display Multiplier has been applied.", - "nullable": true - }, - "displayMultiplier": { - "type": "number", - "description": "The Display Multiplier applied to the given Category associated to an Ad Set.", - "format": "double", - "nullable": true - } - }, - "description": "Display Multiplier information about a Category for a given Ad Set." - }, - "Campaign": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the campaign", - "nullable": true - }, - "advertiserId": { - "type": "string", - "description": "Advertiser id of the campaign", - "nullable": true - }, - "objective": { - "type": "string", - "description": "Campaign's marketing objective", - "nullable": true - }, - "spendLimit": { - "$ref": "#/components/schemas/CampaignSpendLimit" - }, - "goal": { - "enum": [ - "Unspecified", - "Acquisition", - "Retention" - ], - "type": "string", - "description": "Goal of the campaign", - "nullable": true - } - }, - "description": "campaign read model" - }, - "PatchAdSet": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the ad set", - "nullable": true - }, - "scheduling": { - "$ref": "#/components/schemas/PatchAdSetScheduling" - }, - "bidding": { - "$ref": "#/components/schemas/PatchAdSetBidding" - }, - "targeting": { - "$ref": "#/components/schemas/AdSetTargeting" - }, - "budget": { - "$ref": "#/components/schemas/PatchAdSetBudget" - } - }, - "description": "ad set patch model" - }, - "PatchAdSetCategoryBid": { - "type": "object", - "properties": { - "bidAmount": { - "type": "number", - "description": "The Bid amount applied to the given Category associated to an Ad Set. At most 4 decimals are supported. Additional decimals are rounded.", - "format": "double", - "nullable": true - } - }, - "description": "Category Bid to update for a given combination of Ad Set and Category." - }, - "PatchAdSetDisplayMultiplier": { - "type": "object", - "properties": { - "displayMultiplier": { - "type": "number", - "description": "Any positive decimal value. To remove the impact of the Display Multiplier set it to 1. At most 4 decimals are supported. Additional decimals are rounded.", - "format": "double", - "nullable": true - } - }, - "description": "Display Multiplier to update for a given combination of Ad Set and Category." - }, - "PatchCampaign": { - "type": "object", - "properties": { - "spendLimit": { - "$ref": "#/components/schemas/PatchCampaignSpendLimit" - } - }, - "description": "campaign patch model" - }, - "ReadAdSetSchedule": { - "type": "object", - "properties": { - "startDate": { - "$ref": "#/components/schemas/NillableDateTime" - }, - "endDate": { - "$ref": "#/components/schemas/NillableDateTime" - }, - "activationStatus": { - "enum": [ - "on", - "off" - ], - "type": "string", - "description": "Activation status of the ad set, i.e. whether the consumer wants it to deliver", - "nullable": true - }, - "deliveryStatus": { - "enum": [ - "draft", - "inactive", - "live", - "notLive", - "pausing", - "paused", - "scheduled", - "ended", - "notDelivering", - "archived" - ], - "type": "string", - "description": "Delivery status of the delivery of the ad set, i.e. whether the ad set is delivering", - "nullable": true - } - }, - "description": "ad set schedule read model" - }, - "ReadAdSetBidding": { - "type": "object", - "properties": { - "bidAmount": { - "$ref": "#/components/schemas/NillableDecimal" - }, - "bidStrategy": { - "enum": [ - "actions", - "clicks", - "conversions", - "displays", - "installs", - "revenue", - "storeConversions", - "value", - "viewedImpressions", - "Visits", - "completedVideoViews" - ], - "type": "string", - "description": "The intended optimization for the Ad Set", - "nullable": true - }, - "costController": { - "enum": [ - "COS", - "CPC", - "CPI", - "CPM", - "CPO", - "CPSV", - "CPV", - "dailyBudget" - ], - "type": "string", - "description": "How spend is controlled", - "nullable": true - } - }, - "description": "ad set bidding read model" - }, - "AdSetTargeting": { - "type": "object", - "properties": { - "deliveryLimitations": { - "$ref": "#/components/schemas/AdSetDeliveryLimitations" - }, - "geoLocation": { - "$ref": "#/components/schemas/AdSetGeoLocation" - }, - "frequencyCapping": { - "$ref": "#/components/schemas/AdSetFrequencyCapping" - } - }, - "description": "ad set targeting model" - }, - "ReadAdSetBudget": { - "type": "object", - "properties": { - "budgetStrategy": { - "enum": [ - "capped", - "uncapped" - ], - "type": "string", - "description": "Whether your budget is capped or not", - "nullable": true - }, - "budgetRenewal": { - "enum": [ - "undefined", - "daily", - "monthly", - "lifetime" - ], - "type": "string", - "description": "The pace of the budget renewal", - "nullable": true - }, - "budgetDeliverySmoothing": { - "enum": [ - "accelerated", - "standard" - ], - "type": "string", - "description": "The pace at which the budget can be spent", - "nullable": true - }, - "budgetDeliveryWeek": { - "enum": [ - "undefined", - "mondayToSunday", - "tuesdayToMonday", - "wednesdayToTuesday", - "thursdayToWednesday", - "fridayToThursday", - "saturdayToFriday", - "sundayToSaturday" - ], - "type": "string", - "description": "The delivery week for the budget", - "nullable": true - }, - "budgetAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "ad set budget read model" - }, - "CampaignSpendLimit": { - "type": "object", - "properties": { - "spendLimitType": { - "enum": [ - "capped", - "uncapped" - ], - "type": "string", - "description": "Whether your spend limit is capped or not", - "nullable": true - }, - "spendLimitRenewal": { - "enum": [ - "undefined", - "daily", - "monthly", - "lifetime" - ], - "type": "string", - "description": "The pace of the spend limit renewal", - "nullable": true - }, - "spendLimitAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "campaign spend limit model" - }, - "PatchAdSetScheduling": { - "type": "object", - "properties": { - "startDate": { - "$ref": "#/components/schemas/NillableDateTime" - }, - "endDate": { - "$ref": "#/components/schemas/NillableDateTime" - } - }, - "description": "ad set schedule patch model" - }, - "PatchAdSetBidding": { - "type": "object", - "properties": { - "bidAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "ad set bidding patch model" - }, - "PatchAdSetBudget": { - "type": "object", - "properties": { - "budgetStrategy": { - "enum": [ - "capped", - "uncapped" - ], - "type": "string", - "description": "Whether your budget is capped or not", - "nullable": true - }, - "budgetRenewal": { - "enum": [ - "undefined", - "daily", - "monthly", - "lifetime" - ], - "type": "string", - "description": "The pace of the budget renewal", - "nullable": true - }, - "budgetDeliverySmoothing": { - "enum": [ - "accelerated", - "standard" - ], - "type": "string", - "description": "The pace at which the budget can be spent", - "nullable": true - }, - "budgetDeliveryWeek": { - "enum": [ - "undefined", - "mondayToSunday", - "tuesdayToMonday", - "wednesdayToTuesday", - "thursdayToWednesday", - "fridayToThursday", - "saturdayToFriday", - "sundayToSaturday" - ], - "type": "string", - "description": "The delivery week for the budget", - "nullable": true - }, - "budgetAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "ad set budget patch model" - }, - "PatchCampaignSpendLimit": { - "type": "object", - "properties": { - "spendLimitType": { - "enum": [ - "capped", - "uncapped" - ], - "type": "string", - "description": "Whether your spend limit is capped or not", - "nullable": true - }, - "spendLimitRenewal": { - "enum": [ - "undefined", - "daily", - "monthly", - "lifetime" - ], - "type": "string", - "description": "The pace of the spend limit renewal", - "nullable": true - }, - "spendLimitAmount": { - "$ref": "#/components/schemas/NillableDecimal" - } - }, - "description": "campaign spend limit model" - }, - "NillableDateTime": { - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "type": "string", - "format": "date-time", - "nullable": true, - "x-nullable": true - } - }, - "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." - }, - "NillableDecimal": { - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "type": "number", - "format": "double", - "nullable": true, - "x-nullable": true - } - }, - "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." - }, - "AdSetDeliveryLimitations": { - "type": "object", - "properties": { - "environments": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "web", - "inApp" - ], - "type": "string" - }, - "description": "List of environments which the ad set should target", - "nullable": true - }, - "devices": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "other", - "desktop", - "mobile", - "tablet" - ], - "type": "string" - }, - "description": "List of devices which the ad set should target", - "nullable": true - }, - "operatingSystems": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "android", - "ios", - "unknown" - ], - "type": "string" - }, - "description": "List of operating systems which the ad set should target", - "nullable": true - } - }, - "description": "ad set delivery limitations model" - }, - "AdSetGeoLocation": { - "type": "object", - "properties": { - "countries": { - "$ref": "#/components/schemas/NillableAdSetTargetingRule" - }, - "subdivisions": { - "$ref": "#/components/schemas/NillableAdSetTargetingRule" - }, - "zipCodes": { - "$ref": "#/components/schemas/NillableAdSetTargetingRule" - } - }, - "description": "ad set geolocation model" - }, - "AdSetFrequencyCapping": { - "type": "object", - "properties": { - "frequency": { - "enum": [ - "hourly", - "daily", - "lifetime", - "advanced" - ], - "type": "string", - "description": "Period on which impression limitation is calculated", - "nullable": true - }, - "maximumImpressions": { - "type": "integer", - "description": "Maximum impressions for the specified period", - "format": "int32", - "nullable": true - } - }, - "description": "ad set frequency capping model" - }, - "NillableAdSetTargetingRule": { - "required": [ - "value" - ], - "type": "object", - "properties": { - "value": { - "allOf": [ - { - "$ref": "#/components/schemas/AdSetTargetingRule" - } - ], - "nullable": true, - "x-nullable": true - } - }, - "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." - }, - "AdSetTargetingRule": { - "type": "object", - "properties": { - "operand": { - "enum": [ - "undefined", - "in", - "notIn" - ], - "type": "string", - "description": "Operand which states how the values should be applied", - "nullable": true - }, - "values": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "List of values to apply", - "nullable": true - } - }, - "description": "ad set targeting rule model" - }, - "TransparencyReportDataMessage": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/TransparencyReportEntityMessage" - } - } - }, - "description": "This is the message defining the response for Transparency report" - }, - "ProblemsDetails": { - "type": "object", - "properties": { - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Common problems object" - }, - "TransparencyQueryMessage": { - "required": [ - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "shouldDisplayProductIds": { - "type": "boolean", - "description": "Specify if the product ids are displayed in the report.", - "default": false, - "nullable": true - }, - "startDate": { - "type": "string", - "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - } - }, - "description": "This is the message defining the query for Transparency report", - "example": { - "shouldDisplayProductIds": false, - "startDate": "2023-04-03T00:00:00.0000000+00:00", - "endDate": "2023-04-06T00:00:00.0000000+00:00" - } - }, - "PlacementsReportQueryDataMessage": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/PlacementsReportQueryEntityMessage" - } - } - }, - "description": "Contains queries for Placements report", - "example": { - "data": [ - { - "type": "PlacementReport", - "attributes": { - "advertiserIds": "123,456,789", - "campaignIds": "111,222,333,444", - "adsetIds": "135,246,357,468", - "environment": "web", - "placement": "MyPlacement", - "dimensions": [ - "AdsetId", - "AdvertiserId", - "Placement" - ], - "metrics": [ - "clicks", - "displays", - "cost" - ], - "currency": "EUR", - "disclosed": false, - "format": "csv", - "timezone": "Europe/Paris", - "startDate": "2022-08-29T00:00:00.0000000+00:00", - "endDate": "2022-08-29T00:00:00.0000000+00:00" - } - } - ] - } - }, - "StatisticsReportQueryMessage": { - "required": [ - "dimensions", - "metrics", - "currency", - "format", - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "advertiserIds": { - "type": "string", - "description": "The comma-separated list of advertiser ids. If empty, all the advertisers in the portfolio will be used", - "nullable": true - }, - "adSetIds": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "list of adSets ids. If empty, all the adSets will be fetched", - "nullable": true - }, - "adSetNames": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "list of adSets names. If empty, all the adSets will be fetched", - "nullable": true - }, - "adSetStatus": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "list of adSets status. If empty, all the adSets will be fetched", - "nullable": true - }, - "dimensions": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "AdsetId", - "Adset", - "AdvertiserId", - "Advertiser", - "CategoryId", - "Category", - "Hour", - "Day", - "Week", - "Month", - "Year", - "Os", - "Device", - "CampaignId", - "Campaign", - "AdId", - "Ad", - "CouponId", - "Coupon", - "MarketingObjectiveId", - "MarketingObjective", - "ChannelId", - "Channel", - "Goal" - ], - "type": "string" - }, - "description": "The dimensions for the report." - }, - "metrics": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of metrics to report." - }, - "currency": { - "type": "string", - "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." - }, - "format": { - "type": "string", - "description": "The file format of the generated report: csv, xml, excel or json." - }, - "timezone": { - "type": "string", - "description": "The timezone used for the report. Timezone Database format (Tz).", - "default": "UTC", - "nullable": true - }, - "startDate": { - "type": "string", - "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - } - }, - "description": "This is the message defining the query for Adset report", - "example": { - "advertiserIds": "123,456,789", - "adSetIds": [ - "12345", - "54321" - ], - "adSetNames": [ - "myAdSet1", - "myAdSet2" - ], - "adSetStatus": [ - "Active" - ], - "dimensions": [ - "CampaignId", - "Campaign", - "AdsetId", - "Adset", - "AdvertiserId", - "Advertiser", - "AdId", - "Ad", - "CouponId", - "Coupon", - "CategoryId", - "Category", - "Hour", - "Day", - "Week", - "Month", - "Year", - "Os", - "Device" - ], - "metrics": [ - "Clicks", - "Displays", - "Cpc", - "Visits" - ], - "currency": "EUR", - "format": "csv", - "timezone": "Europe/Paris", - "startDate": "2022-08-29T00:00:00.0000000+00:00", - "endDate": "2022-09-01T00:00:00.0000000+00:00" - } - }, - "TransactionsReportQueryDataMessage": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/TransactionsReportQueryEntityMessage" - } - } - }, - "description": "Contains queries for Transactions report", - "example": { - "data": [ - { - "type": "TransactionsReport", - "attributes": { - "advertiserIds": "123,456,789", - "eventType": "display", - "currency": "EUR", - "format": "csv", - "timezone": "Europe/Paris", - "startDate": "2023-04-03T00:00:00.0000000+00:00", - "endDate": "2023-04-03T00:00:00.0000000+00:00" - } - } - ] - } - }, - "TransparencyReportEntityMessage": { - "required": [ - "type", - "attributes" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "readOnly": true - }, - "attributes": { - "$ref": "#/components/schemas/TransparencyReportAttributes" - } - }, - "description": "This is the message defining the entity response for Transparency report" - }, - "PlacementsReportQueryEntityMessage": { - "required": [ - "type", - "attributes" - ], - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "attributes": { - "$ref": "#/components/schemas/PlacementsReportQueryMessage" - } - }, - "description": "Contains a query for Transaction report and its type" - }, - "TransactionsReportQueryEntityMessage": { - "required": [ - "type", - "attributes" - ], - "type": "object", - "properties": { - "type": { - "type": "string" - }, - "attributes": { - "$ref": "#/components/schemas/TransactionsReportQueryMessage" - } - }, - "description": "Contains a query for Transaction report and its type" - }, - "TransparencyReportAttributes": { - "required": [ - "advertiserId", - "tokenValidUntil", - "files" - ], - "type": "object", - "properties": { - "advertiserId": { - "type": "string" - }, - "tokenValidUntil": { - "type": "string", - "format": "date-time" - }, - "files": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/TransparencyReportFile" - } - } - }, - "description": "This is the message defining the attribute response for Transparency report" - }, - "PlacementsReportQueryMessage": { - "required": [ - "advertiserIds", - "dimensions", - "metrics", - "currency", - "format", - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "advertiserIds": { - "type": "string", - "description": "The comma-separated list of advertiser ids." - }, - "campaignIds": { - "type": "string", - "description": "The comma-separated list of campaign ids.", - "nullable": true - }, - "adsetIds": { - "type": "string", - "description": "The comma-separated list of adSet ids.", - "nullable": true - }, - "environment": { - "type": "string", - "description": "Type of environment: Web, Android or iOS.", - "nullable": true - }, - "placement": { - "type": "string", - "description": "Filter the value of the placement", - "nullable": true - }, - "dimensions": { - "uniqueItems": false, - "type": "array", - "items": { - "enum": [ - "AdsetId", - "AdvertiserId", - "Placement", - "Environment", - "AdsetName", - "AdvertiserName", - "CampaignId", - "CampaignName" - ], - "type": "string" - }, - "description": "The dimensions for the report." - }, - "metrics": { - "uniqueItems": false, - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of metrics to report." - }, - "currency": { - "type": "string", - "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." - }, - "disclosed": { - "type": "boolean", - "description": "Returns disclosed or undisclosed placements.", - "default": true, - "nullable": true - }, - "format": { - "type": "string", - "description": "The file format of the generated report: csv, xml, excel or json." - }, - "timezone": { - "type": "string", - "description": "The timezone used for the report. Timezone Database format (Tz).", - "default": "UTC", - "nullable": true - }, - "startDate": { - "type": "string", - "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - } - }, - "description": "This is the message defining the query for Placements report" - }, - "TransactionsReportQueryMessage": { - "required": [ - "currency", - "format", - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "advertiserIds": { - "type": "string", - "description": "The comma-separated list of advertiser ids. If empty, all the advertisers in the portfolio will be used", - "nullable": true - }, - "eventType": { - "type": "string", - "description": "Apply a filter on Event type .", - "nullable": true - }, - "currency": { - "type": "string", - "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." - }, - "format": { - "type": "string", - "description": "The file format of the generated report: csv, xml, excel or json." - }, - "timezone": { - "type": "string", - "description": "The timezone used for the report. Timezone Database format (Tz).", - "default": "UTC", - "nullable": true - }, - "startDate": { - "type": "string", - "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", - "format": "date-time" - } - }, - "description": "This is the message defining the query for Transaction report" - }, - "TransparencyReportFile": { - "required": [ - "fileName", - "url" - ], - "type": "object", - "properties": { - "fileName": { - "type": "string" - }, - "url": { - "type": "string" - } - }, - "description": "This is the message defining the file response for Transparency report" - }, - "GetPortfolioResponse": { - "type": "object", - "properties": { - "data": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/EntityOfPortfolioMessage" - }, - "description": "The response�s primary data", - "nullable": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CriteoApiError" - }, - "description": "Error list returned by the Criteo API\r\nFor successful requests it is empty", - "nullable": true - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CriteoApiWarning" - }, - "description": "Warnings list returned by the Criteo API\r\nIn some situations the operations are successful but it may be useful to issue warnings to the API consumer.\r\nFor example the endpoint, entity or field is deprecated. Warnings are like compiler warnings, they indicate that problems may occur in the future.", - "nullable": true - } - }, - "description": "Portfolio fetch Response" - }, - "EntityOfPortfolioMessage": { - "type": "object", - "properties": { - "type": { - "enum": [ - "campaign", - "adset", - "ad", - "advertiser", - "agency", - "publisher", - "address", - "client", - "contact", - "industry" - ], - "type": "string", - "description": "A string containing the entity type", - "nullable": true, - "example": "campaign" - }, - "id": { - "type": "string", - "description": "A opaque string containing the unique Id of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/PortfolioMessage" - }, - "meta": { - "type": "object", - "description": "A meta object that contains application-specific metadata", - "nullable": true - } - }, - "description": "Generic Criteo API successful data model" - }, - "CriteoApiError": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The correlation ID provided by the gateway", - "nullable": true - }, - "type": { - "enum": [ - "access_control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "A machine-readable code specifying error category", - "nullable": true, - "example": "access_control" - }, - "code": { - "enum": [ - "internal-error", - "deprecated-field", - "endpoint-deprecated", - "required-field", - "invalid-date-format", - "invalid", - "invalid-ranged", - "invalid-timespan" - ], - "type": "string", - "description": "A machine-readable error code string in kabab-case. Unique across Criteo", - "nullable": true, - "example": "internal-error" - }, - "instance": { - "type": "string", - "description": "A URI reference that identifies the specific occurrence of the problem", - "nullable": true - }, - "title": { - "type": "string", - "description": "A short, human-readable remarks of the problem type.", - "nullable": true - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem.", - "nullable": true - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "A machine-readable structure to reference to the exact location(s) causing the error(s).", - "nullable": true - } - }, - "description": "Criteo API response error" - }, - "CriteoApiWarning": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The correlation ID provided by the gateway", - "nullable": true - }, - "type": { - "enum": [ - "access_control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "A machine-readable code specifying error category", - "nullable": true, - "example": "access_control" - }, - "code": { - "enum": [ - "internal-error", - "deprecated-field", - "endpoint-deprecated", - "required-field", - "invalid-date-format", - "invalid", - "invalid-ranged", - "invalid-timespan" - ], - "type": "string", - "description": "A machine-readable error code string in kabab-case. Unique across Criteo", - "nullable": true, - "example": "internal-error" - }, - "instance": { - "type": "string", - "description": "A URI reference that identifies the specific occurrence of the problem", - "nullable": true - }, - "title": { - "type": "string", - "description": "A short, human-readable remarks of the problem type.", - "nullable": true - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem.", - "nullable": true - } - }, - "description": "Criteo API response warning" - }, - "PortfolioMessage": { - "type": "object", - "properties": { - "advertiserName": { - "type": "string", - "nullable": true - } - }, - "description": "Class with elementary info about advertiser" - } - }, - "securitySchemes": { - "oauth": { - "type": "oauth2", - "flows": { - "clientCredentials": { - "tokenUrl": "https://api.criteo.com/oauth2/token", - "scopes": { } - }, - "authorizationCode": { - "authorizationUrl": "https://api.criteo.com/oauth2", - "tokenUrl": "https://api.criteo.com/oauth2/token", - "scopes": { } - } - } - } - } - }, - "security": [ - { - "oauth": [ ] - } - ], - "x-samples-languages": [ - "java", - "python", - "php", - "csharp", - "javascript", - "curl", - "ruby" - ] -} \ No newline at end of file diff --git a/api-specifications/marketingsolutions_2023-01.json b/api-specifications/marketingsolutions_2023-01.json index ab6e5da..3934951 100644 --- a/api-specifications/marketingsolutions_2023-01.json +++ b/api-specifications/marketingsolutions_2023-01.json @@ -355,7 +355,7 @@ "tags": [ "Audience" ], - "description": "delete all identifiers from an Audience", + "description": "Delete all identifiers from a contact list audience-segment.", "operationId": "deleteIdentifiers", "responses": { "200": { @@ -423,7 +423,7 @@ "tags": [ "Audience" ], - "description": "Add/remove users to or from an audience", + "description": "Add/remove users to or from a contact list audience-segment.", "operationId": "modifyAudienceUsers", "requestBody": { "content": { diff --git a/api-specifications/marketingsolutions_2023-04.json b/api-specifications/marketingsolutions_2023-04.json index 997ba8f..5f70f26 100644 --- a/api-specifications/marketingsolutions_2023-04.json +++ b/api-specifications/marketingsolutions_2023-04.json @@ -355,7 +355,7 @@ "tags": [ "Audience" ], - "description": "delete all identifiers from an Audience", + "description": "Delete all identifiers from a contact list audience-segment.", "operationId": "deleteIdentifiers", "responses": { "200": { @@ -423,7 +423,7 @@ "tags": [ "Audience" ], - "description": "Add/remove users to or from an audience", + "description": "Add/remove users to or from a contact list audience-segment.", "operationId": "modifyAudienceUsers", "requestBody": { "content": { diff --git a/api-specifications/marketingsolutions_2023-07.json b/api-specifications/marketingsolutions_2023-07.json index 9b4b17c..50273a8 100644 --- a/api-specifications/marketingsolutions_2023-07.json +++ b/api-specifications/marketingsolutions_2023-07.json @@ -355,7 +355,7 @@ "tags": [ "Audience" ], - "description": "delete all identifiers from an Audience", + "description": "Delete all identifiers from a contact list audience-segment.", "operationId": "deleteIdentifiers", "responses": { "200": { @@ -423,7 +423,7 @@ "tags": [ "Audience" ], - "description": "Add/remove users to or from an audience", + "description": "Add/remove users to or from a contact list audience-segment.", "operationId": "modifyAudienceUsers", "requestBody": { "content": { diff --git a/api-specifications/marketingsolutions_2023-10.json b/api-specifications/marketingsolutions_2023-10.json new file mode 100644 index 0000000..e361f05 --- /dev/null +++ b/api-specifications/marketingsolutions_2023-10.json @@ -0,0 +1,11264 @@ +{ + "openapi": "3.0.1", + "info": { + "title": "Criteo API", + "description": "Criteo API - MarketingSolutions", + "version": "2023-10" + }, + "servers": [ + { + "url": "https://api.criteo.com" + } + ], + "paths": { + "/2023-10/marketing-solutions/audience-segments/{audience-segment-id}/contact-list": { + "delete": { + "tags": [ + "Audience" + ], + "description": "Delete all identifiers from a contact list audience-segment.", + "operationId": "deleteContactListIdentifiers", + "responses": { + "200": { + "description": "The Contact List was emptied", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteAudienceContactListResponse" + }, + "example": { + "data": { + "id": "1", + "type": "AudienceContactlist" + }, + "errors": [ ], + "warnings": [ + { + "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", + "type": "deprecation", + "code": "deprecated-field", + "instance": "/audiences/314195", + "title": "'nbValidIds' is deprecated", + "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" + } + ] + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorCodeResponse" + }, + "example": { + "errors": [ + { + "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", + "type": "validation", + "code": "audience-invalid", + "instance": "/audience/314159", + "title": "Audience is invalid", + "detail": "Audience is not found, please choose a valid audience" + } + ], + "warnings": [ + { + "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", + "type": "deprecation", + "code": "deprecated-field", + "instance": "/audiences/314195", + "title": "'nbValidIds' is deprecated", + "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" + } + ] + } + } + } + } + } + }, + "patch": { + "tags": [ + "Audience" + ], + "description": "Add/remove identifiers to or from a contact list audience-segment.", + "operationId": "updateContactListIdentifiers", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ContactlistAmendmentRequest" + } + } + }, + "required": true, + "x-bodyName": "body" + }, + "responses": { + "200": { + "description": "Summary of created request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ModifyAudienceResponse" + }, + "example": { + "data": { + "type": "ContactlistAmendment", + "attributes": { + "contactListId": 12, + "operation": "add", + "requestDate": "2018-12-10T10:00:50.0000000+00:00", + "identifierType": "madid", + "nbValidIdentifiers": 7343, + "nbInvalidIdentifiers": 13, + "sampleInvalidIdentifiers": [ + "InvalidIdentifier" + ] + } + }, + "errors": [ ], + "warnings": [ + { + "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", + "type": "deprecation", + "code": "deprecated-field", + "instance": "/audiences/314195", + "title": "'nbValidIds' is deprecated", + "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" + } + ] + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorCodeResponse" + }, + "example": { + "errors": [ + { + "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", + "type": "validation", + "code": "audience-invalid", + "instance": "/audience/314159", + "title": "Audience is invalid", + "detail": "Audience is not found, please choose a valid audience" + } + ], + "warnings": [ + { + "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", + "type": "deprecation", + "code": "deprecated-field", + "instance": "/audiences/314195", + "title": "'nbValidIds' is deprecated", + "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" + } + ] + } + } + } + }, + "404": { + "description": "Audience 123 not found", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ErrorCodeResponse" + }, + "example": { + "errors": [ + { + "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", + "type": "validation", + "code": "audience-invalid", + "instance": "/audience/314159", + "title": "Audience is invalid", + "detail": "Audience is not found, please choose a valid audience" + } + ], + "warnings": [ + { + "traceId": "56ed4096-f96a-4944-8881-05468efe0ec9", + "type": "deprecation", + "code": "deprecated-field", + "instance": "/audiences/314195", + "title": "'nbValidIds' is deprecated", + "detail": "The field 'nbValidIds' is deprecated please use 'nbValidIdentifiers" + } + ] + } + } + } + } + } + }, + "parameters": [ + { + "name": "audience-segment-id", + "in": "path", + "description": "The id of the contact list audience-segment to amend", + "required": true, + "style": "simple", + "schema": { + "type": "string", + "format": "int32" + } + } + ] + }, + "/2023-10/marketing-solutions/me": { + "get": { + "tags": [ + "Gateway" + ], + "description": "Get information about the currently logged application", + "operationId": "GetCurrentApplication", + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApplicationSummaryModelResponse" + } + } + } + }, + "404": { + "description": "Not Found", + "content": { + "application/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ad-sets/{ad-set-id}/audience": { + "put": { + "tags": [ + "Campaign" + ], + "description": "Link or unlink an audience with an ad set", + "operationId": "updateAdSetAudience", + "parameters": [ + { + "name": "ad-set-id", + "in": "path", + "description": "The ad set ID.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "description": "Ad set-Audience update request.", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AdSetAudienceLinkInputEntityV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AdSetAudienceLinkInputEntityV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AdSetAudienceLinkInputEntityV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AdSetAudienceLinkInputEntityV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AdSetAudienceLinkEntityV1Response" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AdSetAudienceLinkEntityV1Response" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AdSetAudienceLinkEntityV1Response" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments": { + "patch": { + "tags": [ + "Audience" + ], + "description": "Updates the properties of all segments with a valid configuration, and returns their IDs. For those that cannot be updated, one or multiple errors are returned.", + "operationId": "bulkUpdateAudienceSegments", + "requestBody": { + "description": "Segment Update request", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkUpdateInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkUpdateInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkUpdateInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkUpdateInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success or partial success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments/compute-sizes": { + "post": { + "tags": [ + "Audience" + ], + "description": "Gets the size of all segments. An error is returned for those whose size calculation is not supported.", + "operationId": "computeAudienceSegmentsSizes", + "requestBody": { + "description": "", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentComputeSizesInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentComputeSizesInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentComputeSizesInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentComputeSizesInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success or partial success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSizeEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSizeEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSizeEntityV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments/create": { + "post": { + "tags": [ + "Audience" + ], + "description": "Creates all segments with a valid configuration, and returns their IDs. For those that cannot be created, one or multiple errors are returned.", + "operationId": "bulkCreateAudienceSegments", + "requestBody": { + "description": "Segment creation parameter", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkCreateInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkCreateInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkCreateInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkCreateInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success or partial success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments/delete": { + "post": { + "tags": [ + "Audience" + ], + "description": "Delete the segments associated to the given audience IDs.", + "operationId": "bulkDeleteAudienceSegments", + "requestBody": { + "description": "Segment delete request.", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkDeleteInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkDeleteInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkDeleteInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentBulkDeleteInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success or partial success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentIdEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentIdEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentIdEntityV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments/estimate-size": { + "post": { + "tags": [ + "Audience" + ], + "description": "Gets the size estimation of a non existent segment. An error is returned when size calculation is not supported.", + "operationId": "estimateAudienceSegmentSize", + "requestBody": { + "description": "", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEstimateSizeInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEstimateSizeInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEstimateSizeInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEstimateSizeInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSizeEstimationV1Response" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSizeEstimationV1Response" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSizeEstimationV1Response" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments/in-market-brands": { + "get": { + "tags": [ + "Audience" + ], + "description": "Returns a list with all available in-market brands that can be used to define an in-market segment.", + "operationId": "getAudienceSegmentsInMarketBrands", + "parameters": [ + { + "name": "advertiser-id", + "in": "query", + "description": "The advertiser ID.", + "required": true, + "style": "form", + "schema": { + "type": "string" + } + }, + { + "name": "country", + "in": "query", + "description": "The ISO 3166-1 alpha-2 country code.", + "required": true, + "style": "form", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/InMarketAudienceSegmentBrandEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/InMarketAudienceSegmentBrandEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/InMarketAudienceSegmentBrandEntityV1ListResponse" + } + } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments/in-market-interests": { + "get": { + "tags": [ + "Audience" + ], + "description": "Returns a list with all available in-market interests that can be used to define an in-market segment. These in-market interests correspond to the Google product taxonomy.", + "operationId": "getAudienceSegmentsInMarketInterests", + "parameters": [ + { + "name": "advertiser-id", + "in": "query", + "description": "The advertiser ID.", + "required": true, + "style": "form", + "schema": { + "type": "string" + } + }, + { + "name": "country", + "in": "query", + "description": "The ISO 3166-1 alpha-2 country code.", + "required": true, + "style": "form", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/InMarketAudienceSegmentInterestEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/InMarketAudienceSegmentInterestEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/InMarketAudienceSegmentInterestEntityV1ListResponse" + } + } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments/search": { + "post": { + "tags": [ + "Audience" + ], + "description": "Returns a list of segments that match the provided filters. If present, the filters are AND'ed together when applied.", + "operationId": "searchAudienceSegments", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "The number of elements to be returned. The default is 50 and the maximum is 100.", + "style": "form", + "schema": { + "maximum": 100, + "minimum": 0, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "offset", + "in": "query", + "description": "The (zero-based) offset into the collection. The default is 0.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + } + ], + "requestBody": { + "description": "Segment search filters.", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSearchInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSearchInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSearchInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentSearchInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1AudienceSegmentSearchMetadataV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1AudienceSegmentSearchMetadataV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1AudienceSegmentSearchMetadataV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audience-segments/{audience-segment-id}/contact-list/statistics": { + "get": { + "tags": [ + "Audience" + ], + "description": "Returns the statistics of a contact list segment.", + "operationId": "getAudienceSegmentContactListStatistics", + "parameters": [ + { + "name": "audience-segment-id", + "in": "path", + "description": "The segment ID.", + "required": true, + "style": "simple", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ContactListStatisticsEntityV1Response" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ContactListStatisticsEntityV1Response" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ContactListStatisticsEntityV1Response" + } + } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audiences": { + "patch": { + "tags": [ + "Audience" + ], + "description": "Updates the properties of all audiences with a valid configuration, and returns their IDs. For those that cannot be updated, one or multiple errors are returned.", + "operationId": "bulkUpdateAudiences", + "requestBody": { + "description": "", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkUpdateInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkUpdateInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkUpdateInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkUpdateInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success or partial success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audiences/compute-sizes": { + "post": { + "tags": [ + "Audience" + ], + "description": "Gets the size of all audiences. An error is returned for those whose size calculation is not supported.", + "operationId": "computeAudiencesSizes", + "requestBody": { + "description": "", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceComputeSizesInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceComputeSizesInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceComputeSizesInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceComputeSizesInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success or partial success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceSizeEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSizeEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSizeEntityV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audiences/create": { + "post": { + "tags": [ + "Audience" + ], + "description": "Creates all audiences with a valid configuration, and returns their IDs. For those that cannot be created, one or multiple errors are returned.", + "operationId": "bulkCreateAudiences", + "requestBody": { + "description": "", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkCreateInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkCreateInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkCreateInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkCreateInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success or partial success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audiences/delete": { + "post": { + "tags": [ + "Audience" + ], + "description": "Deletes the audiences associated to the given audience IDs.", + "operationId": "bulkDeleteAudiences", + "requestBody": { + "description": "", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkDeleteInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkDeleteInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkDeleteInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceBulkDeleteInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceIdEntityV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceIdEntityV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceIdEntityV1ListResponse" + } + } + } + }, + "204": { + "description": "Success or partial success", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audiences/estimate-size": { + "post": { + "tags": [ + "Audience" + ], + "description": "Gets the size estimation of a non existent audience. An error is returned when size calculation is not supported.", + "operationId": "estimateAudienceSize", + "requestBody": { + "description": "", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceEstimateSizeInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceEstimateSizeInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceEstimateSizeInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceEstimateSizeInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success or partial success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceSizeEstimationV1Response" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSizeEstimationV1Response" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSizeEstimationV1Response" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/audiences/search": { + "post": { + "tags": [ + "Audience" + ], + "description": "Returns a list of audiences that match the provided filters. If present, the filters are AND'ed together when applied.", + "operationId": "searchAudiences", + "parameters": [ + { + "name": "limit", + "in": "query", + "description": "The number of elements to be returned. The default is 50 and the maximum is 100.", + "style": "form", + "schema": { + "maximum": 100, + "minimum": 0, + "type": "integer", + "format": "int32", + "default": 50 + } + }, + { + "name": "offset", + "in": "query", + "description": "The (zero-based) offset into the collection. The default is 0.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32", + "default": 0 + } + } + ], + "requestBody": { + "description": "Audience search filters.", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSearchInputV1" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSearchInputV1" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceSearchInputV1" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AudienceSearchInputV1" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1AudienceSearchMetadataV1ListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1AudienceSearchMetadataV1ListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AudienceEntityV1AudienceSearchMetadataV1ListResponse" + } + } + } + }, + "400": { + "description": "Bad request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ad-sets": { + "patch": { + "tags": [ + "Campaign" + ], + "description": "Patch a list of AdSets.", + "operationId": "PatchAdSets", + "requestBody": { + "description": "List of adsets to patch.", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/RequestsPatchAdSet" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/RequestsPatchAdSet" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RequestsPatchAdSet" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/RequestsPatchAdSet" + } + } + }, + "x-bodyName": "adSets" + }, + "responses": { + "200": { + "description": "List of patched adSets.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseAdSetId" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseAdSetId" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ResponseAdSetId" + } + } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource or the resource does not exist.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "post": { + "tags": [ + "Campaign" + ], + "description": "Create the specified ad set", + "operationId": "CreateAdSet", + "requestBody": { + "description": "the ad sets to create", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/CreateAdSetRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateAdSetRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreateAdSetRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/CreateAdSetRequest" + } + } + }, + "required": true, + "x-bodyName": "adSet" + }, + "responses": { + "201": { + "description": "The ad set that has been created and errors / warnings", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseReadAdSet" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseReadAdSet" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ResponseReadAdSet" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ad-sets/search": { + "post": { + "tags": [ + "Campaign" + ], + "description": "Search for ad sets", + "operationId": "SearchAdSets", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/RequestAdSetSearch" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/RequestAdSetSearch" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RequestAdSetSearch" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/RequestAdSetSearch" + } + } + }, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "data for the ad sets", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponsesReadAdSet" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponsesReadAdSet" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ResponsesReadAdSet" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ad-sets/start": { + "post": { + "tags": [ + "Campaign" + ], + "description": "Start the specified list of ad sets", + "operationId": "StartAdSets", + "requestBody": { + "description": "All the ad sets to start", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/RequestsAdSetId" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/RequestsAdSetId" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RequestsAdSetId" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/RequestsAdSetId" + } + } + }, + "x-bodyName": "adSets" + }, + "responses": { + "200": { + "description": "List of ad sets that have been started and errors / warnings by ad set", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponsesAdSetId" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponsesAdSetId" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ResponsesAdSetId" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ad-sets/stop": { + "post": { + "tags": [ + "Campaign" + ], + "description": "Stop the specified list of ad sets", + "operationId": "StopAdSets", + "requestBody": { + "description": "All the ad sets to stop", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/RequestsAdSetId" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/RequestsAdSetId" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RequestsAdSetId" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/RequestsAdSetId" + } + } + }, + "x-bodyName": "adSets" + }, + "responses": { + "200": { + "description": "List of ad sets that have been stopped and errors / warnings by ad set", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponsesAdSetId" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponsesAdSetId" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ResponsesAdSetId" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ad-sets/{ad-set-id}/category-bids": { + "get": { + "tags": [ + "Campaign" + ], + "description": "Get the Category Bids for all valid Categories associated to an Ad Set", + "operationId": "GetCategoryBidList", + "parameters": [ + { + "name": "ad-set-id", + "in": "path", + "description": "Id of the Ad Set", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "List of Category Bids for all valid Categories associated to an Ad Set.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AdSetCategoryBidListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AdSetCategoryBidListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AdSetCategoryBidListResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource or the resource does not exist.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "patch": { + "tags": [ + "Campaign" + ], + "description": "Patch Category Bids for one or more Categories in a single request. Partial success policy is followed.", + "operationId": "PatchCategoryBidList", + "parameters": [ + { + "name": "ad-set-id", + "in": "path", + "description": "Id of the Ad Set", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidListRequest" + } + } + }, + "x-bodyName": "categoryBidsToUpdate" + }, + "responses": { + "200": { + "description": "List of updated Category Bids for given Categories associated to an Ad Set.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidResultListResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource or the resource does not exist.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ad-sets/{ad-set-id}/display-multipliers": { + "get": { + "tags": [ + "Campaign" + ], + "description": "Get the Display Multipliers for all valid Categories associated to an Ad Set", + "operationId": "GetDisplayMultipliers", + "parameters": [ + { + "name": "ad-set-id", + "in": "path", + "description": "Id of the Ad Set", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "List of Display Multipliers for all valid Categories associated to an Ad Set.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AdSetDisplayMultiplierListResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource or the resource does not exist.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "patch": { + "tags": [ + "Campaign" + ], + "description": "Patch Display Multipliers for one or more Categories in a single request. Partial success policy is followed.", + "operationId": "PatchDisplayMultipliers", + "parameters": [ + { + "name": "ad-set-id", + "in": "path", + "description": "Id of the Ad Set", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierListRequest" + } + } + }, + "x-bodyName": "displayMultipliersToUpdate" + }, + "responses": { + "200": { + "description": "List of updated Display Multipliers for given Categories associated to an Ad Set.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultListResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource or the resource does not exist.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ad-sets/{adSetId}": { + "get": { + "tags": [ + "Campaign" + ], + "description": "Get the data for the specified ad set", + "operationId": "GetAdSet", + "parameters": [ + { + "name": "adSetId", + "in": "path", + "description": "Id of the ad set", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "data for the ad set", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ResponseReadAdSet" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ResponseReadAdSet" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ResponseReadAdSet" + } + } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource or the resource does not exist.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/campaigns": { + "patch": { + "tags": [ + "Campaign" + ], + "description": "Patch a list of Campaigns.", + "operationId": "PatchCampaigns", + "requestBody": { + "description": "List of campaigns to patch.", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/PatchCampaignListRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchCampaignListRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/PatchCampaignListRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/PatchCampaignListRequest" + } + } + }, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "List of patched campaigns.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/PatchResultCampaignListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/PatchResultCampaignListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/PatchResultCampaignListResponse" + } + } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource or the resource does not exist.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "post": { + "tags": [ + "Campaign" + ], + "description": "Create the specified campaign", + "operationId": "CreateCampaign", + "requestBody": { + "description": "the campaigns to create", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/CreateCampaignRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateCampaignRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreateCampaignRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/CreateCampaignRequest" + } + } + }, + "required": true, + "x-bodyName": "marketingCampaign" + }, + "responses": { + "201": { + "description": "The campaign that has been created and errors / warnings", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CampaignV23Q1Response" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CampaignV23Q1Response" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CampaignV23Q1Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/campaigns/search": { + "post": { + "tags": [ + "Campaign" + ], + "description": "Search for campaigns", + "operationId": "SearchCampaigns", + "requestBody": { + "description": "filters on campaigns", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/CampaignSearchRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CampaignSearchRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CampaignSearchRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/CampaignSearchRequest" + } + } + }, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "data for the campaigns", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CampaignListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CampaignListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CampaignListResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/campaigns/{campaign-id}": { + "get": { + "tags": [ + "Campaign" + ], + "description": "Get the data for the specified campaign", + "operationId": "GetCampaign", + "parameters": [ + { + "name": "campaign-id", + "in": "path", + "description": "Id of the campaign", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "data for the campaign", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CampaignResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CampaignResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CampaignResponse" + } + } + } + }, + "401": { + "description": "The API client is not properly authenticated.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The API client is not authorized to access this resource or the resource does not exist.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/ads/{id}": { + "delete": { + "tags": [ + "Creative" + ], + "description": "Delete an Ad", + "operationId": "DeleteAd", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The ad identifier to delete.", + "required": true, + "style": "simple", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "204": { + "description": "The ad was deleted." + }, + "400": { + "description": "The request contained invalid parameters." + }, + "401": { + "description": "The request was not properly authorized." + }, + "500": { + "description": "A non-request based error occurred on the server." + } + } + }, + "get": { + "tags": [ + "Creative" + ], + "description": "Get an Ad from its id", + "operationId": "GetAd", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The ad identifier to retrieve.", + "required": true, + "style": "simple", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "The found ad is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AdResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AdResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AdResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "A non-request based error occurred on the server.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/advertisers/{advertiser-id}/ads": { + "get": { + "tags": [ + "Creative" + ], + "description": "Get the list of self-services Ads for a given advertiser", + "operationId": "GetAdvertiserAds", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "limit", + "in": "query", + "description": "The number of ads to be returned. The default is 50.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "offset", + "in": "query", + "description": "The (zero-based) offset into the collection of ads. The default is 0.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "The list of self-services Ads is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AdListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AdListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AdListResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "A non-request based error occurred on the server.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "post": { + "tags": [ + "Creative" + ], + "description": "Create an Ad", + "operationId": "CreateAdvertiserAd", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AdWriteRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AdWriteRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AdWriteRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AdWriteRequest" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "201": { + "description": "The created Ad is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AdResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/AdResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AdResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "A non-request based error occurred on the server.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/advertisers/{advertiser-id}/coupons": { + "get": { + "tags": [ + "Creative" + ], + "description": "Get the list of self-services Coupons for a given advertiser", + "operationId": "GetAdvertiserCoupons", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "limit", + "in": "query", + "description": "The number of coupons to be returned. The default is 50.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "offset", + "in": "query", + "description": "The (zero-based) offset into the collection of coupons. The default is 0.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "The list of self-services Coupons is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CouponListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CouponListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CouponListResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "post": { + "tags": [ + "Creative" + ], + "description": "Create a Coupon", + "operationId": "CreateAdvertiserCoupon", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/CreateCouponRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateCouponRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreateCouponRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/CreateCouponRequest" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "201": { + "description": "The created Coupon is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/advertisers/{advertiser-id}/coupons-supported-sizes": { + "get": { + "tags": [ + "Creative" + ], + "description": "Get the list of Coupon supported sizes", + "operationId": "GetAdvertiserCouponSupportedSizes", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "ad-set-id", + "in": "query", + "description": "The ad set id on which you want to check the Coupon supported sizes.", + "style": "form", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The list of Coupon supported sizes is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CouponSupportedSizesResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CouponSupportedSizesResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CouponSupportedSizesResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/advertisers/{advertiser-id}/coupons/{id}": { + "delete": { + "tags": [ + "Creative" + ], + "description": "Delete a Coupon", + "operationId": "DeleteAdvertiserCoupon", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "The Coupon identifier to delete.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "The Coupon was deleted." + }, + "400": { + "description": "The request contained invalid parameters." + }, + "403": { + "description": "The request was not properly authorized." + } + } + }, + "get": { + "tags": [ + "Creative" + ], + "description": "Get a Coupon from its id", + "operationId": "GetAdvertiserCoupon", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "The Coupon identifier to retrieve.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The found Coupon is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "put": { + "tags": [ + "Creative" + ], + "description": "Edit a specific Coupon", + "operationId": "EditAdvertiserCoupon", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "The Coupon identifier to edit.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/UpdateCouponRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateCouponRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/UpdateCouponRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/UpdateCouponRequest" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "The edited Coupon is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CouponResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/advertisers/{advertiser-id}/coupons/{id}/preview": { + "get": { + "tags": [ + "Creative" + ], + "description": "Get the preview of a specific Coupon", + "operationId": "GetAdvertiserCouponPreview", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "id", + "in": "path", + "description": "The Coupon identifier to preview.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "width", + "in": "query", + "description": "The width of the coupon to preview.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "height", + "in": "query", + "description": "The height of the coupon to preview.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "The preview HTML of a specific Coupon is returned.", + "content": { + "text/html": { + "schema": { + "type": "string" + } + }, + "application/json": { + "schema": { + "type": "string" + } + }, + "text/json": { + "schema": { + "type": "string" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/html": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The request was not properly authorized.", + "content": { + "text/html": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/advertisers/{advertiser-id}/creatives": { + "get": { + "tags": [ + "Creative" + ], + "description": "Get the list of self-services Creatives for a given advertiser", + "operationId": "GetAdvertiserCreatives", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "limit", + "in": "query", + "description": "The number of creatives to be returned. The default is 50.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "offset", + "in": "query", + "description": "The (zero-based) offset into the collection of creatives. The default is 0.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "The list of self-services Creatives is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CreativeListResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreativeListResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreativeListResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "A non-request based error occurred on the server.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "post": { + "tags": [ + "Creative" + ], + "description": "Create a Creative", + "operationId": "CreateAdvertiserCreative", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser identifier.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/CreativeWriteRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreativeWriteRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreativeWriteRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/CreativeWriteRequest" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "201": { + "description": "The created creative is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "A non-request based error occurred on the server.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/creatives/{id}": { + "delete": { + "tags": [ + "Creative" + ], + "description": "Delete a Creative if there are no ads binded to it", + "operationId": "DeleteCreative", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The creative identifier to delete.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "204": { + "description": "The creative was deleted." + }, + "400": { + "description": "The request contained invalid parameters." + }, + "401": { + "description": "The request was not properly authorized." + }, + "500": { + "description": "A non-request based error occurred on the server." + } + } + }, + "get": { + "tags": [ + "Creative" + ], + "description": "Get a Creative from its id", + "operationId": "GetCreative", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The creative identifier to retrieve.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "The found creative is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "A non-request based error occurred on the server.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + }, + "put": { + "tags": [ + "Creative" + ], + "description": "Edit a specific Creative", + "operationId": "EditCreative", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The creative identifier to edit.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/CreativeWriteRequest" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreativeWriteRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreativeWriteRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/CreativeWriteRequest" + } + } + }, + "required": true, + "x-bodyName": "request" + }, + "responses": { + "200": { + "description": "The edited creative is returned.", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/CreativeResponse" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "401": { + "description": "The request was not properly authorized.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "A non-request based error occurred on the server.", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/marketing-solutions/creatives/{id}/preview": { + "post": { + "tags": [ + "Creative" + ], + "description": "Generate a preview of a specific Creative", + "operationId": "GenerateCreativePreview", + "parameters": [ + { + "name": "id", + "in": "path", + "description": "The Creative identifier to preview.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + }, + { + "name": "width", + "in": "query", + "description": "The width of the Creative to preview.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + }, + { + "name": "height", + "in": "query", + "description": "The height of the Creative to preview.", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "responses": { + "200": { + "description": "The preview HTML of a specific Creative is returned.", + "content": { + "text/html": { + "schema": { + "type": "string" + } + }, + "application/json": { + "schema": { + "type": "string" + } + }, + "text/json": { + "schema": { + "type": "string" + } + } + } + }, + "400": { + "description": "The request contained invalid parameters.", + "content": { + "text/html": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "The request was not properly authorized.", + "content": { + "text/html": { }, + "application/json": { }, + "text/json": { } + } + } + } + } + }, + "/2023-10/log-level/advertisers/{advertiser-id}/report": { + "post": { + "tags": [ + "Analytics" + ], + "description": "This Statistics endpoint provides publisher data.", + "operationId": "GetTransparencyReport", + "parameters": [ + { + "name": "advertiser-id", + "in": "path", + "description": "The advertiser id to fetch the transparency data.", + "required": true, + "style": "simple", + "schema": { + "type": "integer", + "format": "int32" + } + } + ], + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/TransparencyQueryMessage" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/TransparencyQueryMessage" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/TransparencyQueryMessage" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/TransparencyQueryMessage" + } + } + }, + "x-bodyName": "queryMessage" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/TransparencyReportDataMessage" + }, + "example": { + "data": [ + { + "type": "TransparencyReport", + "attributes": { + "advertiserId": "123", + "tokenValidUntil": "2021-01-31T00:00:00.0000000+00:00", + "files": [ + { + "fileName": "report.csv", + "url": "https://www.example.com/transparency" + } + ] + } + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/TransparencyReportDataMessage" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/TransparencyReportDataMessage" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + }, + "example": { + "errors": [ + { + "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", + "traceIdentifier": "1234e1717d88aa8a", + "type": "validation", + "code": "required-field", + "instance": "/report", + "title": "Start date and end date are required." + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + }, + "example": { + "errors": [ + { + "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", + "traceIdentifier": "1234e1717d88aa8a", + "type": "access-control", + "code": "insufficient-advertiser-permission", + "instance": "/report", + "title": "Insufficient advertiser permission.", + "detail": "You do not have the rights to report on this advertiser." + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + } + } + } + } + } + }, + "/2023-10/placements/report": { + "post": { + "tags": [ + "Analytics" + ], + "description": "Your ads are placed in different domains (publishers) and environments (websites and apps). Thanks to the placements endpoint, you can analyse the performances for each publisher, comparing displays, clicks and sales generated.", + "operationId": "GetPlacementsReport", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/PlacementsReportQueryDataMessage" + } + } + }, + "x-bodyName": "dataMessage" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "application/json": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "text/json": { + "schema": { + "type": "string", + "format": "byte" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + }, + "example": { + "errors": [ + { + "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", + "traceIdentifier": "1234e1717d88aa8a", + "type": "validation", + "code": "required-field", + "instance": "/report", + "title": "Start date and end date are required." + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + }, + "example": { + "errors": [ + { + "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", + "traceIdentifier": "1234e1717d88aa8a", + "type": "access-control", + "code": "insufficient-advertiser-permission", + "instance": "/report", + "title": "Insufficient advertiser permission.", + "detail": "You do not have the rights to report on this advertiser." + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + } + } + } + } + } + }, + "/2023-10/statistics/report": { + "post": { + "tags": [ + "Analytics" + ], + "description": "This Statistics endpoint provides adset related data. It is an upgrade of our previous Statistics endpoint, and includes new metrics and customization capabilities.", + "operationId": "GetAdsetReport", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/StatisticsReportQueryMessage" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/StatisticsReportQueryMessage" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/StatisticsReportQueryMessage" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/StatisticsReportQueryMessage" + } + } + }, + "x-bodyName": "reportQuery" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "application/json": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "text/json": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "text/csv": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "text/xml": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { + "schema": { + "type": "string", + "format": "byte" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + }, + "example": { + "errors": [ + { + "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", + "traceIdentifier": "1234e1717d88aa8a", + "type": "validation", + "code": "required-field", + "instance": "/report", + "title": "Start date and end date are required." + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/xml": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + }, + "example": { + "errors": [ + { + "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", + "traceIdentifier": "1234e1717d88aa8a", + "type": "access-control", + "code": "insufficient-advertiser-permission", + "instance": "/report", + "title": "Insufficient advertiser permission.", + "detail": "You do not have the rights to report on this advertiser." + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/xml": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + } + } + } + } + } + }, + "/2023-10/transactions/report": { + "post": { + "tags": [ + "Analytics" + ], + "description": "This Transactions endpoint provides transactions id related data.", + "operationId": "GetTransactionsReport", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/TransactionsReportQueryDataMessage" + } + } + }, + "x-bodyName": "dataMessage" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "text/plain": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "application/json": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "text/json": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "text/csv": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "text/xml": { + "schema": { + "type": "string", + "format": "byte" + } + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { + "schema": { + "type": "string", + "format": "byte" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + }, + "example": { + "errors": [ + { + "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", + "traceIdentifier": "1234e1717d88aa8a", + "type": "validation", + "code": "required-field", + "instance": "/report", + "title": "Start date and end date are required." + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/xml": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + }, + "example": { + "errors": [ + { + "traceId": "b7888125-dddb-c94e-9240-eb930c4ea146", + "traceIdentifier": "1234e1717d88aa8a", + "type": "access-control", + "code": "insufficient-advertiser-permission", + "instance": "/report", + "title": "Insufficient advertiser permission.", + "detail": "You do not have the rights to report on this advertiser." + } + ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/csv": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "text/xml": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + }, + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": { + "schema": { + "$ref": "#/components/schemas/ProblemsDetails" + } + } + } + } + } + } + }, + "/2023-10/advertisers/me": { + "get": { + "tags": [ + "Advertiser" + ], + "description": "Fetch the portfolio of Advertisers for this account", + "operationId": "ApiPortfolioGet", + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetPortfolioResponse" + }, + "example": { + "data": [ + { + "type": "advertiser", + "id": "13", + "attributes": { + "advertiserName": "ClientName1" + } + }, + { + "type": "advertiser", + "id": "1352", + "attributes": { + "advertiserName": "ClientName2" + } + }, + { + "type": "advertiser", + "id": "73550", + "attributes": { + "advertiserName": "ClientName3" + } + } + ], + "errors": [ ], + "warnings": [ ] + } + }, + "text/plain": { + "schema": { + "$ref": "#/components/schemas/GetPortfolioResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/GetPortfolioResponse" + } + } + } + }, + "401": { + "description": "Unauthorized", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/GetPortfolioResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetPortfolioResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/GetPortfolioResponse" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "DeleteAudienceContactListResponse": { + "required": [ + "data", + "errors", + "warnings" + ], + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/BasicAudienceDefinition" + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceError" + } + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceWarning" + } + } + }, + "description": "Response of a contactlist deletion" + }, + "ErrorCodeResponse": { + "required": [ + "errors" + ], + "type": "object", + "properties": { + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceError" + } + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceWarning" + }, + "nullable": true + } + }, + "description": "Definition of the error code" + }, + "ModifyAudienceResponse": { + "required": [ + "data", + "errors", + "warnings" + ], + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ContactlistOperation" + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceError" + } + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceWarning" + } + } + }, + "description": "Parameters to modify an audience" + }, + "ContactlistAmendmentRequest": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ContactlistAmendment" + } + }, + "description": "Request for a contactlist amendment" + }, + "BasicAudienceDefinition": { + "required": [ + "id", + "type" + ], + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "the id of the entity type" + }, + "type": { + "type": "string", + "description": "the name of the entity type" + }, + "attributes": { + "$ref": "#/components/schemas/AudienceNameDescription" + } + }, + "description": "Common definition of an audience" + }, + "AudienceError": { + "required": [ + "code", + "instance", + "type" + ], + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", + "nullable": true + }, + "type": { + "enum": [ + "access-control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "description": "(REQUIRED) The classification of the error" + }, + "code": { + "type": "string", + "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case." + }, + "instance": { + "type": "string", + "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem" + }, + "title": { + "type": "string", + "description": "(RECOMMENDED) A short, human-readable summary of the problem type", + "nullable": true + }, + "detail": { + "type": "string", + "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem", + "nullable": true + }, + "source": { + "type": "object", + "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", + "nullable": true + }, + "stackTrace": { + "type": "array", + "items": { + "type": "string" + }, + "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", + "nullable": true + } + }, + "description": "Definition of an audience error" + }, + "AudienceWarning": { + "required": [ + "code", + "detail", + "instance", + "type" + ], + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", + "nullable": true + }, + "type": { + "enum": [ + "access-control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "description": "(REQUIRED) The classification of the error" + }, + "code": { + "type": "string", + "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kebab-case." + }, + "instance": { + "type": "string", + "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem" + }, + "title": { + "type": "string", + "description": "(RECOMMENDED) A short, human-readable summary of the problem type", + "nullable": true + }, + "detail": { + "type": "string", + "description": "(REQUIRED) A human-readable explanation specific to this occurrence of the problem" + }, + "source": { + "type": "object", + "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", + "nullable": true + }, + "stackTrace": { + "type": "array", + "items": { + "type": "string" + }, + "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", + "nullable": true + } + }, + "description": "Definition of the warning" + }, + "ContactlistOperation": { + "required": [ + "attributes", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "the name of the entity type" + }, + "attributes": { + "required": [ + "operation" + ], + "type": "object", + "properties": { + "contactListId": { + "type": "integer", + "description": "the affected user list id", + "nullable": true + }, + "operation": { + "type": "string", + "description": "The action recorded" + }, + "requestDate": { + "type": "string", + "description": "When the action was recorded", + "format": "date-time", + "nullable": true + }, + "identifierType": { + "type": "string", + "description": "The schema specified for of the identifiers", + "nullable": true + }, + "nbValidIdentifiers": { + "type": "integer", + "description": "How many identifiers were valid for the specified schema", + "nullable": true + }, + "nbInvalidIdentifiers": { + "type": "integer", + "description": "How many identifiers were invalid for the specified schema", + "nullable": true + }, + "sampleInvalidIdentifiers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A sample of invalid identifiers if there is some", + "nullable": true + } + }, + "description": "the contactlist operation attributes" + } + }, + "description": "Response definition of a contactlist operation" + }, + "ContactlistAmendment": { + "required": [ + "attributes", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "User List", + "example": "ContactlistAmendment" + }, + "attributes": { + "required": [ + "identifiers", + "operation" + ], + "type": "object", + "properties": { + "operation": { + "enum": [ + "add", + "remove" + ], + "type": "string", + "description": "Operation to add or remove users" + }, + "identifierType": { + "enum": [ + "email", + "madid", + "identityLink", + "gum", + "customerid" + ], + "type": "string", + "description": "What type of identifiers are used", + "nullable": true + }, + "identifiers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The users tos add or remove, each in the schema specified" + }, + "gumCallerId": { + "type": "integer", + "description": "The Gum caller id of the advertiser patching identifiers of type Gum", + "nullable": true + } + }, + "description": "the name of the entity type" + } + }, + "description": "Parameters for the amendment of a contactlist" + }, + "AudienceNameDescription": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name to designate the audience by", + "nullable": true + }, + "description": { + "type": "string", + "description": "The description of the audience", + "nullable": true + } + }, + "description": "Description of an audience with name and detailed description" + }, + "ApplicationSummaryModelResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ApplicationSummaryModelResource" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Response of ApplicationSummaryModel" + }, + "ApplicationSummaryModelResource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/ApplicationSummaryModel" + } + }, + "description": "A class that represents a ValueType in a guild compliant way" + }, + "CommonProblem": { + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "The request correlation ID this problem comes from.", + "nullable": true + }, + "traceIdentifier": { + "type": "string", + "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", + "nullable": true + }, + "type": { + "enum": [ + "unknown", + "access-control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "description": "The problem's category.", + "nullable": true + }, + "code": { + "type": "string", + "description": "A machine-readable error code, expressed as a string value.", + "nullable": true + }, + "instance": { + "type": "string", + "description": "A URI that identifies the specific occurrence of the problem.", + "nullable": true + }, + "title": { + "type": "string", + "description": "A short human-readable description of the problem type", + "nullable": true + }, + "detail": { + "type": "string", + "description": "A human-readable explanation specific to this occurrence of the problem", + "nullable": true + }, + "source": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A machine-readable structure to reference to the exact location(s) causing the error(s)", + "nullable": true + }, + "stackTrace": { + "type": "string", + "nullable": true + } + }, + "description": "Common problem object. Can be specialized as needed." + }, + "ApplicationSummaryModel": { + "type": "object", + "properties": { + "applicationId": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "name": { + "type": "string", + "nullable": true + }, + "organizationId": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "description": { + "type": "string", + "nullable": true + }, + "criteoService": { + "type": "string", + "nullable": true + } + }, + "description": "Model of ApplicationSummary" + }, + "AdSetAudienceLinkEntityV1Response": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AdSetAudienceLinkEntityV1Resource" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single entity" + }, + "AudienceSegmentEntityV1ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities" + }, + "AudienceSegmentSizeEntityV1ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSegmentSizeEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities" + }, + "AudienceSegmentIdEntityV1ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSegmentIdEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities" + }, + "AudienceSegmentSizeEstimationV1Response": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AudienceSegmentSizeEstimationV1Resource" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "InMarketAudienceSegmentBrandEntityV1ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InMarketAudienceSegmentBrandEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities" + }, + "InMarketAudienceSegmentInterestEntityV1ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InMarketAudienceSegmentInterestEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities" + }, + "AudienceSegmentEntityV1AudienceSegmentSearchMetadataV1ListResponse": { + "type": "object", + "properties": { + "meta": { + "$ref": "#/components/schemas/AudienceSegmentSearchMetadataV1" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities and metadata" + }, + "ContactListStatisticsEntityV1Response": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ContactListStatisticsEntityV1Resource" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single entity" + }, + "AudienceEntityV1ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities" + }, + "AudienceSizeEntityV1ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSizeEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities" + }, + "AudienceIdEntityV1ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceIdEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities" + }, + "AudienceSizeEstimationV1Response": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AudienceSizeEstimationV1Resource" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "AudienceEntityV1AudienceSearchMetadataV1ListResponse": { + "type": "object", + "properties": { + "meta": { + "$ref": "#/components/schemas/AudienceSearchMetadataV1" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceEntityV1Resource" + }, + "nullable": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "A top-level object that encapsulates a Criteo API response for several entities and metadata" + }, + "AdSetAudienceLinkInputEntityV1": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AdSetAudienceLinkEntityV1Resource" + } + }, + "description": "Input to set audience ad set link." + }, + "AudienceSegmentBulkUpdateInputV1": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSegmentUpdateEntityV1Resource" + }, + "nullable": true + } + }, + "description": "Input to update one or more segments." + }, + "AudienceSegmentComputeSizesInputV1": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSegmentComputeSizeEntityV1Resource" + }, + "nullable": true + } + }, + "description": "Input to retrieve the size of one or more segments." + }, + "AudienceSegmentBulkCreateInputV1": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSegmentCreateEntityV1Resource" + }, + "nullable": true + } + }, + "description": "Input to create one or more audience segments." + }, + "AudienceSegmentBulkDeleteInputV1": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceSegmentDeleteEntityV1Resource" + }, + "nullable": true + } + }, + "description": "Input to delete one or more segments." + }, + "AudienceSegmentEstimateSizeInputV1": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AudienceSegmentSizeEstimationEntityV1Resource" + } + }, + "description": "Input to estimate the size of an audience segment.." + }, + "AudienceSegmentSearchInputV1": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AudienceSegmentSearchEntityV1Resource" + } + }, + "description": "Audience segment search parameter" + }, + "AudienceBulkUpdateInputV1": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceUpdateEntityV1Resource" + }, + "nullable": true + } + }, + "description": "Input to update one or more audiences." + }, + "AudienceComputeSizesInputV1": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceComputeSizeEntityV1Resource" + }, + "nullable": true + } + }, + "description": "Input to retrieve the size of one or more audiences." + }, + "AudienceBulkCreateInputV1": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceCreateEntityV1Resource" + }, + "nullable": true + } + }, + "description": "Input to create one or more audiences." + }, + "AudienceBulkDeleteInputV1": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AudienceDeleteEntityV1Resource" + }, + "nullable": true + } + }, + "description": "Input to delete one or more audiences." + }, + "AudienceEstimateSizeInputV1": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AudienceEstimateSizeEntityV1Resource" + } + }, + "description": "Input to estimate the size of an audience." + }, + "AudienceSearchInputV1": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AudienceSearchEntityV1Resource" + } + }, + "description": "Audience search parameter" + }, + "AdSetAudienceLinkEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AdSetAudienceLinkEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSegmentEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSegmentSizeEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentSizeEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSegmentIdEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentIdEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSegmentSizeEstimationV1Resource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentSizeEstimationV1" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "InMarketAudienceSegmentBrandEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/InMarketAudienceSegmentBrandEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "InMarketAudienceSegmentInterestEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/InMarketAudienceSegmentInterestEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSegmentSearchMetadataV1": { + "type": "object", + "properties": { + "totalItems": { + "type": "integer", + "description": "Total number of items", + "format": "int32", + "nullable": true + }, + "limit": { + "type": "integer", + "description": "Max item of the current page", + "format": "int32", + "nullable": true + }, + "offset": { + "type": "integer", + "description": "Number of item to skip", + "format": "int32", + "nullable": true + } + }, + "description": "Metadata for the audience segment search response." + }, + "ContactListStatisticsEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/ContactListStatisticsEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSizeEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceSizeEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceIdEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceIdEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSizeEstimationV1Resource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AudienceSizeEstimationV1" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "AudienceSearchMetadataV1": { + "type": "object", + "properties": { + "totalItems": { + "type": "integer", + "description": "Total number of items", + "format": "int32", + "nullable": true + }, + "limit": { + "type": "integer", + "description": "Max item of the current page", + "format": "int32", + "nullable": true + }, + "offset": { + "type": "integer", + "description": "Number of item to skip", + "format": "int32", + "nullable": true + } + }, + "description": "Metadata for the audience search response." + }, + "AudienceSegmentUpdateEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentUpdateEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSegmentComputeSizeEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentComputeSizeEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSegmentCreateEntityV1Resource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentCreateEntityV1" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "AudienceSegmentDeleteEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentDeleteEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceSegmentSizeEstimationEntityV1Resource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentSizeEstimationEntityV1" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "AudienceSegmentSearchEntityV1Resource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AudienceSegmentSearchEntityV1" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "AudienceUpdateEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceUpdateEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceComputeSizeEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceComputeSizeEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceCreateEntityV1Resource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AudienceCreateEntityV1" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "AudienceDeleteEntityV1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AudienceDeleteEntityV1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "A class that represents a domain entity exposed by an API" + }, + "AudienceEstimateSizeEntityV1Resource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AudienceEstimateSizeEntityV1" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "AudienceSearchEntityV1Resource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AudienceSearchEntityV1" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "AdSetAudienceLinkEntityV1": { + "type": "object", + "properties": { + "audienceId": { + "type": "string", + "nullable": true + } + }, + "description": "Link Audience with an ad set", + "x-criteo-canonical": { + "infoType": "entity", + "name": "AdSetAudience", + "version": "v1" + } + }, + "AudienceSegmentEntityV1": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the segment", + "nullable": true + }, + "description": { + "type": "string", + "description": "Description of the segment", + "nullable": true + }, + "type": { + "enum": [ + "Unknown", + "InMarket", + "Prospecting", + "ContactList", + "Location", + "Behavioral", + "Retargeting", + "Lookalike" + ], + "type": "string", + "description": "Type of segment (read-only)", + "nullable": true + }, + "createdAt": { + "type": "string", + "description": "ISO-8601 timestamp in UTC of segment creation (read-only)", + "format": "date-time", + "nullable": true + }, + "updatedAt": { + "type": "string", + "description": "ISO-8601 timestamp in UTC of segment update (read-only)", + "format": "date-time", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser associated to the segment", + "nullable": true + }, + "inMarket": { + "$ref": "#/components/schemas/InMarketV1" + }, + "prospecting": { + "$ref": "#/components/schemas/ProspectingV1" + }, + "contactList": { + "$ref": "#/components/schemas/ContactListV1" + }, + "location": { + "$ref": "#/components/schemas/LocationV1" + }, + "behavioral": { + "$ref": "#/components/schemas/BehavioralV1" + }, + "retargeting": { + "$ref": "#/components/schemas/RetargetingV1" + }, + "lookalike": { + "$ref": "#/components/schemas/LookalikeV1" + } + }, + "description": "Set of rules that defines specific people to target.", + "x-criteo-canonical": { + "infoType": "entity", + "name": "AudienceSegment", + "version": "v1" + } + }, + "AudienceSegmentSizeEntityV1": { + "type": "object", + "properties": { + "size": { + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "description": "Set of rules that defines specific people to target.", + "x-criteo-canonical": { + "infoType": "entity", + "name": "AudienceSegmentSize", + "version": "v1" + } + }, + "AudienceSegmentIdEntityV1": { + "type": "object", + "description": "Audience Segment entity only with its ID", + "x-criteo-canonical": { + "infoType": "entity", + "name": "AudienceSegment", + "version": "v1" + } + }, + "AudienceSegmentSizeEstimationV1": { + "type": "object", + "properties": { + "size": { + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "description": "Segment size estimation" + }, + "InMarketAudienceSegmentBrandEntityV1": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the in-market segment brand", + "nullable": true + }, + "size": { + "type": "integer", + "description": "Size of the in-market segment brand", + "format": "int32", + "nullable": true + } + }, + "description": "In-market segment brand entity", + "x-criteo-canonical": { + "infoType": "entity", + "name": "InMarketAudienceSegmentBrand", + "version": "v1" + } + }, + "InMarketAudienceSegmentInterestEntityV1": { + "type": "object", + "properties": { + "parentId": { + "type": "string", + "description": "Id of the parent in-market segment interest", + "nullable": true + } + }, + "description": "In-market segment interest entity", + "x-criteo-canonical": { + "infoType": "entity", + "name": "InMarketAudienceSegmentInterest", + "version": "v1" + } + }, + "ContactListStatisticsEntityV1": { + "type": "object", + "properties": { + "numberOfIdentifiers": { + "type": "integer", + "description": "Number of identifiers in the contact list.", + "format": "int32", + "nullable": true + }, + "numberOfMatches": { + "type": "integer", + "description": "Number of matched identifiers in the contact list.", + "format": "int32", + "nullable": true + }, + "matchRate": { + "type": "number", + "description": "Percentage of matched identifiers in the contact list.\r\nCan differ from matches/identifiers depending on the contact list type.", + "format": "double", + "nullable": true + } + }, + "description": "Contact list statistics.", + "x-criteo-canonical": { + "infoType": "entity", + "name": "ContactListStatistics", + "version": "v1" + } + }, + "AudienceEntityV1": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the audience", + "nullable": true + }, + "description": { + "type": "string", + "description": "Description of the audience", + "nullable": true + }, + "createdAt": { + "type": "string", + "description": "ISO-8601 timestamp in UTC of audience creation (read-only)", + "format": "date-time", + "nullable": true + }, + "updatedAt": { + "type": "string", + "description": "ISO-8601 timestamp in UTC of audience update (read-only)", + "format": "date-time", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser associated to the audience", + "nullable": true + }, + "adSetIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Ad sets associated to the audience", + "nullable": true + }, + "algebra": { + "$ref": "#/components/schemas/AlgebraNodeV1" + } + }, + "description": "Audience of people of interest for a marketer.", + "x-criteo-canonical": { + "infoType": "entity", + "name": "Audience", + "version": "v1" + } + }, + "AudienceSizeEntityV1": { + "type": "object", + "properties": { + "size": { + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "description": "Audience entity only with its size", + "x-criteo-canonical": { + "infoType": "entity", + "name": "AudienceSize", + "version": "v1" + } + }, + "AudienceIdEntityV1": { + "type": "object", + "description": "Audience entity with only its ID", + "x-criteo-canonical": { + "infoType": "entity", + "name": "Audience", + "version": "v1" + } + }, + "AudienceSizeEstimationV1": { + "type": "object", + "properties": { + "size": { + "type": "integer", + "format": "int64", + "nullable": true + } + }, + "description": "Audience size estimation" + }, + "AudienceSegmentUpdateEntityV1": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the segment", + "nullable": true + }, + "description": { + "$ref": "#/components/schemas/NillableString" + }, + "inMarket": { + "$ref": "#/components/schemas/InMarketUpdateV1" + }, + "location": { + "$ref": "#/components/schemas/LocationUpdateV1" + }, + "retargeting": { + "$ref": "#/components/schemas/RetargetingUpdateV1" + }, + "lookalike": { + "$ref": "#/components/schemas/LookalikeUpdateV1" + }, + "prospecting": { + "$ref": "#/components/schemas/ProspectingUpdateV1" + } + }, + "description": "Set of rules that defines specific people to target.", + "x-criteo-canonical": { + "infoType": "entity", + "name": "AudienceSegment", + "version": "v1" + } + }, + "AudienceSegmentComputeSizeEntityV1": { + "type": "object", + "description": "Set of rules that defines specific people to target.", + "x-criteo-canonical": { + "infoType": "entity", + "name": "AudienceSegment", + "version": "v1" + } + }, + "AudienceSegmentCreateEntityV1": { + "required": [ + "advertiserId", + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the segment" + }, + "description": { + "type": "string", + "description": "Description of the segment", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser associated to the segment" + }, + "inMarket": { + "$ref": "#/components/schemas/InMarketCreateV1" + }, + "prospecting": { + "$ref": "#/components/schemas/ProspectingCreateV1" + }, + "contactList": { + "$ref": "#/components/schemas/ContactListCreateV1" + }, + "location": { + "$ref": "#/components/schemas/LocationCreateV1" + }, + "retargeting": { + "$ref": "#/components/schemas/RetargetingCreateV1" + }, + "lookalike": { + "$ref": "#/components/schemas/LookalikeCreateV1" + } + }, + "description": "Set of rules that defines specific people to target." + }, + "AudienceSegmentDeleteEntityV1": { + "type": "object", + "description": "Segment to delete", + "x-criteo-canonical": { + "infoType": "entity", + "name": "AudienceSegment", + "version": "v1" + } + }, + "AudienceSegmentSizeEstimationEntityV1": { + "required": [ + "advertiserId" + ], + "type": "object", + "properties": { + "advertiserId": { + "type": "string", + "description": "Advertiser associated to the segment" + }, + "inMarket": { + "$ref": "#/components/schemas/InMarketSizeEstimationV1" + }, + "location": { + "$ref": "#/components/schemas/LocationSizeEstimationV1" + } + }, + "description": "Set of rules that defines specific people to target." + }, + "AudienceSegmentSearchEntityV1": { + "type": "object", + "properties": { + "audienceSegmentIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of segment ids", + "nullable": true + }, + "advertiserIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of advertiser ids", + "nullable": true + }, + "audienceSegmentTypes": { + "type": "array", + "items": { + "enum": [ + "Unknown", + "InMarket", + "Prospecting", + "ContactList", + "Location", + "Behavioral", + "Retargeting", + "Lookalike" + ], + "type": "string" + }, + "description": "List of segment types", + "nullable": true + } + }, + "description": "Available filters to perform a search on audience segments. If present, the filters are AND'ed together when applied." + }, + "AudienceUpdateEntityV1": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the audience", + "nullable": true + }, + "description": { + "$ref": "#/components/schemas/NillableString" + }, + "algebra": { + "$ref": "#/components/schemas/AlgebraNodeV1" + } + }, + "description": "Audience of people of interest for a marketer.", + "x-criteo-canonical": { + "infoType": "entity", + "name": "Audience", + "version": "v1" + } + }, + "AudienceComputeSizeEntityV1": { + "type": "object", + "description": "Audience of people of interest for a marketer.", + "x-criteo-canonical": { + "infoType": "entity", + "name": "Audience", + "version": "v1" + } + }, + "AudienceCreateEntityV1": { + "required": [ + "advertiserId", + "algebra", + "name" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the audience" + }, + "description": { + "type": "string", + "description": "Description of the audience", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser associated to the audience" + }, + "algebra": { + "$ref": "#/components/schemas/AlgebraNodeV1" + } + }, + "description": "Audience of people of interest for a marketer." + }, + "AudienceDeleteEntityV1": { + "type": "object", + "description": "Audience to delete", + "x-criteo-canonical": { + "infoType": "entity", + "name": "Audience", + "version": "v1" + } + }, + "AudienceEstimateSizeEntityV1": { + "required": [ + "advertiserId", + "algebra" + ], + "type": "object", + "properties": { + "advertiserId": { + "type": "string", + "description": "Advertiser associated to the audience" + }, + "algebra": { + "$ref": "#/components/schemas/AlgebraNodeV1" + } + }, + "description": "Audience of people of interest for a marketer." + }, + "AudienceSearchEntityV1": { + "type": "object", + "properties": { + "audienceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of audience ids", + "nullable": true + }, + "advertiserIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of advertiser ids", + "nullable": true + }, + "audienceSegmentIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of segment ids (linked to the result audiences)", + "nullable": true + }, + "adSetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of AdSet ids", + "nullable": true + } + }, + "description": "Available filters to perform a search on segments. If present, the filters are AND'ed together when applied." + }, + "InMarketV1": { + "type": "object", + "properties": { + "country": { + "type": "string", + "description": "Reach people of a specific country", + "nullable": true + }, + "buyingPower": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "Unknown", + "Low", + "Medium", + "High", + "VeryHigh" + ], + "type": "string" + }, + "description": "Reach people who frequently purchase high price range items to lower price range items", + "nullable": true + }, + "gender": { + "enum": [ + "Unknown", + "Male", + "Female" + ], + "type": "string", + "description": "Reach people who’ve shown interest in products made for a specific gender", + "nullable": true + }, + "interestIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Reach new people based on their interests", + "nullable": true + }, + "brandIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Choose the brands your segment might be interested in", + "nullable": true + }, + "priceRange": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "Unknown", + "Low", + "Medium", + "High" + ], + "type": "string" + }, + "description": "Reach people who’ve shown interest in products within a specific price range", + "nullable": true + } + }, + "description": "Settings to target users based on high shopping intents and demographics." + }, + "ProspectingV1": { + "type": "object", + "properties": { + "daysSinceLastVisitMin": { + "type": "integer", + "description": "When non buyers are included, include users who visited your website before this number of days", + "format": "int32", + "nullable": true + }, + "daysSinceLastVisitMax": { + "type": "integer", + "description": "When non buyers are included, include users who visited your website after this number of days", + "format": "int32", + "nullable": true + }, + "usersType": { + "enum": [ + "Unknown", + "Prospects", + "ProspectsOrNonBuyers" + ], + "type": "string", + "description": "Type of users to target", + "nullable": true + } + }, + "description": "Settings to target prospecting users to website visitors." + }, + "ContactListV1": { + "type": "object", + "properties": { + "isReadOnly": { + "type": "boolean", + "description": "Is the segment read-only", + "nullable": true + } + }, + "description": "Settings to target users with your contact lists." + }, + "LocationV1": { + "type": "object", + "properties": { + "pointsOfInterest": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PointOfInterestV1" + }, + "description": "Reach users which have been historically located in the given coordinates", + "nullable": true + }, + "radiusInKm": { + "type": "integer", + "description": "The expected maximum distance in kilometers between a user and a point of interest", + "format": "int32", + "nullable": true + }, + "registryType": { + "enum": [ + "Unknown", + "PointOfInterest" + ], + "type": "string", + "description": "The kind of Location audience", + "nullable": true + } + }, + "description": "Settings to target users based on their location." + }, + "BehavioralV1": { + "required": [ + "category" + ], + "type": "object", + "properties": { + "country": { + "type": "string", + "description": "The users' country", + "nullable": true + }, + "category": { + "enum": [ + "Unknown", + "Lifestyles", + "LifeEvents", + "Seasonal", + "BuyingPatterns" + ], + "type": "string", + "description": "The type of behavioral" + }, + "startDate": { + "type": "string", + "description": "Desired date when the behavioral will start", + "format": "date-time", + "nullable": true + }, + "endDate": { + "type": "string", + "description": "Desired date when the behavioral will end", + "format": "date-time", + "nullable": true + } + }, + "description": "Settings of a behavioral set of users provided by Criteo." + }, + "RetargetingV1": { + "type": "object", + "properties": { + "visitorsType": { + "enum": [ + "Unknown", + "All", + "Buyers", + "NonBuyers" + ], + "type": "string", + "description": "Types of visitors.", + "nullable": true + }, + "daysSinceLastVisitMin": { + "type": "integer", + "description": "Minimum number of days since last visit to partner.", + "format": "int32", + "nullable": true + }, + "daysSinceLastVisitMax": { + "type": "integer", + "description": "Maximum number of days since last visit to partner.", + "format": "int32", + "nullable": true + } + }, + "description": "Settings to target users based on its type and days since last visit." + }, + "LookalikeV1": { + "type": "object", + "properties": { + "seedSegmentId": { + "type": "string", + "description": "Segment from which the Lookalike segment will be generated", + "nullable": true + }, + "targetSize": { + "type": "integer", + "description": "Desired size of the generated Lookalike segment", + "format": "int64", + "nullable": true + } + }, + "description": "Settings to target users that behave like a given seed segment" + }, + "AlgebraNodeV1": { + "type": "object", + "properties": { + "and": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlgebraNodeV1" + }, + "nullable": true + }, + "or": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AlgebraNodeV1" + }, + "nullable": true + }, + "not": { + "$ref": "#/components/schemas/AlgebraNodeV1" + }, + "audienceSegmentId": { + "type": "string", + "nullable": true + } + }, + "description": "Node in the audience algebra definition." + }, + "NillableString": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "The string's value. If missing or null the string's value is set to \"null\"", + "nullable": true + } + }, + "description": "Placeholder object for string value for which \"null\" is a valid business value" + }, + "InMarketUpdateV1": { + "type": "object", + "properties": { + "country": { + "type": "string", + "description": "Reach people of a specific country", + "nullable": true + }, + "buyingPower": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "Low", + "Medium", + "High", + "VeryHigh" + ], + "type": "string" + }, + "description": "Reach people who frequently purchase high price range items to lower price range items", + "nullable": true + }, + "gender": { + "$ref": "#/components/schemas/NillableGenderV1" + }, + "interestIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Reach new people based on their interests", + "nullable": true + }, + "brandIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Choose the brands your segment might be interested in", + "nullable": true + }, + "priceRange": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "Low", + "Medium", + "High" + ], + "type": "string" + }, + "description": "Reach people who’ve shown interest in products within a specific price range", + "nullable": true + } + }, + "description": "Settings to target users based on high shopping intents and demographics." + }, + "LocationUpdateV1": { + "type": "object", + "properties": { + "pointsOfInterest": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PointOfInterestV1" + }, + "description": "Reach users which have been historically located in the given coordinates", + "nullable": true + }, + "radiusInKm": { + "type": "integer", + "description": "Radius in kilometers", + "format": "int32", + "nullable": true + }, + "registryType": { + "enum": [ + "PointOfInterest" + ], + "type": "string", + "description": "The kind of Location audience", + "nullable": true + } + }, + "description": "Settings to target users based on their location." + }, + "RetargetingUpdateV1": { + "type": "object", + "properties": { + "visitorsType": { + "enum": [ + "All", + "Buyers", + "NonBuyers" + ], + "type": "string", + "description": "Types of visitors.", + "nullable": true + }, + "daysSinceLastVisitMin": { + "type": "integer", + "description": "Minimum number of days since last visit to partner.", + "format": "int32", + "nullable": true + }, + "daysSinceLastVisitMax": { + "type": "integer", + "description": "Maximum number of days since last visit to partner.", + "format": "int32", + "nullable": true + } + }, + "description": "Settings to target users based on its type and days since last visit." + }, + "LookalikeUpdateV1": { + "type": "object", + "properties": { + "targetSize": { + "type": "integer", + "description": "Desired size of the generated Lookalike segment", + "format": "int64", + "nullable": true + } + }, + "description": "Settings to target users that behave like a given seed segment" + }, + "ProspectingUpdateV1": { + "type": "object", + "properties": { + "daysSinceLastVisitMin": { + "$ref": "#/components/schemas/NillableInt32" + }, + "daysSinceLastVisitMax": { + "$ref": "#/components/schemas/NillableInt32" + }, + "usersType": { + "enum": [ + "Prospects", + "ProspectsOrNonBuyers" + ], + "type": "string", + "description": "Type of users to target", + "nullable": true + } + }, + "description": "Settings to target prospecting users to website visitors." + }, + "InMarketCreateV1": { + "required": [ + "country" + ], + "type": "object", + "properties": { + "country": { + "type": "string", + "description": "Reach people of a specific country" + }, + "buyingPower": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "Low", + "Medium", + "High", + "VeryHigh" + ], + "type": "string" + }, + "description": "Reach people who frequently purchase high price range items to lower price range items", + "nullable": true + }, + "gender": { + "enum": [ + "Male", + "Female" + ], + "type": "string", + "description": "Reach people who’ve shown interest in products made for a specific gender", + "nullable": true + }, + "interestIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Reach new people based on their interests", + "nullable": true + }, + "brandIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Choose the brands your segment might be interested in", + "nullable": true + }, + "priceRange": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "Low", + "Medium", + "High" + ], + "type": "string" + }, + "description": "Reach people who’ve shown interest in products within a specific price range", + "nullable": true + } + }, + "description": "Settings to target users based on high shopping intents and demographics." + }, + "ProspectingCreateV1": { + "required": [ + "usersType" + ], + "type": "object", + "properties": { + "daysSinceLastVisitMin": { + "type": "integer", + "description": "When non buyers are included, include users who visited your website before this number of days", + "format": "int32", + "nullable": true + }, + "daysSinceLastVisitMax": { + "type": "integer", + "description": "When non buyers are included, include users who visited your website after this number of days", + "format": "int32", + "nullable": true + }, + "usersType": { + "enum": [ + "Prospects", + "ProspectsOrNonBuyers" + ], + "type": "string", + "description": "Type of users to target" + } + }, + "description": "Settings to target prospecting users to website visitors." + }, + "ContactListCreateV1": { + "type": "object", + "description": "Settings to target users with your contact lists." + }, + "LocationCreateV1": { + "required": [ + "pointsOfInterest", + "radiusInKm" + ], + "type": "object", + "properties": { + "pointsOfInterest": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PointOfInterestV1" + }, + "description": "Reach users which have been historically located in the given coordinates" + }, + "radiusInKm": { + "type": "integer", + "description": "The expected maximum distance in kilometers between a user and a point of interest", + "format": "int32" + } + }, + "description": "Settings to target users based on their location." + }, + "RetargetingCreateV1": { + "required": [ + "daysSinceLastVisitMax", + "daysSinceLastVisitMin", + "visitorsType" + ], + "type": "object", + "properties": { + "visitorsType": { + "enum": [ + "All", + "Buyers", + "NonBuyers" + ], + "type": "string", + "description": "Types of visitors." + }, + "daysSinceLastVisitMin": { + "type": "integer", + "description": "Minimum number of days since last visit to partner.", + "format": "int32" + }, + "daysSinceLastVisitMax": { + "type": "integer", + "description": "Maximum number of days since last visit to partner.", + "format": "int32" + } + }, + "description": "Settings to target users based on its type and days since last visit." + }, + "LookalikeCreateV1": { + "required": [ + "seedSegmentId" + ], + "type": "object", + "properties": { + "seedSegmentId": { + "type": "string", + "description": "Segment from which the Lookalike segment will be generated" + }, + "targetSize": { + "type": "integer", + "description": "Desired size of the generated Lookalike segment", + "format": "int64", + "nullable": true + } + }, + "description": "Settings to target users close to a given seed segment." + }, + "InMarketSizeEstimationV1": { + "required": [ + "country" + ], + "type": "object", + "properties": { + "country": { + "type": "string" + }, + "buyingPower": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "Low", + "Medium", + "High", + "VeryHigh" + ], + "type": "string" + }, + "nullable": true + }, + "gender": { + "enum": [ + "Male", + "Female" + ], + "type": "string", + "nullable": true + }, + "interestIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "nullable": true + }, + "brandIds": { + "uniqueItems": true, + "type": "array", + "items": { + "type": "string" + }, + "nullable": true + }, + "priceRange": { + "uniqueItems": true, + "type": "array", + "items": { + "enum": [ + "Low", + "Medium", + "High" + ], + "type": "string" + }, + "nullable": true + } + }, + "description": "Settings to target users based on high shopping intents and demographics." + }, + "LocationSizeEstimationV1": { + "required": [ + "pointsOfInterest", + "radiusInKm" + ], + "type": "object", + "properties": { + "pointsOfInterest": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PointOfInterestV1" + } + }, + "radiusInKm": { + "type": "integer", + "format": "int32" + } + }, + "description": "Settings to define your audience based on their location." + }, + "PointOfInterestV1": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the point of interest", + "nullable": true + }, + "latitude": { + "type": "number", + "description": "ISO-6709 latitude (rounded at 5 decimals)", + "format": "double", + "nullable": true + }, + "longitude": { + "type": "number", + "description": "ISO-6709 longitude (rounded at 5 decimals)", + "format": "double", + "nullable": true + } + }, + "description": "Named coordinate defined by its latitude and longitude.\r\nLatitude and Longitude are rounded at 5 decimals." + }, + "NillableGenderV1": { + "type": "object", + "properties": { + "value": { + "enum": [ + "Male", + "Female" + ], + "type": "string", + "description": "The value. If missing or null the value is set to \"null\"", + "nullable": true + } + }, + "description": "Placeholder object for value for which \"null\" is a valid business value" + }, + "NillableInt32": { + "type": "object", + "properties": { + "value": { + "type": "integer", + "description": "The value. If missing or null the value is set to \"null\"", + "format": "int32", + "nullable": true + } + }, + "description": "Placeholder object for value for which \"null\" is a valid business value" + }, + "ResponseAdSetId": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ReadModelAdSetId" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "output resource" + }, + "ResponseReadAdSet": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ReadModelReadAdSet" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "output resource" + }, + "ResponsesReadAdSet": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ReadModelReadAdSet" + }, + "nullable": true, + "readOnly": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "List of output resources" + }, + "ResponsesAdSetId": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ReadModelAdSetId" + }, + "nullable": true, + "readOnly": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "List of output resources" + }, + "AdSetCategoryBidListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/AdSetCategoryBidResource" + }, + "nullable": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for a list of response resources" + }, + "PatchAdSetCategoryBidResultListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidResultResource" + }, + "nullable": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for a list of response resources" + }, + "AdSetDisplayMultiplierListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/AdSetDisplayMultiplierResource" + }, + "nullable": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for a list of response resources" + }, + "PatchAdSetDisplayMultiplierResultListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResultResource" + }, + "nullable": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for a list of response resources" + }, + "PatchResultCampaignListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/PatchResultCampaignReadResource" + }, + "nullable": true, + "readOnly": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "List of output resources" + }, + "CampaignV23Q1Response": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CampaignV23Q1Resource" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for response resource" + }, + "CampaignListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CampaignReadResource" + }, + "nullable": true, + "readOnly": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "List of output resources" + }, + "CampaignResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CampaignReadResource" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "output resource" + }, + "RequestsPatchAdSet": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/WriteModelPatchAdSet" + }, + "nullable": true + } + }, + "description": "List of input resources" + }, + "CreateAdSetRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CreateAdSetResource" + } + }, + "description": "Data model for an input resources" + }, + "RequestAdSetSearch": { + "type": "object", + "properties": { + "filters": { + "$ref": "#/components/schemas/AdSetSearchFilter" + } + }, + "description": "request payload of the search endpoint" + }, + "RequestsAdSetId": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/WriteModelAdSetId" + }, + "nullable": true + } + }, + "description": "List of input resources" + }, + "PatchAdSetCategoryBidListRequest": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/PatchAdSetCategoryBidResource" + }, + "nullable": true + } + }, + "description": "Data model for a list of input resources" + }, + "PatchAdSetDisplayMultiplierListRequest": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplierResource" + }, + "nullable": true + } + }, + "description": "Data model for a list of input resources" + }, + "PatchCampaignListRequest": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/PatchCampaignWriteResource" + }, + "nullable": true + } + }, + "description": "List of input resources" + }, + "CreateCampaignRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CreateCampaignResource" + } + }, + "description": "Data model for an input resources" + }, + "CampaignSearchRequest": { + "type": "object", + "properties": { + "filters": { + "$ref": "#/components/schemas/CampaignSearchFilters" + } + }, + "description": "request payload of the search endpoint" + }, + "ReadModelAdSetId": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true, + "readOnly": true + }, + "type": { + "type": "string", + "nullable": true, + "readOnly": true, + "example": "AdSetId" + } + }, + "description": "read model data for resources" + }, + "ProblemDetails": { + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "The request correlation ID this problem comes from.", + "nullable": true + }, + "traceIdentifier": { + "type": "string", + "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", + "nullable": true + }, + "type": { + "enum": [ + "unknown", + "access-control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "nullable": true + }, + "code": { + "type": "string", + "nullable": true + }, + "instance": { + "type": "string", + "nullable": true + }, + "title": { + "type": "string", + "nullable": true + }, + "detail": { + "type": "string", + "nullable": true + }, + "source": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "nullable": true + }, + "stackTrace": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for common error or warning" + }, + "ReadModelReadAdSet": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true, + "readOnly": true + }, + "type": { + "type": "string", + "nullable": true, + "readOnly": true, + "example": "ReadAdSet" + }, + "attributes": { + "$ref": "#/components/schemas/ReadAdSet" + } + }, + "description": "read model data for resources" + }, + "AdSetCategoryBidResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AdSetCategoryBid" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "AdSetCategoryBid" + } + }, + "description": "Data model for a Resource" + }, + "PatchAdSetCategoryBidResultResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "AdSetCategoryBid" + } + }, + "description": "Data model for a Resource" + }, + "AdSetDisplayMultiplierResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AdSetDisplayMultiplier" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "AdSetDisplayMultiplier" + } + }, + "description": "Data model for a Resource" + }, + "PatchAdSetDisplayMultiplierResultResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "AdSetDisplayMultiplier" + } + }, + "description": "Data model for a Resource" + }, + "PatchResultCampaignReadResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true, + "readOnly": true + }, + "type": { + "type": "string", + "nullable": true, + "readOnly": true, + "example": "Campaign" + } + }, + "description": "read model data for resources" + }, + "CampaignV23Q1Resource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/CampaignV23Q1" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "Campaign" + } + }, + "description": "Data model for a Resource" + }, + "CampaignReadResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true, + "readOnly": true + }, + "type": { + "type": "string", + "nullable": true, + "readOnly": true, + "example": "Campaign" + }, + "attributes": { + "$ref": "#/components/schemas/Campaign" + } + }, + "description": "read model data for resources" + }, + "WriteModelPatchAdSet": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "PatchAdSet" + }, + "attributes": { + "$ref": "#/components/schemas/PatchAdSet" + } + }, + "description": "write model data for resources" + }, + "CreateAdSetResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/CreateAdSet" + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "AdSet" + } + }, + "description": "Data model for a Resource" + }, + "AdSetSearchFilter": { + "type": "object", + "properties": { + "adSetIds": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Ad set ids to filter on", + "nullable": true + }, + "advertiserIds": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Advertiser ids which ad sets belongs to (indirectly via their marketing campaign)", + "nullable": true + }, + "campaignIds": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Campaign ids to filter on", + "nullable": true + } + }, + "description": "filter on ad set ids" + }, + "WriteModelAdSetId": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "AdSetId" + } + }, + "description": "write model data for resources" + }, + "PatchAdSetCategoryBidResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/PatchAdSetCategoryBid" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "AdSetCategoryBid" + } + }, + "description": "Data model for a Resource" + }, + "PatchAdSetDisplayMultiplierResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/PatchAdSetDisplayMultiplier" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "AdSetDisplayMultiplier" + } + }, + "description": "Data model for a Resource" + }, + "PatchCampaignWriteResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "Campaign" + }, + "attributes": { + "$ref": "#/components/schemas/PatchCampaign" + } + }, + "description": "write model data for resources" + }, + "CreateCampaignResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/CreateCampaign" + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true, + "example": "Campaign" + } + }, + "description": "Data model for a Resource" + }, + "CampaignSearchFilters": { + "type": "object", + "properties": { + "campaignIds": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Campaign ids to filter on", + "nullable": true + }, + "advertiserIds": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Advertiser ids to which campaigns are linked to", + "nullable": true + } + }, + "description": "filters on campaign" + }, + "ReadAdSet": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the ad set", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser id of the campaign this ad set belongs to", + "nullable": true + }, + "datasetId": { + "type": "string", + "description": "Dataset id of this ad set", + "nullable": true + }, + "campaignId": { + "type": "string", + "description": "Campaign id this ad set belongs to", + "nullable": true + }, + "destinationEnvironment": { + "enum": [ + "undefined", + "web", + "app" + ], + "type": "string", + "description": "The environment that an ad click will lead a user to", + "nullable": true + }, + "schedule": { + "$ref": "#/components/schemas/ReadAdSetSchedule" + }, + "bidding": { + "$ref": "#/components/schemas/ReadAdSetBidding" + }, + "targeting": { + "$ref": "#/components/schemas/AdSetTargeting" + }, + "budget": { + "$ref": "#/components/schemas/ReadAdSetBudget" + }, + "mediaType": { + "enum": [ + "display", + "video" + ], + "type": "string", + "description": "Media type for the ad set", + "nullable": true + } + }, + "description": "ad set read model" + }, + "AdSetCategoryBid": { + "type": "object", + "properties": { + "categoryName": { + "type": "string", + "description": "The name of the Category to which the Category Bid has been applied.", + "nullable": true + }, + "bidAmount": { + "type": "number", + "description": "The Bid amount applied to the given Category associated to an Ad Set. At most 4 decimals are supported. Additional decimals are rounded.", + "format": "double", + "nullable": true + } + }, + "description": "Category Bid information about a Category for a given Ad Set." + }, + "AdSetDisplayMultiplier": { + "type": "object", + "properties": { + "categoryName": { + "type": "string", + "description": "The name of the Category to which the given for which the Display Multiplier has been applied.", + "nullable": true + }, + "displayMultiplier": { + "type": "number", + "description": "The Display Multiplier applied to the given Category associated to an Ad Set.", + "format": "double", + "nullable": true + } + }, + "description": "Display Multiplier information about a Category for a given Ad Set." + }, + "CampaignV23Q1": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the campaign", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser id of the campaign", + "nullable": true + }, + "spendLimit": { + "$ref": "#/components/schemas/CampaignSpendLimitV23Q1" + }, + "goal": { + "enum": [ + "unspecified", + "acquisition", + "retention" + ], + "type": "string", + "description": "Goal of the campaign", + "nullable": true + } + }, + "description": "campaign read model" + }, + "Campaign": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the campaign", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser id of the campaign", + "nullable": true + }, + "objective": { + "type": "string", + "description": "Campaign's marketing objective", + "nullable": true + }, + "spendLimit": { + "$ref": "#/components/schemas/CampaignSpendLimit" + }, + "goal": { + "enum": [ + "Unspecified", + "Acquisition", + "Retention" + ], + "type": "string", + "description": "Goal of the campaign", + "nullable": true + } + }, + "description": "campaign read model" + }, + "PatchAdSet": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the ad set", + "nullable": true + }, + "scheduling": { + "$ref": "#/components/schemas/PatchAdSetScheduling" + }, + "bidding": { + "$ref": "#/components/schemas/PatchAdSetBidding" + }, + "targeting": { + "$ref": "#/components/schemas/AdSetTargeting" + }, + "budget": { + "$ref": "#/components/schemas/PatchAdSetBudget" + } + }, + "description": "ad set patch model" + }, + "CreateAdSet": { + "required": [ + "bidding", + "budget", + "campaignId", + "datasetId", + "mediaType", + "name", + "objective", + "schedule", + "targeting", + "trackingCode" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the ad set" + }, + "datasetId": { + "type": "string", + "description": "Dataset id of this ad set" + }, + "campaignId": { + "type": "string", + "description": "Campaign id this ad set belongs to" + }, + "objective": { + "enum": [ + "customAction", + "clicks", + "conversions", + "displays", + "appPromotion", + "revenue", + "storeConversions", + "value", + "reach", + "visits", + "videoViews" + ], + "type": "string", + "description": "Objective of the ad set" + }, + "schedule": { + "$ref": "#/components/schemas/CreateAdSetSchedule" + }, + "bidding": { + "$ref": "#/components/schemas/CreateAdSetBidding" + }, + "targeting": { + "$ref": "#/components/schemas/CreateAdSetTargeting" + }, + "budget": { + "$ref": "#/components/schemas/CreateAdSetBudget" + }, + "trackingCode": { + "type": "string", + "description": "The click tracking code associated to this Ad Set." + }, + "mediaType": { + "enum": [ + "display", + "video" + ], + "type": "string", + "description": "Media type for the ad set" + } + }, + "description": "ad set create model" + }, + "PatchAdSetCategoryBid": { + "type": "object", + "properties": { + "bidAmount": { + "type": "number", + "description": "The Bid amount applied to the given Category associated to an Ad Set. At most 4 decimals are supported. Additional decimals are rounded.", + "format": "double", + "nullable": true + } + }, + "description": "Category Bid to update for a given combination of Ad Set and Category." + }, + "PatchAdSetDisplayMultiplier": { + "type": "object", + "properties": { + "displayMultiplier": { + "type": "number", + "description": "Any positive decimal value. To remove the impact of the Display Multiplier set it to 1. At most 4 decimals are supported. Additional decimals are rounded.", + "format": "double", + "nullable": true + } + }, + "description": "Display Multiplier to update for a given combination of Ad Set and Category." + }, + "PatchCampaign": { + "type": "object", + "properties": { + "spendLimit": { + "$ref": "#/components/schemas/PatchCampaignSpendLimit" + } + }, + "description": "campaign patch model" + }, + "CreateCampaign": { + "required": [ + "advertiserId", + "goal", + "name", + "spendLimit" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the campaign" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser id this campaign belongs to" + }, + "goal": { + "enum": [ + "Unspecified", + "Acquisition", + "Retention" + ], + "type": "string", + "description": "Goal for the marketing campaign" + }, + "spendLimit": { + "$ref": "#/components/schemas/CreateCampaignSpendLimit" + } + }, + "description": "Campaign create model" + }, + "ReadAdSetSchedule": { + "type": "object", + "properties": { + "startDate": { + "$ref": "#/components/schemas/NillableDateTime" + }, + "endDate": { + "$ref": "#/components/schemas/NillableDateTime" + }, + "activationStatus": { + "enum": [ + "on", + "off" + ], + "type": "string", + "description": "Activation status of the ad set, i.e. whether the consumer wants it to deliver", + "nullable": true + }, + "deliveryStatus": { + "enum": [ + "draft", + "inactive", + "live", + "notLive", + "pausing", + "paused", + "scheduled", + "ended", + "notDelivering", + "archived" + ], + "type": "string", + "description": "Delivery status of the delivery of the ad set, i.e. whether the ad set is delivering", + "nullable": true + } + }, + "description": "ad set schedule read model" + }, + "ReadAdSetBidding": { + "type": "object", + "properties": { + "bidAmount": { + "$ref": "#/components/schemas/NillableDecimal" + }, + "bidStrategy": { + "enum": [ + "actions", + "clicks", + "conversions", + "displays", + "installs", + "revenue", + "storeConversions", + "value", + "viewedImpressions", + "Visits", + "completedVideoViews" + ], + "type": "string", + "description": "The intended optimization for the Ad Set", + "nullable": true + }, + "costController": { + "enum": [ + "COS", + "CPC", + "CPI", + "CPM", + "CPO", + "CPSV", + "CPV", + "dailyBudget" + ], + "type": "string", + "description": "How spend is controlled", + "nullable": true + } + }, + "description": "ad set bidding read model" + }, + "AdSetTargeting": { + "type": "object", + "properties": { + "deliveryLimitations": { + "$ref": "#/components/schemas/AdSetDeliveryLimitations" + }, + "geoLocation": { + "$ref": "#/components/schemas/AdSetGeoLocation" + }, + "frequencyCapping": { + "$ref": "#/components/schemas/AdSetFrequencyCapping" + } + }, + "description": "ad set targeting model" + }, + "ReadAdSetBudget": { + "type": "object", + "properties": { + "budgetStrategy": { + "enum": [ + "capped", + "uncapped" + ], + "type": "string", + "description": "Whether your budget is capped or not", + "nullable": true + }, + "budgetRenewal": { + "enum": [ + "undefined", + "daily", + "monthly", + "lifetime" + ], + "type": "string", + "description": "The pace of the budget renewal", + "nullable": true + }, + "budgetDeliverySmoothing": { + "enum": [ + "accelerated", + "standard" + ], + "type": "string", + "description": "The pace at which the budget can be spent", + "nullable": true + }, + "budgetDeliveryWeek": { + "enum": [ + "undefined", + "mondayToSunday", + "tuesdayToMonday", + "wednesdayToTuesday", + "thursdayToWednesday", + "fridayToThursday", + "saturdayToFriday", + "sundayToSaturday" + ], + "type": "string", + "description": "The delivery week for the budget", + "nullable": true + }, + "budgetAmount": { + "$ref": "#/components/schemas/NillableDecimal" + } + }, + "description": "ad set budget read model" + }, + "CampaignSpendLimitV23Q1": { + "type": "object", + "properties": { + "spendLimitType": { + "enum": [ + "capped", + "uncapped" + ], + "type": "string", + "description": "Whether your spend limit is capped or not", + "nullable": true + }, + "spendLimitRenewal": { + "enum": [ + "undefined", + "daily", + "monthly", + "lifetime" + ], + "type": "string", + "description": "The pace of the spend limit renewal", + "nullable": true + }, + "spendLimitAmount": { + "$ref": "#/components/schemas/NillableDecimal" + } + }, + "description": "campaign spend limit model" + }, + "CampaignSpendLimit": { + "type": "object", + "properties": { + "spendLimitType": { + "enum": [ + "capped", + "uncapped" + ], + "type": "string", + "description": "Whether your spend limit is capped or not", + "nullable": true + }, + "spendLimitRenewal": { + "enum": [ + "undefined", + "daily", + "monthly", + "lifetime" + ], + "type": "string", + "description": "The pace of the spend limit renewal", + "nullable": true + }, + "spendLimitAmount": { + "$ref": "#/components/schemas/NillableDecimal" + } + }, + "description": "campaign spend limit model" + }, + "PatchAdSetScheduling": { + "type": "object", + "properties": { + "startDate": { + "$ref": "#/components/schemas/NillableDateTime" + }, + "endDate": { + "$ref": "#/components/schemas/NillableDateTime" + } + }, + "description": "ad set schedule patch model" + }, + "PatchAdSetBidding": { + "type": "object", + "properties": { + "bidAmount": { + "$ref": "#/components/schemas/NillableDecimal" + } + }, + "description": "ad set bidding patch model" + }, + "PatchAdSetBudget": { + "type": "object", + "properties": { + "budgetStrategy": { + "enum": [ + "capped", + "uncapped" + ], + "type": "string", + "description": "Whether your budget is capped or not", + "nullable": true + }, + "budgetRenewal": { + "enum": [ + "undefined", + "daily", + "monthly", + "lifetime" + ], + "type": "string", + "description": "The pace of the budget renewal", + "nullable": true + }, + "budgetDeliverySmoothing": { + "enum": [ + "accelerated", + "standard" + ], + "type": "string", + "description": "The pace at which the budget can be spent", + "nullable": true + }, + "budgetDeliveryWeek": { + "enum": [ + "undefined", + "mondayToSunday", + "tuesdayToMonday", + "wednesdayToTuesday", + "thursdayToWednesday", + "fridayToThursday", + "saturdayToFriday", + "sundayToSaturday" + ], + "type": "string", + "description": "The delivery week for the budget", + "nullable": true + }, + "budgetAmount": { + "$ref": "#/components/schemas/NillableDecimal" + } + }, + "description": "ad set budget patch model" + }, + "CreateAdSetSchedule": { + "required": [ + "startDate" + ], + "type": "object", + "properties": { + "startDate": { + "type": "string", + "format": "date-time" + }, + "endDate": { + "type": "string", + "format": "date-time", + "nullable": true + } + }, + "description": "ad set schedule create model" + }, + "CreateAdSetBidding": { + "required": [ + "costController" + ], + "type": "object", + "properties": { + "bidAmount": { + "type": "number", + "description": "Decimal value target relating to the `bidStrategy` specified. May be `null` for strategies that do not require a target value. At most 4 decimals are supported. Additional decimals are rounded.", + "format": "double", + "nullable": true + }, + "costController": { + "enum": [ + "COS", + "CPC", + "CPI", + "CPM", + "CPO", + "CPSV", + "CPV", + "dailyBudget" + ], + "type": "string", + "description": "How spend is controlled" + } + }, + "description": "ad set bidding create model" + }, + "CreateAdSetTargeting": { + "required": [ + "frequencyCapping" + ], + "type": "object", + "properties": { + "deliveryLimitations": { + "$ref": "#/components/schemas/AdSetDeliveryLimitations" + }, + "geoLocation": { + "$ref": "#/components/schemas/CreateAdSetGeoLocation" + }, + "frequencyCapping": { + "$ref": "#/components/schemas/AdSetFrequencyCapping" + } + }, + "description": "Targeting configuration of the ad set" + }, + "CreateAdSetBudget": { + "required": [ + "budgetStrategy" + ], + "type": "object", + "properties": { + "budgetStrategy": { + "enum": [ + "capped", + "uncapped" + ], + "type": "string" + }, + "budgetRenewal": { + "enum": [ + "undefined", + "daily", + "monthly", + "lifetime" + ], + "type": "string", + "nullable": true + }, + "budgetDeliverySmoothing": { + "enum": [ + "accelerated", + "standard" + ], + "type": "string", + "nullable": true + }, + "budgetDeliveryWeek": { + "enum": [ + "undefined", + "mondayToSunday", + "tuesdayToMonday", + "wednesdayToTuesday", + "thursdayToWednesday", + "fridayToThursday", + "saturdayToFriday", + "sundayToSaturday" + ], + "type": "string", + "nullable": true + }, + "budgetAmount": { + "type": "number", + "format": "double", + "nullable": true + } + }, + "description": "ad set budget create model" + }, + "PatchCampaignSpendLimit": { + "type": "object", + "properties": { + "spendLimitType": { + "enum": [ + "capped", + "uncapped" + ], + "type": "string", + "description": "Whether your spend limit is capped or not", + "nullable": true + }, + "spendLimitRenewal": { + "enum": [ + "undefined", + "daily", + "monthly", + "lifetime" + ], + "type": "string", + "description": "The pace of the spend limit renewal", + "nullable": true + }, + "spendLimitAmount": { + "$ref": "#/components/schemas/NillableDecimal" + } + }, + "description": "campaign spend limit model" + }, + "CreateCampaignSpendLimit": { + "required": [ + "spendLimitType" + ], + "type": "object", + "properties": { + "spendLimitType": { + "enum": [ + "capped", + "uncapped" + ], + "type": "string", + "description": "Whether your spend limit is capped or not" + }, + "spendLimitRenewal": { + "enum": [ + "undefined", + "daily", + "monthly", + "lifetime" + ], + "type": "string", + "description": "The pace of the spend limit renewal", + "nullable": true + }, + "spendLimitAmount": { + "type": "number", + "description": "The amount of the spend limit. null if spendLimitType is uncapped.", + "format": "double", + "nullable": true + } + }, + "description": "campaign spend limit create model" + }, + "NillableDateTime": { + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "type": "string", + "format": "date-time", + "nullable": true, + "x-nullable": true + } + }, + "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." + }, + "NillableDecimal": { + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "type": "number", + "format": "double", + "nullable": true, + "x-nullable": true + } + }, + "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." + }, + "AdSetDeliveryLimitations": { + "type": "object", + "properties": { + "environments": { + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "web", + "inApp" + ], + "type": "string" + }, + "description": "List of environments which the ad set should target", + "nullable": true + }, + "devices": { + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "other", + "desktop", + "mobile", + "tablet" + ], + "type": "string" + }, + "description": "List of devices which the ad set should target", + "nullable": true + }, + "operatingSystems": { + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "android", + "ios", + "unknown" + ], + "type": "string" + }, + "description": "List of operating systems which the ad set should target", + "nullable": true + } + }, + "description": "ad set delivery limitations model" + }, + "AdSetGeoLocation": { + "type": "object", + "properties": { + "countries": { + "$ref": "#/components/schemas/NillableAdSetTargetingRule" + }, + "subdivisions": { + "$ref": "#/components/schemas/NillableAdSetTargetingRule" + }, + "zipCodes": { + "$ref": "#/components/schemas/NillableAdSetTargetingRule" + } + }, + "description": "ad set geolocation model" + }, + "AdSetFrequencyCapping": { + "type": "object", + "properties": { + "frequency": { + "enum": [ + "hourly", + "daily", + "lifetime", + "advanced" + ], + "type": "string", + "description": "Period on which impression limitation is calculated", + "nullable": true + }, + "maximumImpressions": { + "type": "integer", + "description": "Maximum impressions for the specified period", + "format": "int32", + "nullable": true + } + }, + "description": "ad set frequency capping model" + }, + "CreateAdSetGeoLocation": { + "type": "object", + "properties": { + "countries": { + "$ref": "#/components/schemas/AdSetTargetingRule" + }, + "subdivisions": { + "$ref": "#/components/schemas/AdSetTargetingRule" + }, + "zipCodes": { + "$ref": "#/components/schemas/AdSetTargetingRule" + } + }, + "description": "Geolocation configuration of the ad set" + }, + "NillableAdSetTargetingRule": { + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "allOf": [ + { + "$ref": "#/components/schemas/AdSetTargetingRule" + } + ], + "nullable": true, + "x-nullable": true + } + }, + "description": "structure that encapsulates an object that have valid business null values. If the structure is provided (i.e. not null), then the value in it, even null, is provided." + }, + "AdSetTargetingRule": { + "type": "object", + "properties": { + "operand": { + "enum": [ + "undefined", + "in", + "notIn" + ], + "type": "string", + "description": "Operand which states how the values should be applied", + "nullable": true + }, + "values": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of values to apply", + "nullable": true + } + }, + "description": "ad set targeting rule model" + }, + "AdResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AdResource" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for response resource" + }, + "AdListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/AdResource" + }, + "nullable": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for a list of response resources" + }, + "CouponListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CouponResource" + }, + "nullable": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for a list of response resources" + }, + "CouponResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CouponResource" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for response resource" + }, + "CouponSupportedSizesResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CouponSupportedSizesResource" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for response resource" + }, + "CreativeListResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CreativeResource" + }, + "nullable": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for a list of response resources" + }, + "CreativeResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CreativeResource" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Data model for response resource" + }, + "AdWriteRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AdWriteResource" + } + }, + "description": "Data model for input resource" + }, + "CreateCouponRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CreateCouponResource" + } + }, + "description": "Data model for input resource" + }, + "UpdateCouponRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/UpdateCouponResource" + } + }, + "description": "Data model for input resource" + }, + "CreativeWriteRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CreativeWriteResource" + } + }, + "description": "Data model for input resource" + }, + "AdResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/Ad" + }, + "id": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for a Resource" + }, + "CouponResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/Coupon" + }, + "id": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for a Resource" + }, + "CouponSupportedSizesResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/CouponSupportedSizes" + }, + "id": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for a Resource" + }, + "CreativeResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/Creative" + }, + "id": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for a Resource" + }, + "AdWriteResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/AdWrite" + }, + "id": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for a Resource" + }, + "CreateCouponResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/CreateCoupon" + }, + "id": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for a Resource" + }, + "UpdateCouponResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/UpdateCoupon" + }, + "id": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for a Resource" + }, + "CreativeWriteResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/CreativeWrite" + }, + "id": { + "type": "string", + "nullable": true + }, + "type": { + "type": "string", + "nullable": true + } + }, + "description": "Data model for a Resource" + }, + "Ad": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the ad", + "nullable": true + }, + "description": { + "type": "string", + "description": "The description of the ad", + "nullable": true + }, + "creativeId": { + "type": "string", + "description": "The id of the Creative binded to this Ad", + "nullable": true + }, + "adSetId": { + "type": "string", + "description": "The id of the Ad Set binded to this Ad", + "nullable": true + }, + "inventoryType": { + "enum": [ + "Native", + "Display", + "Video" + ], + "type": "string", + "description": "The inventory the Ad belongs to. Possible values are \"Display\" and \"Native\". This is optional since this doesn't make sense for every creative type but will throw an error if not set for a dynamic creative.", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "The date when the ad will be launched\r\nString must be in ISO8601 format", + "nullable": true + }, + "endDate": { + "type": "string", + "description": "The date when when we will stop to show this ad. If the end date is not specified (i.e. null) then the ad will go on forever\r\nString must be in ISO8601 format", + "nullable": true + } + }, + "description": "An ad is the binding that connects a creative with an ad set" + }, + "Coupon": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the Coupon", + "nullable": true + }, + "description": { + "type": "string", + "description": "The description of the Coupon", + "nullable": true + }, + "author": { + "type": "string", + "description": "The login of the person who created this Coupon", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser linked to the Coupon", + "nullable": true + }, + "adSetId": { + "type": "string", + "description": "The id of the Ad Set on which the Coupon is applied to", + "nullable": true + }, + "landingPageUrl": { + "type": "string", + "description": "Web redirection of the landing page url", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "The date when the Coupon will be launched\r\nString must be in ISO8601 format", + "nullable": true + }, + "endDate": { + "type": "string", + "description": "The date when when we will stop to show this Coupon. If the end date is not specified (i.e. null) then the Coupon will go on forever\r\nString must be in ISO8601 format", + "nullable": true + }, + "format": { + "type": "string", + "description": "Format of the Coupon, it can have two values: \"FullFrame\" or \"LogoZone\"", + "nullable": true + }, + "status": { + "type": "string", + "description": "The status of the Coupon", + "nullable": true + }, + "images": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ImageSlide" + }, + "description": "List of slides containing the image URLs", + "nullable": true + }, + "showEvery": { + "type": "integer", + "description": "Show the Coupon every N seconds (between 1 and 10)", + "format": "int32", + "nullable": true + }, + "showDuration": { + "type": "integer", + "description": "Show Coupon for a duration of N seconds (between 1 and 5)", + "format": "int32", + "nullable": true + }, + "rotationsNumber": { + "type": "integer", + "description": "Number of rotations for the Coupons (from 1 to 10 times)", + "format": "int32", + "nullable": true + } + }, + "description": "Coupons are static images applied on ad set which can be displayed within an ad and link to a landing page." + }, + "CouponSupportedSizes": { + "type": "object", + "properties": { + "logoZone": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of LogoZone sizes as string in width x height format", + "nullable": true + }, + "fullFrame": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of FullFrame sizes as string in width x height format", + "nullable": true + } + }, + "description": "Entity containing the list of Coupon supported sizes" + }, + "Creative": { + "required": [ + "name", + "author", + "status", + "advertiserId" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the creative" + }, + "description": { + "type": "string", + "description": "The description of the creative", + "nullable": true + }, + "author": { + "type": "string", + "description": "The login of the person who created this creative (" + }, + "status": { + "type": "string", + "description": "The status of the creative" + }, + "format": { + "type": "string", + "description": "The format of the creative", + "nullable": true + }, + "advertiserId": { + "type": "string", + "description": "Advertiser linked to the Creative" + }, + "datasetId": { + "type": "string", + "description": "Data set id linked to the Creative", + "nullable": true + }, + "imageAttributes": { + "$ref": "#/components/schemas/ImageAttributes" + }, + "htmlTagAttributes": { + "$ref": "#/components/schemas/HtmlTagAttributes" + }, + "dynamicAttributes": { + "$ref": "#/components/schemas/DynamicAttributes" + }, + "adaptiveAttributes": { + "$ref": "#/components/schemas/AdaptiveAttributes" + } + }, + "description": "A creative is a project with the necessary information to display a creative" + }, + "AdWrite": { + "required": [ + "name", + "creativeId", + "adSetId", + "startDate" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the ad" + }, + "description": { + "type": "string", + "description": "The description of the ad", + "nullable": true + }, + "creativeId": { + "type": "string", + "description": "The id of the Creative bound to this Ad" + }, + "adSetId": { + "type": "string", + "description": "The id of the Ad Set bound to this Ad" + }, + "inventoryType": { + "enum": [ + "Display", + "Native" + ], + "type": "string", + "description": "The inventory the Ad to be created or updated belongs to. Possible values are \"Display\" and \"Native\". This is optional since this doesn't make sense for every creative type but will throw an error if not set for a dynamic creative.", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "The date when the ad will be launched\r\nString must be in ISO8601 format" + }, + "endDate": { + "type": "string", + "description": "The date when when we will stop to show this ad. If the end date is not specified (i.e. null) then the ad will go on forever\r\nString must be in ISO8601 format", + "nullable": true + } + }, + "description": "Entity to create or update an ad" + }, + "CreateCoupon": { + "required": [ + "name", + "adSetId", + "landingPageUrl", + "startDate", + "format", + "images", + "showEvery", + "showDuration", + "rotationsNumber" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the Coupon" + }, + "description": { + "type": "string", + "description": "The description of the Coupon", + "nullable": true + }, + "adSetId": { + "type": "string", + "description": "The id of the Ad Set on which the Coupon is applied to" + }, + "landingPageUrl": { + "type": "string", + "description": "Web redirection of the landing page url" + }, + "startDate": { + "type": "string", + "description": "The date when the coupon will be launched\r\nString must be in ISO8601 format" + }, + "endDate": { + "type": "string", + "description": "The date when when we will stop to show this Coupon. If the end date is not specified (i.e. null) then the Coupon will go on forever\r\nString must be in ISO8601 format", + "nullable": true + }, + "format": { + "enum": [ + "FullFrame", + "LogoZone" + ], + "type": "string", + "description": "Format of the Coupon, it can have two values: \"FullFrame\" or \"LogoZone\"" + }, + "images": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CreateImageSlide" + }, + "description": "List of slides containing the images as a base-64 encoded string" + }, + "showEvery": { + "maximum": 10, + "minimum": 1, + "type": "integer", + "description": "Show the Coupon every N seconds (between 1 and 10)", + "format": "int32" + }, + "showDuration": { + "maximum": 5, + "minimum": 1, + "type": "integer", + "description": "Show Coupon for a duration of N seconds (between 1 and 5)", + "format": "int32" + }, + "rotationsNumber": { + "maximum": 10, + "minimum": 1, + "type": "integer", + "description": "Number of rotations for the Coupons (from 1 to 10 times)", + "format": "int32" + } + }, + "description": "Entity to create a Coupon" + }, + "UpdateCoupon": { + "required": [ + "startDate" + ], + "type": "object", + "properties": { + "startDate": { + "type": "string", + "description": "The date when the Coupon will be launched\r\nString must be in ISO8601 format" + }, + "endDate": { + "type": "string", + "description": "The date when when we will stop to show this Coupon. If the end date is not specified (i.e. null) then the Coupon will go on forever\r\nString must be in ISO8601 format", + "nullable": true + } + }, + "description": "Entity to edit a Coupon" + }, + "CreativeWrite": { + "required": [ + "name", + "format", + "datasetId" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the creative" + }, + "description": { + "type": "string", + "description": "The description of the creative", + "nullable": true + }, + "format": { + "enum": [ + "Image", + "HtmlTag", + "Dynamic", + "Adaptive" + ], + "type": "string", + "description": "The format of the creative\r\nYou can use \"Image\", \" HtmlTag\", \"Dynamic\" or \"Adaptive\"" + }, + "datasetId": { + "type": "string", + "description": "Dataset linked to the Creative" + }, + "imageWriteAttributes": { + "$ref": "#/components/schemas/ImageWriteAttributes" + }, + "htmlTagWriteAttributes": { + "$ref": "#/components/schemas/HtmlTagWriteAttributes" + }, + "dynamicWriteAttributes": { + "$ref": "#/components/schemas/DynamicWriteAttributes" + }, + "adaptiveWriteAttributes": { + "$ref": "#/components/schemas/AdaptiveWriteAttributes" + } + }, + "description": "Entity to create or update a creative" + }, + "ImageSlide": { + "type": "object", + "properties": { + "width": { + "type": "integer", + "description": "Width of the Coupon slide", + "format": "int32", + "nullable": true + }, + "height": { + "type": "integer", + "description": "Height of the Coupon slide", + "format": "int32", + "nullable": true + }, + "slideUrls": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of images of the same size uploaded on demostatic.criteo.com when deploying and then static.criteo.net", + "nullable": true + } + }, + "description": "Slide containing the image URLs" + }, + "ImageAttributes": { + "type": "object", + "properties": { + "urls": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of images uploaded on demostatic.criteo.com when deploying and then static.criteo.net", + "nullable": true + }, + "landingPageUrl": { + "type": "string", + "description": "Web redirection of the landing page url", + "format": "uri", + "nullable": true + } + }, + "description": "The attributes specific to Image creatives" + }, + "HtmlTagAttributes": { + "type": "object", + "properties": { + "tags": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + }, + "description": "An array containing the html tags", + "nullable": true + } + }, + "description": "The attributes specific to HtmlTag creatives" + }, + "DynamicAttributes": { + "type": "object", + "properties": { + "logos": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ImageShape" + }, + "description": "Logo images uploaded on demostatic.criteo.com when deploying and then static.criteo.net", + "nullable": true + }, + "creativeBackgroundColor": { + "type": "string", + "description": "Color of the creative's background\r\nValid hexadecimal color (e.g. \"AB00FF\")", + "nullable": true + }, + "bodyTextColor": { + "type": "string", + "description": "Color of the creative's body text\r\nValid hexadecimal color (e.g. \"AB00FF\")", + "nullable": true + }, + "pricesColor": { + "type": "string", + "description": "Color of the creative's prices\r\nValid hexadecimal color (e.g. \"AB00FF\")", + "nullable": true + }, + "primaryFont": { + "type": "string", + "description": "Font of the primary font\r\nValid supported font like \"Arial\"", + "nullable": true + }, + "callsToAction": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "A Call-to-Action (CTA) is an action-driven instruction to your audience intended to provoke an immediate\r\nresponse, such as “Buy now” or “Go!”.", + "nullable": true + }, + "productImageDisplay": { + "enum": [ + "ShowFullImage", + "ZoomOnImage" + ], + "type": "string", + "description": "Value can be \"ShowFullImage\" or \"ZoomOnImage\". Choose whether your product catalog images should fit inside the allocated\r\nspace (\"ShowFullImage\") or whether they should fill that space (\"ZoomOnImage\"). If you choose ZoomOnImage, there may be some\r\nimage cropping.", + "nullable": true + } + }, + "description": "The attributes specific to Dynamic creatives" + }, + "AdaptiveAttributes": { + "required": [ + "layouts", + "logos", + "headlineText", + "headlineFont", + "descriptionText", + "descriptionFont", + "callsToAction", + "colors", + "landingPageUrl" + ], + "type": "object", + "properties": { + "layouts": { + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "Editorial", + "Montage", + "InBannerVideo" + ], + "type": "string" + }, + "description": "The Adaptive layouts that are enabled.\r\nIt can contain any of the following values: \"Editorial\", “Montage“, \"InBannerVideo\"." + }, + "logos": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ImageShape" + }, + "description": "Logo images uploaded on demostatic.criteo.com when deploying and then static.criteo.net" + }, + "headlineText": { + "type": "string", + "description": "The headline text of the banner" + }, + "headlineFont": { + "type": "string", + "description": "Font of the headline\r\nValid supported font like \"Arial\"" + }, + "descriptionText": { + "type": "string", + "description": "The description text of the banner" + }, + "descriptionFont": { + "type": "string", + "description": "Font of the description\r\nValid supported font like \"Arial\"" + }, + "callsToAction": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "A Call-to-Action (CTA) is an action-driven instruction to your audience intended to provoke an immediate\r\nresponse, such as “Buy now” or “Go!”." + }, + "colors": { + "$ref": "#/components/schemas/AdaptiveColors" + }, + "imageSets": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ImageSet" + }, + "description": "Multiple image sets, each image set consists of multiple images and a headline text.", + "nullable": true + }, + "imageDisplay": { + "enum": [ + "ShowFullImage", + "ZoomOnImage" + ], + "type": "string", + "description": "Value can be \"ShowFullImage\" or \"ZoomOnImage\". Choose whether your image set should fit inside the allocated\r\nspace (\"ShowFullImage\") or whether it should fill that space (\"ZoomOnImage\"). If you choose ZoomOnImage, there may be some\r\nimage cropping.", + "nullable": true + }, + "videos": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/VideoDetail" + }, + "description": "Multiple videos potentially in different shapes.", + "nullable": true + }, + "landingPageUrl": { + "type": "string", + "description": "Web redirection of the landing page url", + "format": "uri" + } + }, + "description": "The attributes specific to Adaptive creatives" + }, + "CreateImageSlide": { + "type": "object", + "properties": { + "width": { + "type": "integer", + "description": "Width of the Coupon slide", + "format": "int32", + "nullable": true + }, + "height": { + "type": "integer", + "description": "Height of the Coupon slide", + "format": "int32", + "nullable": true + }, + "slideBase64Strings": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of images of the same size as a base-64 encoded string", + "nullable": true + } + }, + "description": "Slide containing the images of the same size as a base-64 encoded string" + }, + "ImageWriteAttributes": { + "required": [ + "base64Strings", + "landingPageUrl" + ], + "type": "object", + "properties": { + "base64Strings": { + "minItems": 1, + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of images as a base-64 encoded string" + }, + "landingPageUrl": { + "type": "string", + "description": "Web redirection of the landing page url", + "format": "uri" + } + }, + "description": "The attributes specific to create or update an Image creative" + }, + "HtmlTagWriteAttributes": { + "required": [ + "tags" + ], + "type": "object", + "properties": { + "tags": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/Tag" + }, + "description": "An array containing the html tags" + } + }, + "description": "The attributes specific to create or update a HtmlTag creative" + }, + "DynamicWriteAttributes": { + "required": [ + "bodyTextColor", + "callsToAction", + "creativeBackgrounColor", + "logoBase64String", + "pricesColor", + "productImageDisplay" + ], + "type": "object", + "properties": { + "logoBase64String": { + "type": "string", + "description": "Logo image as a base-64 encoded string" + }, + "creativeBackgroundColor": { + "type": "string", + "description": "Color of the creative's background\r\nValid hexadecimal RGB color (e.g. \"AB00FF\")", + "nullable": true + }, + "bodyTextColor": { + "type": "string", + "description": "Color of the creative's body text\r\nValid hexadecimal RGB color (e.g. \"AB00FF\")" + }, + "pricesColor": { + "type": "string", + "description": "Color of the creative's prices\r\nValid hexadecimal RGB color (e.g. \"AB00FF\")" + }, + "primaryFont": { + "type": "string", + "description": "Font of the primary font\r\nValid supported font like \"Arial\"", + "nullable": true + }, + "callsToAction": { + "minItems": 1, + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "A Call-to-Action (CTA) is an action-driven instruction to your audience intended to provoke an immediate\r\nresponse, such as “Buy now” or “Go!”." + }, + "productImageDisplay": { + "enum": [ + "ShowFullImage", + "ZoomOnImage" + ], + "type": "string", + "description": "Value can be \"ShowFullImage\" or \"ZoomOnImage\". Choose whether your product catalog images should fit inside the allocated\r\nspace (\"ShowFullImage\") or whether they should fill that space (\"ZoomOnImage\"). If you choose ZoomOnImage, there may be some\r\nimage cropping." + } + }, + "description": "The attributes specific to create or update a Dynamic creative" + }, + "AdaptiveWriteAttributes": { + "required": [ + "layouts", + "logoBase64String", + "headlineText", + "headlineFont", + "descriptionText", + "descriptionFont", + "callsToAction", + "colors", + "landingPageUrl" + ], + "type": "object", + "properties": { + "layouts": { + "minItems": 1, + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "Editorial", + "Montage", + "InBannerVideo" + ], + "type": "string" + }, + "description": "The Adaptive layouts that are enabled.\r\nIt can contain any of the following values: \"Editorial\", “Montage“, \"InBannerVideo\"." + }, + "logoBase64String": { + "type": "string", + "description": "Logo image as a base-64 encoded string" + }, + "headlineText": { + "type": "string", + "description": "The headline text of the banner" + }, + "headlineFont": { + "type": "string", + "description": "Font of the headline\r\nValid supported font like \"Arial\"" + }, + "descriptionText": { + "type": "string", + "description": "The description text of the banner" + }, + "descriptionFont": { + "type": "string", + "description": "Font of the description\r\nValid supported font like \"Arial\"" + }, + "callsToAction": { + "minItems": 1, + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "A Call-to-Action (CTA) is an action-driven instruction to your audience intended to provoke an immediate\r\nresponse, such as “Buy now” or “Go!”." + }, + "colors": { + "$ref": "#/components/schemas/AdaptiveColors" + }, + "imageSetsBase64": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ImageSetBase64" + }, + "description": "Multiple image sets, each image set consists of multiple images as a base-64 encoded string and a headline text.", + "nullable": true + }, + "imageDisplay": { + "enum": [ + "ShowFullImage", + "ZoomOnImage" + ], + "type": "string", + "description": "Value can be \"ShowFullImage\" or \"ZoomOnImage\". Choose whether your image set should fit inside the allocated\r\nspace (\"ShowFullImage\") or whether it should fill that space (\"ZoomOnImage\"). If you choose ZoomOnImage, there may be some\r\nimage cropping.", + "nullable": true + }, + "videoBase64Strings": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Multiple videos potentially in different shapes, each video is a base-64 encoded string.", + "nullable": true + }, + "landingPageUrl": { + "type": "string", + "description": "Web redirection of the landing page url.", + "format": "uri" + } + }, + "description": "The attributes specific to create or update an Adaptive creative" + }, + "Tag": { + "type": "object", + "properties": { + "htmlTag": { + "type": "string", + "description": "Html tag", + "nullable": true + }, + "size": { + "$ref": "#/components/schemas/Size" + } + }, + "description": "Entity specifying the html of the tag and its size" + }, + "ImageShape": { + "required": [ + "shape", + "url" + ], + "type": "object", + "properties": { + "shape": { + "enum": [ + "Horizontal", + "Vertical", + "Square" + ], + "type": "string", + "description": "Ratio of the image" + }, + "url": { + "type": "string", + "description": "URL of the image uploaded on demostatic.criteo.com when deploying and then static.criteo.net", + "format": "uri" + } + }, + "description": "Entity containing the shape and url of the image" + }, + "AdaptiveColors": { + "required": [ + "logoAreaAndTitleColor", + "backgroundColor", + "text1Color", + "text2Color", + "ctaBackgroundColor", + "ctaTextColor" + ], + "type": "object", + "properties": { + "logoAreaAndTitleColor": { + "type": "string", + "description": "Color of the creative's logo area.\r\nA valid RGB24 color in hexadecimal (e.g. \"AB00FF\")." + }, + "backgroundColor": { + "type": "string", + "description": "Color of the creative's background.\r\nA valid RGB24 color in hexadecimal (e.g. \"AB00FF\")" + }, + "text1Color": { + "type": "string", + "description": "Color of the headline and the description texts.\r\nA valid RGB24 color in hexadecimal (e.g. \"AB00FF\")" + }, + "text2Color": { + "type": "string", + "description": "Color of the image set's headline text.\r\nA valid RGB24 color in hexadecimal (e.g. \"AB00FF\")" + }, + "ctaBackgroundColor": { + "type": "string", + "description": "Color of the background of the CTA.\r\nA valid RGB24 color in hexadecimal (e.g. \"AB00FF\")." + }, + "ctaTextColor": { + "type": "string", + "description": "Color of the text of the CTA.\r\nA valid RGB24 color in hexadecimal (e.g. \"AB00FF\")." + } + }, + "description": "Entity consists of the color aliases of the creative's elements" + }, + "ImageSet": { + "required": [ + "images" + ], + "type": "object", + "properties": { + "images": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ImageShape" + }, + "description": "The images' urls with their shapes." + }, + "headlineText": { + "type": "string", + "description": "The headline of the image set", + "nullable": true + } + }, + "description": "Entity consists of multiple images in different ratios and a headline text." + }, + "VideoDetail": { + "required": [ + "duration", + "shape", + "url" + ], + "type": "object", + "properties": { + "duration": { + "type": "number", + "description": "The duration of the video in milliseconds, the video could be trimmed if it is longer than 30000 ms.", + "format": "double" + }, + "shape": { + "enum": [ + "Horizontal", + "Vertical", + "Square" + ], + "type": "string", + "description": "Shape of the video" + }, + "url": { + "type": "string", + "description": "URL of the video uploaded on demostatic.criteo.com when deploying and then static.criteo.net", + "format": "uri" + } + }, + "description": "Entity consists of the url of the video, its duration and its shape." + }, + "ImageSetBase64": { + "required": [ + "imageBase64Strings" + ], + "type": "object", + "properties": { + "imageBase64Strings": { + "minItems": 1, + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "Multiple images potentially in different shapes, each image is a base-64 encoded string." + }, + "headlineText": { + "type": "string", + "description": "The headline of the image set", + "nullable": true + } + }, + "description": "Entity consists of multiple images in different ratios as a base-64 encoded and a headline text." + }, + "Size": { + "type": "object", + "properties": { + "width": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "height": { + "type": "integer", + "format": "int32", + "nullable": true + } + }, + "description": "Size entity containing width and height of the creative" + }, + "TransparencyReportDataMessage": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/TransparencyReportEntityMessage" + } + } + }, + "description": "This is the message defining the response for Transparency report" + }, + "ProblemsDetails": { + "type": "object", + "properties": { + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Common problems object" + }, + "TransparencyQueryMessage": { + "required": [ + "startDate", + "endDate" + ], + "type": "object", + "properties": { + "shouldDisplayProductIds": { + "type": "boolean", + "description": "Specify if the product ids are displayed in the report.", + "default": false, + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", + "format": "date-time" + } + }, + "description": "This is the message defining the query for Transparency report", + "example": { + "shouldDisplayProductIds": false, + "startDate": "2023-04-03T00:00:00.0000000+00:00", + "endDate": "2023-04-06T00:00:00.0000000+00:00" + } + }, + "PlacementsReportQueryDataMessage": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/PlacementsReportQueryEntityMessage" + } + } + }, + "description": "Contains queries for Placements report", + "example": { + "data": [ + { + "type": "PlacementReport", + "attributes": { + "advertiserIds": "123,456,789", + "campaignIds": "111,222,333,444", + "adsetIds": "135,246,357,468", + "environment": "web", + "placement": "MyPlacement", + "dimensions": [ + "AdsetId", + "AdvertiserId", + "Placement" + ], + "metrics": [ + "clicks", + "displays", + "cost" + ], + "currency": "EUR", + "disclosed": false, + "format": "csv", + "timezone": "Europe/Paris", + "startDate": "2022-08-29T00:00:00.0000000+00:00", + "endDate": "2022-08-29T00:00:00.0000000+00:00" + } + } + ] + } + }, + "StatisticsReportQueryMessage": { + "required": [ + "dimensions", + "metrics", + "currency", + "format", + "startDate", + "endDate" + ], + "type": "object", + "properties": { + "advertiserIds": { + "type": "string", + "description": "The comma-separated list of advertiser ids. If empty, all the advertisers in the portfolio will be used", + "nullable": true + }, + "adSetIds": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "list of adSets ids. If empty, all the adSets will be fetched", + "nullable": true + }, + "adSetNames": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "list of adSets names. If empty, all the adSets will be fetched", + "nullable": true + }, + "adSetStatus": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "list of adSets status. If empty, all the adSets will be fetched", + "nullable": true + }, + "dimensions": { + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "AdsetId", + "Adset", + "AdvertiserId", + "Advertiser", + "CategoryId", + "Category", + "Hour", + "Day", + "Week", + "Month", + "Year", + "Os", + "Device", + "CampaignId", + "Campaign", + "AdId", + "Ad", + "CouponId", + "Coupon", + "MarketingObjectiveId", + "MarketingObjective", + "ChannelId", + "Channel", + "Goal" + ], + "type": "string" + }, + "description": "The dimensions for the report." + }, + "metrics": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of metrics to report." + }, + "currency": { + "type": "string", + "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." + }, + "format": { + "type": "string", + "description": "The file format of the generated report: csv, xml, excel or json." + }, + "timezone": { + "type": "string", + "description": "The timezone used for the report. Timezone Database format (Tz).", + "default": "UTC", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", + "format": "date-time" + } + }, + "description": "This is the message defining the query for Adset report", + "example": { + "advertiserIds": "123,456,789", + "adSetIds": [ + "12345", + "54321" + ], + "adSetNames": [ + "myAdSet1", + "myAdSet2" + ], + "adSetStatus": [ + "Active" + ], + "dimensions": [ + "CampaignId", + "Campaign", + "AdsetId", + "Adset", + "AdvertiserId", + "Advertiser", + "AdId", + "Ad", + "CouponId", + "Coupon", + "CategoryId", + "Category", + "Hour", + "Day", + "Week", + "Month", + "Year", + "Os", + "Device" + ], + "metrics": [ + "Clicks", + "Displays", + "Cpc", + "Visits" + ], + "currency": "EUR", + "format": "csv", + "timezone": "Europe/Paris", + "startDate": "2022-08-29T00:00:00.0000000+00:00", + "endDate": "2022-09-01T00:00:00.0000000+00:00" + } + }, + "TransactionsReportQueryDataMessage": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/TransactionsReportQueryEntityMessage" + } + } + }, + "description": "Contains queries for Transactions report", + "example": { + "data": [ + { + "type": "TransactionsReport", + "attributes": { + "advertiserIds": "123,456,789", + "eventType": "display", + "currency": "EUR", + "format": "csv", + "timezone": "Europe/Paris", + "startDate": "2023-04-03T00:00:00.0000000+00:00", + "endDate": "2023-04-03T00:00:00.0000000+00:00" + } + } + ] + } + }, + "TransparencyReportEntityMessage": { + "required": [ + "type", + "attributes" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "readOnly": true + }, + "attributes": { + "$ref": "#/components/schemas/TransparencyReportAttributes" + } + }, + "description": "This is the message defining the entity response for Transparency report" + }, + "PlacementsReportQueryEntityMessage": { + "required": [ + "type", + "attributes" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "attributes": { + "$ref": "#/components/schemas/PlacementsReportQueryMessage" + } + }, + "description": "Contains a query for Transaction report and its type" + }, + "TransactionsReportQueryEntityMessage": { + "required": [ + "type", + "attributes" + ], + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "attributes": { + "$ref": "#/components/schemas/TransactionsReportQueryMessage" + } + }, + "description": "Contains a query for Transaction report and its type" + }, + "TransparencyReportAttributes": { + "required": [ + "advertiserId", + "tokenValidUntil", + "files" + ], + "type": "object", + "properties": { + "advertiserId": { + "type": "string" + }, + "tokenValidUntil": { + "type": "string", + "format": "date-time" + }, + "files": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/TransparencyReportFile" + } + } + }, + "description": "This is the message defining the attribute response for Transparency report" + }, + "PlacementsReportQueryMessage": { + "required": [ + "advertiserIds", + "dimensions", + "metrics", + "currency", + "format", + "startDate", + "endDate" + ], + "type": "object", + "properties": { + "advertiserIds": { + "type": "string", + "description": "The comma-separated list of advertiser ids." + }, + "campaignIds": { + "type": "string", + "description": "The comma-separated list of campaign ids.", + "nullable": true + }, + "adsetIds": { + "type": "string", + "description": "The comma-separated list of adSet ids.", + "nullable": true + }, + "environment": { + "type": "string", + "description": "Type of environment: Web, Android or iOS.", + "nullable": true + }, + "placement": { + "type": "string", + "description": "Filter the value of the placement", + "nullable": true + }, + "dimensions": { + "uniqueItems": false, + "type": "array", + "items": { + "enum": [ + "AdsetId", + "AdvertiserId", + "Placement", + "Environment", + "AdsetName", + "AdvertiserName", + "CampaignId", + "CampaignName" + ], + "type": "string" + }, + "description": "The dimensions for the report." + }, + "metrics": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of metrics to report." + }, + "currency": { + "type": "string", + "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." + }, + "disclosed": { + "type": "boolean", + "description": "Returns disclosed or undisclosed placements.", + "default": true, + "nullable": true + }, + "format": { + "type": "string", + "description": "The file format of the generated report: csv, xml, excel or json." + }, + "timezone": { + "type": "string", + "description": "The timezone used for the report. Timezone Database format (Tz).", + "default": "UTC", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", + "format": "date-time" + } + }, + "description": "This is the message defining the query for Placements report" + }, + "TransactionsReportQueryMessage": { + "required": [ + "currency", + "format", + "startDate", + "endDate" + ], + "type": "object", + "properties": { + "advertiserIds": { + "type": "string", + "description": "The comma-separated list of advertiser ids. If empty, all the advertisers in the portfolio will be used", + "nullable": true + }, + "eventType": { + "type": "string", + "description": "Apply a filter on Event type .", + "nullable": true + }, + "currency": { + "type": "string", + "description": "The currency used for the report. ISO 4217 code (three-letter capitals)." + }, + "format": { + "type": "string", + "description": "The file format of the generated report: csv, xml, excel or json." + }, + "timezone": { + "type": "string", + "description": "The timezone used for the report. Timezone Database format (Tz).", + "default": "UTC", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date of the report. Date component of ISO 8061 format, any time or timezone component is ignored.", + "format": "date-time" + } + }, + "description": "This is the message defining the query for Transaction report" + }, + "TransparencyReportFile": { + "required": [ + "fileName", + "url" + ], + "type": "object", + "properties": { + "fileName": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "description": "This is the message defining the file response for Transparency report" + }, + "GetPortfolioResponse": { + "type": "object", + "properties": { + "data": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/EntityOfPortfolioMessage" + }, + "description": "The response�s primary data", + "nullable": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CriteoApiError" + }, + "description": "Error list returned by the Criteo API\r\nFor successful requests it is empty", + "nullable": true + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CriteoApiWarning" + }, + "description": "Warnings list returned by the Criteo API\r\nIn some situations the operations are successful but it may be useful to issue warnings to the API consumer.\r\nFor example the endpoint, entity or field is deprecated. Warnings are like compiler warnings, they indicate that problems may occur in the future.", + "nullable": true + } + }, + "description": "Portfolio fetch Response" + }, + "EntityOfPortfolioMessage": { + "type": "object", + "properties": { + "type": { + "enum": [ + "campaign", + "adset", + "ad", + "advertiser", + "agency", + "publisher", + "address", + "client", + "contact", + "industry" + ], + "type": "string", + "description": "A string containing the entity type", + "nullable": true, + "example": "campaign" + }, + "id": { + "type": "string", + "description": "A opaque string containing the unique Id of the entity", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/PortfolioMessage" + }, + "meta": { + "type": "object", + "description": "A meta object that contains application-specific metadata", + "nullable": true + } + }, + "description": "Generic Criteo API successful data model" + }, + "CriteoApiError": { + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "The correlation ID provided by the gateway", + "nullable": true + }, + "type": { + "enum": [ + "access_control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "description": "A machine-readable code specifying error category", + "nullable": true, + "example": "access_control" + }, + "code": { + "enum": [ + "internal-error", + "deprecated-field", + "endpoint-deprecated", + "required-field", + "invalid-date-format", + "invalid", + "invalid-ranged", + "invalid-timespan" + ], + "type": "string", + "description": "A machine-readable error code string in kabab-case. Unique across Criteo", + "nullable": true, + "example": "internal-error" + }, + "instance": { + "type": "string", + "description": "A URI reference that identifies the specific occurrence of the problem", + "nullable": true + }, + "title": { + "type": "string", + "description": "A short, human-readable remarks of the problem type.", + "nullable": true + }, + "detail": { + "type": "string", + "description": "A human-readable explanation specific to this occurrence of the problem.", + "nullable": true + }, + "source": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A machine-readable structure to reference to the exact location(s) causing the error(s).", + "nullable": true + } + }, + "description": "Criteo API response error" + }, + "CriteoApiWarning": { + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "The correlation ID provided by the gateway", + "nullable": true + }, + "type": { + "enum": [ + "access_control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "description": "A machine-readable code specifying error category", + "nullable": true, + "example": "access_control" + }, + "code": { + "enum": [ + "internal-error", + "deprecated-field", + "endpoint-deprecated", + "required-field", + "invalid-date-format", + "invalid", + "invalid-ranged", + "invalid-timespan" + ], + "type": "string", + "description": "A machine-readable error code string in kabab-case. Unique across Criteo", + "nullable": true, + "example": "internal-error" + }, + "instance": { + "type": "string", + "description": "A URI reference that identifies the specific occurrence of the problem", + "nullable": true + }, + "title": { + "type": "string", + "description": "A short, human-readable remarks of the problem type.", + "nullable": true + }, + "detail": { + "type": "string", + "description": "A human-readable explanation specific to this occurrence of the problem.", + "nullable": true + } + }, + "description": "Criteo API response warning" + }, + "PortfolioMessage": { + "type": "object", + "properties": { + "advertiserName": { + "type": "string", + "nullable": true + } + }, + "description": "Class with elementary info about advertiser" + } + }, + "securitySchemes": { + "oauth": { + "type": "oauth2", + "flows": { + "clientCredentials": { + "tokenUrl": "https://api.criteo.com/oauth2/token", + "scopes": { } + }, + "authorizationCode": { + "authorizationUrl": "https://api.criteo.com/oauth2", + "tokenUrl": "https://api.criteo.com/oauth2/token", + "scopes": { } + } + } + } + } + }, + "security": [ + { + "oauth": [ ] + } + ], + "x-samples-languages": [ + "java", + "python", + "php", + "csharp", + "javascript", + "curl", + "ruby" + ] +} \ No newline at end of file diff --git a/api-specifications/marketingsolutions_preview.json b/api-specifications/marketingsolutions_preview.json index 7ed2297..b40982a 100644 --- a/api-specifications/marketingsolutions_preview.json +++ b/api-specifications/marketingsolutions_preview.json @@ -16,13 +16,13 @@ "tags": [ "Audience" ], - "description": "Add/remove users to or from an audience", + "description": "Add/remove identifiers to or from a contact list.", "operationId": "modifyAudienceUsersWithAttributes", "parameters": [ { "name": "audience-id", "in": "path", - "description": "The id of the audience to amend", + "description": "The id of the contact list audience-segment to amend", "required": true, "style": "simple", "schema": { @@ -82,7 +82,7 @@ "tags": [ "Audience" ], - "description": "Delete all identifiers from a Contact List Audience Segment", + "description": "Delete all identifiers from a contact list audience-segment.", "operationId": "deleteContactListIdentifiers", "responses": { "200": { @@ -150,7 +150,7 @@ "tags": [ "Audience" ], - "description": "Add/remove identifiers to or from an Contact List Audience Segment", + "description": "Add/remove identifiers to or from a contact list audience-segment.", "operationId": "updateContactListIdentifiers", "requestBody": { "content": { @@ -329,7 +329,7 @@ { "name": "audience-segment-id", "in": "path", - "description": "The ID of the Audience Segment to amend", + "description": "The id of the contact list audience-segment to amend", "required": true, "style": "simple", "schema": { @@ -6929,57 +6929,6 @@ } } }, - "/preview/product-sets/preview": { - "post": { - "tags": [ - "Reco" - ], - "description": "Display a preview of product set rules", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProductSetStatisticsQuery" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/OkResponse" - } - } - } - }, - "403": { - "description": "Authorization Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreviewFailResponse" - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreviewFailResponse" - } - } - } - } - } - } - }, "/preview/recommendation/search": { "post": { "tags": [ @@ -20392,7 +20341,28 @@ }, "sellerId": { "type": "string", - "description": "The ID of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.", + "description": "Deprecated field. It should be replaced by externalSellerId. The external ID of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.", + "nullable": true + }, + "externalSellerId": { + "type": "string", + "description": "The external id of the seller (case sensitive and 50 UTF8 characters max). This information is required by the Criteo Offsite Ads.", + "nullable": true + }, + "externalSellerName": { + "type": "string", + "description": "The external name of the seller (case sensitive and 750 UTF8 characters max). This information is required by the Criteo Offsite Ads.", + "nullable": true + }, + "numberOfReviews": { + "type": "integer", + "description": "The number of reviews for the product. This information is required by the Criteo Offsite Ads.", + "format": "int32", + "nullable": true + }, + "productRating": { + "type": "string", + "description": "The rating of the product. This information is required by the Criteo Offsite Ads.", "nullable": true } }, @@ -20888,245 +20858,6 @@ }, "description": "Encapsulate a product rule" }, - "OkResponse": { - "required": [ - "data", - "warnings" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ProductSetStatistics" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/PreviewWarning" - }, - "description": "List of warnings" - } - }, - "description": "Successful server response." - }, - "PreviewFailResponse": { - "required": [ - "errors", - "warnings" - ], - "type": "object", - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/PreviewError" - }, - "description": "List of errors" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/PreviewWarning" - }, - "description": "List of warnings" - } - }, - "description": "Error server response." - }, - "ProductSetStatisticsQuery": { - "required": [ - "productSampleCount", - "productSet" - ], - "type": "object", - "properties": { - "productSet": { - "$ref": "#/components/schemas/ProductSetPreview" - }, - "productSampleCount": { - "type": "integer", - "description": "The size of the products sample", - "format": "int32", - "example": 5 - } - }, - "description": "ProductSet statistics preview request" - }, - "ProductSetStatistics": { - "required": [ - "productCount", - "sampleProducts", - "totalProductCount" - ], - "type": "object", - "properties": { - "productCount": { - "type": "integer", - "description": "Number of products in the product set", - "format": "int64" - }, - "totalProductCount": { - "type": "integer", - "description": "Number of products in the partner's catalog", - "format": "int64" - }, - "sampleProducts": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A sample of products (hashed external id) contained in the product set" - } - }, - "description": "ProductSet statistics preview response" - }, - "PreviewWarning": { - "required": [ - "code", - "detail", - "instance", - "title", - "traceId", - "type" - ], - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The MACHINE-READABLE correlation ID provided by the gateway" - }, - "type": { - "type": "string", - "description": "A MACHINE-READABLE code specifying error category. This information is used on client side to focus on certain type of error, to either retry some processing or display only certain type of errors." - }, - "code": { - "type": "string", - "description": "A MACHINE-READABLE error code string in kebab-case. Unique across Criteo" - }, - "instance": { - "type": "string", - "description": "A MACHINE-READABLE URI reference that identifies the specific occurrence of the problem. This could be useful when we want to the return the API Endpoint identifying the exact resource related to the error." - }, - "title": { - "type": "string", - "description": "A short, HUMAN-READABLE summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization." - }, - "detail": { - "type": "string", - "description": "A HUMAN-READABLE detailed explanation specific to this occurrence of the problem. This should not be more that 1 paragraph" - } - }, - "description": "Warning descriptor." - }, - "PreviewError": { - "required": [ - "code", - "detail", - "instance", - "title", - "traceId", - "type" - ], - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The MACHINE-READABLE correlation ID provided by the gateway" - }, - "type": { - "type": "string", - "description": "A MACHINE-READABLE code specifying error category. This information is used on client side to focus on certain type of error, to either retry some processing or display only certain type of errors." - }, - "code": { - "type": "string", - "description": "A MACHINE-READABLE error code string in kebab-case. Unique across Criteo" - }, - "instance": { - "type": "string", - "description": "A MACHINE-READABLE URI reference that identifies the specific occurrence of the problem. This could be useful when we want to the return the API Endpoint identifying the exact resource related to the error." - }, - "title": { - "type": "string", - "description": "A short, HUMAN-READABLE summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization." - }, - "detail": { - "type": "string", - "description": "A HUMAN-READABLE detailed explanation specific to this occurrence of the problem. This should not be more that 1 paragraph" - } - }, - "description": "Error descriptor." - }, - "ProductSetPreview": { - "required": [ - "partnerId", - "rules" - ], - "type": "object", - "properties": { - "partnerId": { - "type": "integer", - "description": "PartnerId", - "format": "int32", - "example": 123 - }, - "rules": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Rules" - }, - "description": "ProductSet rules" - } - }, - "description": "ProductSet preview schema" - }, - "Rules": { - "required": [ - "field", - "operator" - ], - "type": "object", - "properties": { - "field": { - "enum": [ - "Brand", - "Category1", - "Category2", - "Category3", - "CustomLabel0", - "CustomLabel1", - "CustomLabel2", - "CustomLabel3", - "CustomLabel4", - "ExternalItemId", - "RetailPrice", - "SalePrice" - ], - "type": "string", - "example": "Brand" - }, - "operator": { - "enum": [ - "Between", - "EqualTo", - "GreaterThan", - "IsIn", - "IsNotIn", - "LessThan", - "NotBetween", - "NotEqualTo" - ], - "type": "string", - "example": "IsIn" - }, - "values": { - "type": "array", - "items": { - "type": "string" - }, - "nullable": true - } - }, - "description": "ProductSet rule" - }, "OnSiteRecoResponse": { "type": "object", "properties": { @@ -21164,7 +20895,7 @@ }, "userId": { "type": "string", - "description": "Used to retrieve user events from Criteo trackers. Optional if UserEvents are passed.", + "description": "Used to retrieve user events from Criteo trackers.", "nullable": true }, "identityType": { @@ -21174,15 +20905,7 @@ "Gaid" ], "type": "string", - "description": "Type of the user identifier (cto_bundle, Idfa, Gaid...)\r\nOptional if UserId is not set or if its type is cto_bundle", - "nullable": true - }, - "userEvents": { - "type": "array", - "items": { - "$ref": "#/components/schemas/UserEvent" - }, - "description": "Used to perform a recommendation without relying on events stored for a UserId. Optional if UserId is passed.", + "description": "Type of the user identifier (CtoBundle, Idfa, Gaid...)\r\nOptional if its type is CtoBundle", "nullable": true }, "adSetId": { @@ -21239,6 +20962,12 @@ "format": "double", "nullable": true }, + "retailprice": { + "type": "number", + "description": "Product retail price.", + "format": "double", + "nullable": true + }, "googleCategory": { "type": "string", "description": "Product google category.", @@ -21247,38 +20976,6 @@ }, "description": "Represents a recommended product." }, - "UserEvent": { - "required": [ - "productExternalId", - "type", - "dateTime" - ], - "type": "object", - "properties": { - "productExternalId": { - "type": "string", - "description": "Product external id." - }, - "type": { - "enum": [ - 0, - 1, - 2, - 3, - 4 - ], - "type": "integer", - "description": "Event type e.g. page view, sale...", - "format": "int32" - }, - "dateTime": { - "type": "string", - "description": "Event date (format : 2012-04-23T18:25:43.511Z)", - "format": "date-time" - } - }, - "description": "Represents an event where user has interacted with a product." - }, "TargetType": { "enum": [ "Campaign", diff --git a/api-specifications/retailmedia_2022-10.json b/api-specifications/retailmedia_2022-10.json deleted file mode 100644 index e6e5399..0000000 --- a/api-specifications/retailmedia_2022-10.json +++ /dev/null @@ -1,8005 +0,0 @@ -{ - "openapi": "3.0.1", - "info": { - "title": "Criteo API", - "description": "Criteo API - RetailMedia", - "version": "2022-10" - }, - "servers": [ - { - "url": "https://api.criteo.com" - } - ], - "paths": { - "/2022-10/retail-media/me": { - "get": { - "tags": [ - "Gateway" - ], - "description": "Get information about the currently logged application", - "operationId": "GetCurrentApplication", - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ApplicationSummaryModelResponse" - } - } - } - }, - "404": { - "description": "Not Found", - "content": { - "application/json": { } - } - } - } - } - }, - "/2022-10/retail-media/accounts": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of account objects that the current user can access", - "operationId": "AccountsApi_GetApiV1ExternalAccounts", - "parameters": [ - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiPageResponseOfAccount" - } - } - } - } - } - } - }, - "/2022-10/retail-media/accounts/{accountId}/brands": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of retailer objects that are associated with the given account", - "operationId": "AccountsApi_GetApiV1ExternalAccountBrandsByAccountId", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "The given account id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiPageResponseOfBrand" - } - } - } - } - } - } - }, - "/2022-10/retail-media/accounts/{accountId}/retailers": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of retailer objects that are associated with the given account", - "operationId": "AccountsApi_GetApiV1ExternalAccountRetailersByAccountId", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "The given account id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiPageResponseOfRetailer" - } - } - } - } - } - } - }, - "/2022-10/retail-media/assets": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Creates an asset", - "operationId": "CreateAsset", - "requestBody": { - "content": { - "multipart/form-data": { - "schema": { - "required": [ - "AssetFile" - ], - "properties": { - "AssetFile": { - "type": "string", - "description": "The asset binary content", - "format": "binary" - } - } - } - } - } - }, - "responses": { - "201": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/AssetResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/AssetResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/AssetResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/accounts/{accountId}/audiences": { - "get": { - "tags": [ - "Audience" - ], - "description": "Get a page of audiences for a given account ID", - "operationId": "AudienceApi_GetAudiencesByAccountId", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "External account ID which owns audience.", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-example": "68004146450571264" - }, - { - "name": "limitToId", - "in": "query", - "description": "Limits results to the entity IDs specified; parameter key is repeated, eg. limitToId=1&limitToId=2", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - } - }, - { - "name": "pageSize", - "in": "query", - "description": "Specifies the maximum number of entities returned in a single page; defaults to 25 entities per page", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-example": 25 - }, - { - "name": "pageIndex", - "in": "query", - "description": "Returns the specified page of results given a pageSize; pages are 0-indexed", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-example": 0 - } - ], - "responses": { - "200": { - "description": "A page of audiences for the supplied account.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetPageOfAudiencesByAccountIdResponse" - } - } - } - }, - "400": { - "description": "Missing or invalid account ID.", - "content": { - "application/json": { } - } - }, - "404": { - "description": "The audience was not found.", - "content": { - "application/json": { } - } - }, - "406": { - "description": "The Accept header must contain application/json.", - "content": { - "application/json": { } - } - }, - "415": { - "description": "The Content-Type header must be application/json if present.", - "content": { - "application/json": { } - } - } - } - }, - "post": { - "tags": [ - "Audience" - ], - "description": "Create an audience for a given account ID", - "operationId": "AudienceApi_CreateAudience", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "ID of the account to which this audience belongs.", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int64" - }, - "x-example": 68004146450571264 - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceRequest" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "201": { - "description": "The audience that was just created.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceResponse" - } - } - } - }, - "400": { - "description": "Missing or invalid account ID. - OR - Missing or invalid retailerID field. - OR - Missing or invalid name field. Name should be less than 255 characters. - OR - Missing or invalid userType field. Valid values are: 'buy', 'view'. - OR - The retailerTaxonomyIds is not a valid list of IDs or may contain more than 100 elements. - OR - Missing or invalid lookbackDays field.  Valid values are: 7, 14,  30, 45, 60, 90, 120, 150 or 180. - OR - Exactly one of retailerTaxonomyIds or globalBrandIds must be specified, but not both. - OR - The retailer is invalid because it is not live - OR - The globalBrandIds is not a valid list of IDs or may contain more than 100 elements.", - "content": { - "application/json": { } - } - }, - "404": { - "description": "The audience was not found. - OR - You do not have permission to access these global brands.", - "content": { - "application/json": { } - } - }, - "406": { - "description": "The Accept header must contain application/json.", - "content": { - "application/json": { } - } - }, - "409": { - "description": "An audience name should be unique per account.", - "content": { - "application/json": { } - } - }, - "415": { - "description": "The Content-Type header must be application/json if present.", - "content": { - "application/json": { } - } - } - } - } - }, - "/2022-10/retail-media/accounts/{account-id}/creatives": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get account creatives", - "operationId": "CreativesApi_GetApi202110ExternalAccountCreativesByAccountId", - "parameters": [ - { - "name": "account-id", - "in": "path", - "description": "External account id to retrieve creatives for", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Creatives found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Creative202110ListResponse" - } - } - } - } - } - }, - "post": { - "tags": [ - "Campaign" - ], - "description": "Create a creative for an account", - "operationId": "CreativesApi_PostApi202207ExternalAccountCreativesByAccountId", - "parameters": [ - { - "name": "account-id", - "in": "path", - "description": "External account id to create a creative for", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The creative to create", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreativeCreateModel202207" - } - } - }, - "x-nullable": false, - "x-bodyName": "creative" - }, - "responses": { - "201": { - "description": "Creatives created", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Creative202207Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/accounts/{account-id}/creatives/{creative-id}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the specified creative", - "operationId": "CreativesApi_GetApi202207ExternalAccountByAccountId}Creatives{creativeId", - "parameters": [ - { - "name": "account-id", - "in": "path", - "description": "External account id to retrieve creatives for", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "creative-id", - "in": "path", - "description": "Creative to get", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Creatives found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Creative202207Response" - } - } - } - } - } - }, - "put": { - "tags": [ - "Campaign" - ], - "description": "Update a creative", - "operationId": "CreativesApi_PutApi202207ExternalAccountByAccountId}Creatives{creativeId", - "parameters": [ - { - "name": "account-id", - "in": "path", - "description": "External account id containing the creative", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "creative-id", - "in": "path", - "description": "Creative to update", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The creative to create", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreativeUpdateModel202207" - } - } - }, - "x-nullable": false, - "x-bodyName": "creative" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Creative202207Response" - } - } - } - }, - "204": { - "description": "Creative updated", - "content": { - "application/json": { } - } - } - } - } - }, - "/2022-10/retail-media/accounts/{accountId}/catalogs": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Create a request for a Catalog available to the indicated account.", - "operationId": "CatalogApi_PostApiV1ExternalAccountCatalogsByAccountId", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "The account to request the catalog for.", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiRequestOfCatalogRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "Catalog request successfully created", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCatalogStatus" - } - } - } - } - } - } - }, - "/2022-10/retail-media/catalogs/{catalogId}/output": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Output the indicated catalog. Catalogs are only available for retrieval when their associated status request\r\nis at a Success status.\r\nProduces application/x-json-stream of v2021_07 CatalogProduct json objects.", - "operationId": "CatalogApi_GetApiV1ExternalCatalogOutputByCatalogId", - "parameters": [ - { - "name": "catalogId", - "in": "path", - "description": "A catalog ID returned from an account catalog request.", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Catalog download initiated.", - "content": { - "application/x-json-stream": { }, - "application/json": { } - } - }, - "400": { - "description": "The indicated catalog is not available for retrieval, wait for a success status.", - "content": { - "application/x-json-stream": { }, - "application/json": { } - } - } - } - } - }, - "/2022-10/retail-media/catalogs/{catalogId}/status": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Check the status of a catalog request.", - "operationId": "CatalogApi_GetApiV1ExternalCatalogStatusByCatalogId", - "parameters": [ - { - "name": "catalogId", - "in": "path", - "description": "A catalog ID returned from an account catalog request.", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Catalog request found.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCatalogStatus" - } - } - } - } - } - } - }, - "/2022-10/retail-media/categories": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Endpoint to search categories by text and retailer.", - "operationId": "CategorySearchApi_GetApi202204ExternalCategories", - "parameters": [ - { - "name": "retailerId", - "in": "query", - "description": "The retailer id for which Categories fetched", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "textSubstring", - "in": "query", - "description": "Query string to search across Categories", - "style": "form", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The start position in the overall list of matches. Must be zero or greater.", - "style": "form", - "schema": { - "maximum": 500.0, - "minimum": 0.0, - "type": "integer", - "format": "int32", - "default": 0 - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of results to return with each call. Must be greater than zero.", - "style": "form", - "schema": { - "maximum": 100.0, - "minimum": 1.0, - "type": "integer", - "format": "int32", - "default": 100 - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Categories found.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Category202204ListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/categories/{categoryId}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Endpoint to search for a specific category by categoryId.", - "operationId": "CategorySearchApi_GetApi202204ExternalCategorieByCategoryId", - "parameters": [ - { - "name": "categoryId", - "in": "path", - "description": "ID of the desired category", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Retrieval completed and category is returned.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Category202204" - } - } - } - }, - "400": { - "description": "No IDs were passed in.", - "content": { - "application/json": { } - } - }, - "500": { - "description": "A non-request input based error occurred in the server.", - "content": { - "application/json": { } - } - } - } - } - }, - "/2022-10/retail-media/retailers/{retailer-id}/templates": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get retailer creative templates", - "operationId": "CreativesApi_GetApi202207ExternalRetailerTemplatesByRetailerId", - "parameters": [ - { - "name": "retailer-id", - "in": "path", - "description": "External retailer id to retrieve creative templates for", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Templates found", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TemplateListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/retailers/{retailer-id}/templates/{template-id}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets the template for the specified retailer id and template id", - "operationId": "CreativesApi_GetApi202207ExternalRetailerByRetailerId}Templates{templateId", - "parameters": [ - { - "name": "retailer-id", - "in": "path", - "description": "Retailer Id", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "template-id", - "in": "path", - "description": "Template Id", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Template found for the retailer", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/TemplateResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/retailers/{retailerId}/pages": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get the page types available for the given retailer", - "operationId": "RetailerApi_GetApi202110ExternalRetailerPagesByRetailerId", - "parameters": [ - { - "name": "retailerId", - "in": "path", - "description": "The retailers to fetch pages for", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Pages fetched successfully", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ExternalRetailerPages202110" - } - } - } - } - } - } - }, - "/2022-10/retail-media/reports/campaigns": { - "post": { - "tags": [ - "Analytics" - ], - "description": "Request a campaign report", - "operationId": "requestCampaignReport", - "requestBody": { - "description": "Envelope of the request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnvelopeReportRequest" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Returns the status of the report", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" - } - } - } - }, - "400": { - "description": "Bad request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BadRequest" - } - } - } - }, - "401": { - "description": "Missing Authorization or token invalid" - }, - "403": { - "description": "Must have access to RetailMedia accounts" - } - } - } - }, - "/2022-10/retail-media/reports/line-items": { - "post": { - "tags": [ - "Analytics" - ], - "description": "Request a line item report", - "operationId": "requestLineItemReport", - "requestBody": { - "description": "Envelope of the request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnvelopeReportRequest" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "Returns the status of the report", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" - } - } - } - }, - "400": { - "description": "Bad request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BadRequest" - } - } - } - }, - "401": { - "description": "Missing Authorization or token invalid" - }, - "403": { - "description": "Must have access to RetailMedia accounts" - } - } - } - }, - "/2022-10/retail-media/reports/{reportId}/output": { - "get": { - "tags": [ - "Analytics" - ], - "description": "Request the report output", - "operationId": "getReportOutput", - "parameters": [ - { - "name": "reportId", - "in": "path", - "description": "report id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "The output", - "headers": { - "Content-Disposition": { - "description": "Returns a filename for the output", - "required": true, - "schema": { - "type": "string" - } - } - }, - "content": { - "application/octet-stream": { - "schema": { - "type": "string" - } - } - } - }, - "401": { - "description": "Missing Authorization or token invalid" - }, - "403": { - "description": "Must have access to RetailMedia accounts" - }, - "404": { - "description": "ReportId not found" - } - } - } - }, - "/2022-10/retail-media/reports/{reportId}/status": { - "get": { - "tags": [ - "Analytics" - ], - "description": "Get the status of the report", - "operationId": "getReportStatus", - "parameters": [ - { - "name": "reportId", - "in": "path", - "description": "report id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Returns the status of the report", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" - } - } - } - }, - "401": { - "description": "Missing Authorization or token invalid" - }, - "403": { - "description": "Must have access to RetailMedia accounts" - }, - "404": { - "description": "ReportId not found" - } - } - } - }, - "/2022-10/retail-media/accounts/{account-id}/balances": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of balance objects for the given account id", - "operationId": "BalancesApi_GetApi202110ExternalAccountBalancesByAccountId", - "parameters": [ - { - "name": "account-id", - "in": "path", - "description": "The account to get balances for", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/Balance202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/accounts/{account-id}/line-items": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of line item objects for the given account id", - "operationId": "GetApiV2ExternalAccountLineItemsByAccountId", - "parameters": [ - { - "name": "account-id", - "in": "path", - "description": "The given account id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToCampaignId", - "in": "query", - "description": "The campaign ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "limitToType", - "in": "query", - "description": "The campaign types that you would like to limit your result set to", - "style": "form", - "schema": { - "enum": [ - "Unknown", - "Auction", - "Preferred" - ], - "type": "string" - }, - "x-nullable": true - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CommonLineItemPagedListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/accounts/{accountId}/campaigns": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of campaign objects for the given account id", - "operationId": "CampaignsApi_GetApiV1ExternalAccountCampaignsByAccountId", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "The given account id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiPageResponseOfCampaign" - } - } - } - } - } - }, - "post": { - "tags": [ - "Campaign" - ], - "description": "Creates a new campaign with the specified settings", - "operationId": "CampaignsApi_PostApiV1ExternalAccountCampaignsByAccountId", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "The given account id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The campaign settings to create a campaign with", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ExternalPostCampaign" - } - } - }, - "x-nullable": false, - "x-bodyName": "campaign" - }, - "responses": { - "201": { - "description": "Success", - "content": { - "application/json": { } - } - }, - "200": { - "description": "OK", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaign" - } - } - } - } - } - } - }, - "/2022-10/retail-media/auction-line-items/{line-item-id}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets the auction line item for the given line item id", - "operationId": "GetApiV2ExternalAuctionLineItemByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The given line item id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" - } - } - } - } - } - }, - "put": { - "tags": [ - "Campaign" - ], - "description": "Updates the auction line item for the given line item id", - "operationId": "PutApiV2ExternalAuctionLineItemByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The given line item id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The line item settings to create a line item with", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemUpdateModelRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "lineItem" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/auction-line-items/{line-item-id}/targeting/keywords": { - "get": { - "tags": [ - "Campaign" - ], - "description": "This endpoint gets the keyword target on the specified line item.", - "operationId": "TargetingApi_GetApi202110ExternalAuctionLineItemTargetingKeywordsByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/auction-line-items/{line-item-id}/targeting/keywords/append": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint appends one or more keywords to targeting on the specified line item. The resulting state of the keyword target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalAuctionLineItemTargetingKeywordsAppendByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "keywordsToAppend" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/auction-line-items/{line-item-id}/targeting/keywords/delete": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint removes one or more keywords from targeting on the specified line item. The resulting state of the keyword target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalAuctionLineItemTargetingKeywordsDeleteByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "keywordsToRemove" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/balances/{balance-id}/campaigns": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of campaigns for the given balanceId", - "operationId": "BalancesApi_GetApi202110ExternalBalanceCampaignsByBalanceId", - "parameters": [ - { - "name": "balance-id", - "in": "path", - "description": "The balance to get campaigns from", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/balances/{balance-id}/campaigns/append": { - "post": { - "tags": [ - "Campaign" - ], - "description": "appends one or more campaigns to the specified balance", - "operationId": "BalancesApi_PostApi202110ExternalBalanceCampaignsAppendByBalanceId", - "parameters": [ - { - "name": "balance-id", - "in": "path", - "description": "The balance to add campaigns from", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The campaigns to append", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110ListRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "campaigns" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/balances/{balance-id}/campaigns/delete": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Removes one or more campaigns on the specified balance", - "operationId": "BalancesApi_PostApi202110ExternalBalanceCampaignsDeleteByBalanceId", - "parameters": [ - { - "name": "balance-id", - "in": "path", - "description": "The balance to remove campaigns from", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The campaigns to append", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110ListRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "campaigns" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/campaigns/{campaign-id}/auction-line-items": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of auction line item objects for the given campaign id", - "operationId": "GetApiV2ExternalCampaignAuctionLineItemsByCampaignId", - "parameters": [ - { - "name": "campaign-id", - "in": "path", - "description": "The given campaign id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemPagedListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemPagedListResponse" - } - } - } - } - } - }, - "post": { - "tags": [ - "Campaign" - ], - "description": "Creates new auction line item with the specified settings", - "operationId": "PostApiV2ExternalCampaignAuctionLineItemsByCampaignId", - "parameters": [ - { - "name": "campaign-id", - "in": "path", - "description": "The given campaign id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The line item settings to create a line item with", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemCreateModelRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "lineItem" - }, - "responses": { - "201": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/campaigns/{campaign-id}/preferred-line-items": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of preferred line item objects for the given campaign id", - "operationId": "LineItemsApi_GetApi202110ExternalCampaignPreferredLineItemsByCampaignId", - "parameters": [ - { - "name": "campaign-id", - "in": "path", - "description": "The given campaign id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110PagedListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110PagedListResponse" - } - } - } - } - } - }, - "post": { - "tags": [ - "Campaign" - ], - "description": "Creates a new preferred line item with the specified settings", - "operationId": "LineItemsApi_PostApi202110ExternalCampaignPreferredLineItemsByCampaignId", - "parameters": [ - { - "name": "campaign-id", - "in": "path", - "description": "The given campaign id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The line item settings to create a line item with", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItemCreateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "lineItem" - }, - "responses": { - "201": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/campaigns/{campaignId}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets the campaign for the given campaign id", - "operationId": "CampaignsApi_GetApiV1ExternalCampaignByCampaignId", - "parameters": [ - { - "name": "campaignId", - "in": "path", - "description": "The given campaign id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaign" - } - } - } - } - } - }, - "put": { - "tags": [ - "Campaign" - ], - "description": "Updates the campaign for the given campaign id", - "operationId": "CampaignsApi_PutApiV1ExternalCampaignByCampaignId", - "parameters": [ - { - "name": "campaignId", - "in": "path", - "description": "The given campaign id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The campaign settings to update that campaign with", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ExternalPutCampaign" - } - } - }, - "x-nullable": false, - "x-bodyName": "campaign" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaign" - } - } - } - } - } - } - }, - "/2022-10/retail-media/line-items/{line-item-id}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets the line item for the given line item id", - "operationId": "GetApiV2ExternalLineItemByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The given line item id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CommonLineItemResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/line-items/{line-item-id}/products": { - "get": { - "tags": [ - "Campaign" - ], - "description": "This endpoint gets the promoted products on the specified line item.", - "operationId": "PromotedProductsApi_GetApi202110ExternalLineItemProductsByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/line-items/{line-item-id}/products/append": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint appends one or more products to promote on the specified line item. The resulting state of the line item is returned.", - "operationId": "PromotedProductsApi_PostApi202110ExternalLineItemProductsAppendByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "the products to append to this line item", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110ListRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "promotedProductsToAppend" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/line-items/{line-item-id}/products/delete": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint removes one or more products from promotion on the specified line item. The resulting state of the line item is returned.", - "operationId": "PromotedProductsApi_PostApi202110ExternalLineItemProductsDeleteByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110ListRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "promotedProductsToRemove" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-10/retail-media/line-items/{line-item-id}/products/pause": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint pauses one or more promoted products on a specified line item.", - "operationId": "PromotedProducts_PostApi202110ExternalLineItemProductsPauseByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with.", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The products from which their IDs will be used to pause.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110ListRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "promotedProductsToPause" - }, - "responses": { - "200": { - "description": "Success" - } - } - } - }, - "/2022-10/retail-media/line-items/{line-item-id}/products/unpause": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint unpauses one or more promoted products on a specified line item.", - "operationId": "PromotedProducts_PostApi202110ExternalLineItemProductsUnpauseByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with.", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The products from which their IDs will be used to unpause.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110ListRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "promotedProductsToUnpause" - }, - "responses": { - "200": { - "description": "Success" - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets the preferred line item for the given line item id", - "operationId": "LineItemsApi_GetApi202110ExternalPreferredLineItemByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The given line item id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" - } - } - } - } - } - }, - "put": { - "tags": [ - "Campaign" - ], - "description": "Updates the preferred line item for the given line item id", - "operationId": "LineItemsApi_PutApi202110ExternalPreferredLineItemByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The given line item id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The line item settings to create a line item with", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItemUpdateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "lineItem" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket": { - "get": { - "tags": [ - "Campaign" - ], - "description": "This endpoint gets the add to basket target on the specified line item.", - "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingAddToBasketByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - } - } - }, - "put": { - "tags": [ - "Campaign" - ], - "description": "This endpoint sets the scope of the add to basket target on the specified line item.", - "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingAddToBasketByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The add to basket target to set the scope for", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "addToBasketTarget" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket/append": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint appends one or more add to basket ids to targeting on the specified line item. The resulting state of the add to basket target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAddToBasketAppendByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "Ids to append to the target", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketIdsUpdateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "idsToAppend" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket/delete": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint removes one or more add to basket ids from targeting on the specified line item. The resulting state of the add to basket target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAddToBasketDeleteByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "Ids to remove from the target", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketIdsUpdateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "idsToRemove" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/audiences": { - "get": { - "tags": [ - "Campaign" - ], - "description": "This endpoint gets the audience target on the specified line item.", - "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingAudiencesByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" - } - } - } - } - } - }, - "put": { - "tags": [ - "Campaign" - ], - "description": "This endpoint sets the scope of the audience target on the specified line item.", - "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingAudiencesByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The audience target to set the scope for", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "audienceTarget" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/audiences/append": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint appends one or more audiences ids to targeting on the specified line item. The resulting state of the audience target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAudiencesAppendByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "Audience ids to append to the target", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceIdsUpdateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "idsToAppend" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/audiences/delete": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint removes one or more audiences ids from targeting on the specified line item. The resulting state of the audience target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAudiencesDeleteByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "Audience ids to remove from the target", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceIdsUpdateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "idsToRemove" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/stores": { - "get": { - "tags": [ - "Campaign" - ], - "description": "This endpoint gets the store target on the specified line item.", - "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingStoresByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - } - } - }, - "put": { - "tags": [ - "Campaign" - ], - "description": "This endpoint sets the scope of the store target on the specified line item.", - "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingStoresByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The store target to set the scope for", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "storeTarget" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/stores/append": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint appends one or more store ids to targeting on the specified line item. The resulting state of the store target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingStoresAppendByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "Store ids to append to the target", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreIdsUpdateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "idsToAppend" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - } - } - } - }, - "/2022-10/retail-media/preferred-line-items/{line-item-id}/targeting/stores/delete": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint removes one or more store ids from targeting on the specified line item. The resulting state of the store target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingStoresDeleteByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "Store ids to remove from the target", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreIdsUpdateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "idsToRemove" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - } - } - } - } - }, - "components": { - "schemas": { - "ApplicationSummaryModelResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ApplicationSummaryModelResource" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "Response of ApplicationSummaryModel" - }, - "ApplicationSummaryModelResource": { - "type": "object", - "properties": { - "type": { - "type": "string", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ApplicationSummaryModel" - } - }, - "description": "A class that represents a ValueType in a guild compliant way" - }, - "CommonProblem": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The request correlation ID this problem comes from.", - "nullable": true - }, - "traceIdentifier": { - "type": "string", - "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", - "nullable": true - }, - "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "The problem's category.", - "nullable": true - }, - "code": { - "type": "string", - "description": "A machine-readable error code, expressed as a string value.", - "nullable": true - }, - "instance": { - "type": "string", - "description": "A URI that identifies the specific occurrence of the problem.", - "nullable": true - }, - "title": { - "type": "string", - "description": "A short human-readable description of the problem type", - "nullable": true - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem", - "nullable": true - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "A machine-readable structure to reference to the exact location(s) causing the error(s)", - "nullable": true - }, - "stackTrace": { - "type": "string", - "nullable": true - } - }, - "description": "Common problem object. Can be specialized as needed." - }, - "ApplicationSummaryModel": { - "type": "object", - "properties": { - "applicationId": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "name": { - "type": "string", - "nullable": true - }, - "organizationId": { - "type": "integer", - "format": "int32", - "nullable": true - }, - "description": { - "type": "string", - "nullable": true - }, - "criteoService": { - "type": "string", - "nullable": true - } - }, - "description": "Model of ApplicationSummary" - }, - "JsonApiPageResponseOfAccount": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "x-nullable": false - }, - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndAccountAndAccount" - }, - "x-nullable": false - } - }, - "description": "A wrapper class to return a single page of with metadata", - "x-nullable": false - }, - "JsonApiPageResponseOfBrand": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "x-nullable": false - }, - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndBrandAndBrand" - }, - "x-nullable": false - } - }, - "description": "A wrapper class to return a single page of with metadata", - "x-nullable": false - }, - "JsonApiPageResponseOfRetailer": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "x-nullable": false - }, - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndRetailerAndRetailer" - }, - "x-nullable": false - } - }, - "description": "A wrapper class to return a single page of with metadata", - "x-nullable": false - }, - "PageMetadata": { - "required": [ - "currentPageSize", - "currentPageIndex" - ], - "type": "object", - "properties": { - "totalItemsAcrossAllPages": { - "type": "integer", - "format": "int64", - "nullable": true, - "x-nullable": true - }, - "currentPageSize": { - "type": "integer", - "format": "int32", - "x-nullable": false - }, - "currentPageIndex": { - "type": "integer", - "format": "int32", - "x-nullable": false - }, - "totalPages": { - "type": "integer", - "format": "int64", - "nullable": true, - "x-nullable": true - }, - "nextPage": { - "type": "string", - "x-nullable": false - }, - "previousPage": { - "type": "string", - "x-nullable": false - } - }, - "description": "Metadata related to the current request", - "x-nullable": false - }, - "CommonError": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", - "x-nullable": false - }, - "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "(REQUIRED) The classification of the error.", - "x-nullable": false - }, - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case.", - "x-nullable": false - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem.", - "x-nullable": false - }, - "title": { - "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", - "x-nullable": false - }, - "detail": { - "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", - "x-nullable": false - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string", - "x-nullable": false - }, - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", - "x-nullable": false - }, - "stackTrace": { - "type": "string", - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", - "x-nullable": false - } - }, - "description": "A JSON:API Common error structure", - "x-nullable": false - }, - "CommonWarning": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", - "x-nullable": false - }, - "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "(REQUIRED) The classification of the error.", - "x-nullable": false - }, - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case.", - "x-nullable": false - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem.", - "x-nullable": false - }, - "title": { - "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", - "x-nullable": false - }, - "detail": { - "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", - "x-nullable": false - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string", - "x-nullable": false - }, - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", - "x-nullable": false - }, - "stackTrace": { - "type": "string", - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", - "x-nullable": false - } - }, - "description": "A JSON:API Base common warning", - "x-nullable": false - }, - "JsonApiBodyWithIdOfInt64AndAccountAndAccount": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAccount" - } - }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false - }, - "JsonApiBodyWithIdOfInt64AndBrandAndBrand": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalBrand" - } - }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false - }, - "JsonApiBodyWithIdOfInt64AndRetailerAndRetailer": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalRetailer" - } - }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false - }, - "ExternalAccount": { - "required": [ - "name", - "type", - "countries", - "currency", - "parentAccountLabel", - "timeZone" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 510, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "type": { - "enum": [ - "unknown", - "supply", - "demand" - ], - "type": "string", - "x-nullable": false - }, - "subtype": { - "enum": [ - "unknown", - "brand", - "seller" - ], - "type": "string", - "nullable": true, - "x-nullable": true - }, - "countries": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "x-nullable": false - }, - "currency": { - "type": "string", - "x-nullable": false - }, - "parentAccountLabel": { - "maxLength": 510, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "timeZone": { - "type": "string", - "x-nullable": false - } - }, - "description": "A Retail Media Account used to launch campaigns and line items", - "x-nullable": false - }, - "ExternalBrand": { - "required": [ - "name" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 120, - "minLength": 0, - "type": "string", - "x-nullable": false - } - }, - "description": "A Retail Media Brand used to represent a collection of products sold under the same umbrella name", - "x-nullable": false - }, - "ExternalRetailer": { - "required": [ - "name" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 100, - "type": "string", - "x-nullable": false - }, - "campaignEligibilities": { - "type": "array", - "items": { - "enum": [ - "unknown", - "auction", - "preferred" - ], - "type": "string", - "x-nullable": false - }, - "x-nullable": false - } - }, - "description": "A Retail Media Retailer used to represent a selection of products from multiple brands", - "x-nullable": false - }, - "AssetResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/AssetResource" - }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true - }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true - } - }, - "description": "A class implementing the response of the Criteo API as described in API Guild Guidelines with a single entity as body" - }, - "AssetResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/Asset" - }, - "id": { - "type": "string", - "nullable": true - }, - "type": { - "type": "string", - "nullable": true - } - }, - "description": "A class that represents an entity in a guild compliant way" - }, - "Asset": { - "required": [ - "fileExtension" - ], - "type": "object", - "properties": { - "fileExtension": { - "type": "string", - "description": "The file extension that is asset is representing. Example: jpg, png, gif or pdf." - }, - "fileLocation": { - "type": "string", - "description": "A url pointing towards the static file the asset represents.", - "nullable": true - }, - "id": { - "type": "string", - "nullable": true - } - }, - "description": "Handles pointing towards binary content that advertisers can use later on, for example in their creatives." - }, - "GetPageOfAudiencesByAccountIdResponse": { - "required": [ - "data", - "metadata" - ], - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RetailMediaAudience" - }, - "description": "data", - "readOnly": true - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "description": "errors", - "nullable": true, - "readOnly": true - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "description": "warnings", - "nullable": true, - "readOnly": true - }, - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - } - }, - "description": "Response for page of audiences by given account" - }, - "CreateRetailMediaAudienceResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/CreateRetailMediaAudience" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "description": "errors", - "nullable": true, - "readOnly": true - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "description": "warnings", - "nullable": true, - "readOnly": true - } - }, - "description": "Response of CreateAudienceRequest" - }, - "CreateRetailMediaAudienceRequest": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceBody" - } - }, - "description": "Request to create an audience" - }, - "RetailMediaAudience": { - "required": [ - "attributes", - "audienceType", - "id", - "type" - ], - "type": "object", - "properties": { - "audienceType": { - "enum": [ - "customerList", - "userBehavior" - ], - "type": "string", - "description": "Type of the audience", - "example": "customerList" - }, - "id": { - "type": "string", - "description": "Unique ID of this audience.", - "example": "314159" - }, - "type": { - "type": "string", - "description": "Name of the entity i.e. RetailMediaAudienceSummary", - "example": "RetailMediaAudienceSummary" - }, - "attributes": { - "$ref": "#/components/schemas/RetailMediaAudienceAttributes" - } - }, - "description": "All the information about a retail media audience" - }, - "CreateRetailMediaAudience": { - "required": [ - "attributes", - "id", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "RetailMediaAudience" - }, - "id": { - "type": "integer", - "description": "Unique ID of this audience.", - "format": "int64", - "example": 314159 - }, - "attributes": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceAttributes" - } - }, - "description": "Retail Media audience used in audience creation" - }, - "CreateRetailMediaAudienceBody": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "RetailMediaAudience" - }, - "attributes": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceAttributes" - } - }, - "description": "Request body of CreateRetailMediaAudienceRequest" - }, - "RetailMediaAudienceAttributes": { - "required": [ - "name", - "retailerId" - ], - "type": "object", - "properties": { - "retailerId": { - "type": "string", - "description": "ID of the retailer associated with this audience", - "example": "68004146450571264" - }, - "name": { - "type": "string", - "description": "Name of the audience.", - "example": "Test audience" - }, - "userBehaviorDetails": { - "$ref": "#/components/schemas/UserBehaviorDetails" - }, - "customerListDetails": { - "$ref": "#/components/schemas/CustomerListDetails" - } - }, - "description": "Fields of a retail media audience" - }, - "CreateRetailMediaAudienceAttributes": { - "required": [ - "lookbackWindow", - "name", - "retailerId", - "userType" - ], - "type": "object", - "properties": { - "userType": { - "enum": [ - "viewer", - "buyer" - ], - "type": "string", - "description": "Type of the user", - "example": "viewer" - }, - "lookbackWindow": { - "enum": [ - "P7D", - "P14D", - "P30D", - "P45D", - "P60D", - "P90D", - "P120D", - "P150D", - "P180D" - ], - "type": "string", - "description": "Length of lookback window", - "example": "P7D" - }, - "brandIds": { - "type": "array", - "items": { - "type": "integer", - "format": "int64" - }, - "description": "The brands to target", - "nullable": true - }, - "categoryIds": { - "type": "array", - "items": { - "type": "integer", - "format": "int32" - }, - "description": "The categories to target", - "nullable": true - }, - "retailerId": { - "type": "integer", - "description": "ID of the retailer associated with this audience", - "format": "int64", - "example": 6841 - }, - "name": { - "type": "string", - "description": "Name of the audience.", - "example": "Test audience" - } - }, - "description": "Parameters needed to create an audience" - }, - "UserBehaviorDetails": { - "required": [ - "lookbackWindow", - "targetIds", - "targetType", - "userType" - ], - "type": "object", - "properties": { - "targetType": { - "enum": [ - "brand", - "category" - ], - "type": "string", - "description": "Type of target", - "example": "category" - }, - "targetIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "ist of ids for the target type" - }, - "lookbackWindow": { - "enum": [ - "P7D", - "P14D", - "P30D", - "P45D", - "P60D", - "P90D", - "P120D", - "P150D", - "P180D" - ], - "type": "string", - "description": "Length of lookback window", - "example": "P7D" - }, - "userType": { - "enum": [ - "viewer", - "buyer" - ], - "type": "string", - "description": "Type of the user", - "example": "viewer" - } - }, - "description": "Details about a user behavior retail media audience" - }, - "CustomerListDetails": { - "required": [ - "size" - ], - "type": "object", - "properties": { - "size": { - "type": "string", - "description": "Number of users in the customer list audience.", - "example": "34212" - } - }, - "description": "Details of a customer list audience" - }, - "Creative202110ListResponse": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfCreative202110" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a list of response resources", - "x-nullable": false - }, - "Creative202207Response": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfCreative202207" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for response resource", - "x-nullable": false - }, - "JsonApiSingleResponseOfCatalogStatus": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndCatalogStatusAndCatalogStatus" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "x-nullable": false - } - }, - "description": "A JSON:API wrapper class to add one JSON:API within a data property", - "x-nullable": false - }, - "Category202204ListResponse": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfCategory202204" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a list of response resources", - "x-nullable": false - }, - "Category202204": { - "required": [ - "text", - "name", - "parentId" - ], - "type": "object", - "properties": { - "text": { - "type": "string", - "description": "Category Text", - "x-nullable": false - }, - "name": { - "type": "string", - "description": "Category Name", - "x-nullable": false - }, - "parentId": { - "type": "string", - "description": "Category ParentId", - "x-nullable": false - } - }, - "description": "List of retailer's categories, including the full hierarchy of categories and their parent category ID", - "x-nullable": false - }, - "TemplateListResponse": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfTemplate" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a list of response resources", - "x-nullable": false - }, - "TemplateResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfTemplate" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for response resource", - "x-nullable": false - }, - "ExternalRetailerPages202110": { - "type": "object", - "properties": { - "pageTypes": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "List of valid pages for a retailer", - "x-nullable": false - } - }, - "description": "Wraps a list of valid pages for a retailer", - "x-nullable": false - }, - "CreativeCreateModel202207": { - "required": [ - "name", - "retailerId", - "templateId", - "templateVariableValues" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the creative", - "x-nullable": false - }, - "brandId": { - "type": "integer", - "description": "The brand associated to the creative", - "format": "int64", - "x-nullable": false - }, - "retailerId": { - "type": "integer", - "description": "The retailer associated to the creative", - "format": "int32", - "x-nullable": false - }, - "templateId": { - "type": "integer", - "description": "The creative template used for this creative", - "format": "int32", - "x-nullable": false - }, - "templateVariableValues": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TemplateVariableValue" - }, - "description": "The template chosen values", - "x-nullable": false - } - }, - "description": "Create model of a creative", - "x-nullable": false - }, - "CreativeUpdateModel202207": { - "required": [ - "name", - "retailerId", - "templateId", - "templateVariableValues" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the creative", - "x-nullable": false - }, - "brandId": { - "type": "integer", - "description": "The brand associated to the creative", - "format": "int64", - "x-nullable": false - }, - "retailerId": { - "type": "integer", - "description": "The retailer associated to the creative", - "format": "int32", - "x-nullable": false - }, - "templateId": { - "type": "integer", - "description": "The creative template used for this creative", - "format": "int32", - "x-nullable": false - }, - "templateVariableValues": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TemplateVariableValue" - }, - "description": "The template chosen values", - "x-nullable": false - } - }, - "description": "Update model of a creative", - "x-nullable": false - }, - "JsonApiRequestOfCatalogRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiBodyWithoutIdOfCatalogRequestAndCatalogRequest" - } - }, - "description": "A JSON:API wrapper class to format a with Type, and Attributes properties", - "x-nullable": false - }, - "ResourceOfCreative202110": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/Creative202110" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ProblemDetails": { - "type": "object", - "properties": { - "traceId": { - "type": "string", - "description": "The request correlation ID this problem comes from.", - "nullable": true - }, - "traceIdentifier": { - "type": "string", - "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", - "nullable": true - }, - "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "The problem's category.", - "x-nullable": false - }, - "code": { - "type": "string", - "description": "A machine-readable error code, expressed as a string value.", - "x-nullable": false - }, - "instance": { - "type": "string", - "description": "A URI that identifies the specific occurrence of the problem.", - "x-nullable": false - }, - "title": { - "type": "string", - "description": "A short human-readable description of the problem type", - "x-nullable": false - }, - "detail": { - "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem", - "x-nullable": false - }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string", - "x-nullable": false - }, - "description": "A machine-readable structure to reference to the exact location(s) causing the error(s)", - "x-nullable": false - }, - "stackTrace": { - "type": "string", - "description": "Technical information, only used in non-prod environments", - "x-nullable": false - } - }, - "description": "Data model for common error or warning", - "x-nullable": false - }, - "ResourceOfCreative202207": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/Creative202207" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "JsonApiBodyWithIdOfInt64AndCatalogStatusAndCatalogStatus": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalCatalogStatus" - } - }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false - }, - "ResourceOfCategory202204": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/Category202204" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ResourceOfTemplate": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/Template" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "TemplateVariableValue": { - "required": [ - "id" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the template variable the value is applied to", - "x-nullable": false - }, - "textVariableValue": { - "$ref": "#/components/schemas/TextVariableValue" - }, - "choiceVariableValue": { - "$ref": "#/components/schemas/ChoiceVariableValue" - }, - "colorVariableValue": { - "$ref": "#/components/schemas/ColorVariableValue" - }, - "filesVariableValue": { - "$ref": "#/components/schemas/FilesVariableValue" - }, - "hyperlinkVariableValue": { - "$ref": "#/components/schemas/HyperlinkVariableValue" - } - }, - "description": "A value for a variable in a creative template.", - "x-nullable": false - }, - "JsonApiBodyWithoutIdOfCatalogRequestAndCatalogRequest": { - "required": [ - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalCatalogRequest" - } - }, - "description": "A JSON:API wrapper class to format a with Type, and\r\nAttributes properties", - "x-nullable": false - }, - "Creative202110": { - "required": [ - "name", - "status", - "retailerId" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "x-nullable": false - }, - "status": { - "enum": [ - "Ready", - "In_Use", - "Archived", - "Deleted" - ], - "type": "string", - "x-nullable": false - }, - "brandId": { - "type": "integer", - "format": "int64", - "nullable": true, - "x-nullable": true - }, - "retailerId": { - "type": "integer", - "format": "int32", - "x-nullable": false - }, - "associatedLineItemIds": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - } - }, - "description": "Metadata and usage info of a preferred deals creative", - "x-nullable": false - }, - "Creative202207": { - "required": [ - "name", - "status", - "retailerId", - "creativeFormatType", - "environments", - "templateVariableValues" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name", - "x-nullable": false - }, - "status": { - "enum": [ - "Ready", - "In_Use", - "Archived", - "Deleted" - ], - "type": "string", - "description": "Creative Status", - "x-nullable": false - }, - "brandId": { - "type": "integer", - "description": "Brand Id", - "format": "int64", - "nullable": true, - "x-nullable": true - }, - "retailerId": { - "type": "integer", - "description": "Retailer Id", - "format": "int32", - "x-nullable": false - }, - "associatedLineItemIds": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "Associated Line Item Ids", - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "description": "Updated at time", - "format": "date-time", - "x-nullable": false - }, - "creativeFormatType": { - "enum": [ - "Unknown", - "FlagShip", - "Showcase", - "SponsoredProducts", - "Butterfly", - "BundleBoost", - "IAB", - "CUSTOM", - "DisplayPanel", - "DigitalShelfTalker" - ], - "type": "string", - "description": "Creative format type", - "x-nullable": false - }, - "environments": { - "type": "array", - "items": { - "enum": [ - "Web", - "Mobile", - "App" - ], - "type": "string", - "x-nullable": false - }, - "description": "Environment type (e.g. mobile, web, app)", - "x-nullable": false - }, - "templateVariableValues": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TemplateVariableValue" - }, - "description": "The template chosen values", - "x-nullable": false - } - }, - "description": "A creative entity", - "x-nullable": false - }, - "ExternalCatalogStatus": { - "required": [ - "status", - "currency", - "rowCount", - "fileSizeBytes", - "md5Checksum", - "createdAt", - "message" - ], - "type": "object", - "properties": { - "status": { - "enum": [ - "unknown", - "pending", - "success", - "failure", - "expired" - ], - "type": "string", - "description": "An enumeration of the status of the catalog.", - "x-nullable": false - }, - "currency": { - "type": "string", - "description": "An ISO4217 representation of the currency products are listed under in this catalog.", - "x-nullable": false - }, - "rowCount": { - "type": "integer", - "description": "An indication of the number of products contained in this catalog. Available when\r\nthis catalog reaches a success status.", - "format": "int32", - "nullable": true, - "x-nullable": true - }, - "fileSizeBytes": { - "type": "integer", - "description": "The size of this catalog in bytes. Available when this catalog reaches a success status.", - "format": "int32", - "nullable": true, - "x-nullable": true - }, - "md5Checksum": { - "type": "string", - "description": "An MD5 checksum of the catalog for use in confirming complete and uncorrupted retrieval.\r\nAvailable when this catalog reaches a success status.", - "nullable": true, - "x-nullable": true - }, - "createdAt": { - "type": "string", - "description": "The time this catalog was created. Represented as a UTC ISO8601 string.", - "format": "date-time", - "x-nullable": false - }, - "message": { - "type": "string", - "description": "An optional information message intended for developer consumption.", - "nullable": true, - "x-nullable": true - } - }, - "description": "The status of an asynchronous request to generate a catalog", - "x-nullable": false - }, - "Template": { - "required": [ - "creativeFormat", - "name", - "skuCollectionMin", - "skuPerCollectionMin", - "allCollectionsMandatory", - "createdAt", - "updatedAt", - "sections" - ], - "type": "object", - "properties": { - "creativeFormat": { - "enum": [ - "Unknown", - "FlagShip", - "Showcase", - "SponsoredProducts", - "Butterfly", - "BundleBoost", - "IAB", - "CUSTOM", - "DisplayPanel", - "DigitalShelfTalker" - ], - "type": "string", - "description": "The kind of creative this template can be used to build.", - "x-nullable": false - }, - "name": { - "type": "string", - "description": "The name of the template", - "x-nullable": false - }, - "retailerId": { - "type": "integer", - "description": "The retailer associated to the template", - "format": "int32", - "x-nullable": false - }, - "skuCollectionMin": { - "type": "integer", - "description": "TODO: what is it ?", - "format": "int32", - "x-nullable": false - }, - "skuCollectionMax": { - "type": "integer", - "description": "TODO: what is it ?", - "format": "int32", - "nullable": true, - "x-nullable": true - }, - "skuPerCollectionMin": { - "type": "integer", - "description": "TODO: what is it ?", - "format": "int32", - "x-nullable": false - }, - "skuPerCollectionMax": { - "type": "integer", - "description": "TODO: what is it ?", - "format": "int32", - "nullable": true, - "x-nullable": true - }, - "displayableSkusMax": { - "type": "integer", - "description": "TODO: what is it ?", - "format": "int32", - "nullable": true, - "x-nullable": true - }, - "allCollectionsMandatory": { - "type": "boolean", - "description": "TODO: what is it ?", - "x-nullable": false - }, - "createdAt": { - "type": "string", - "description": "The time at which the template was created", - "format": "date-time", - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "description": "The time at which the template was updated", - "format": "date-time", - "x-nullable": false - }, - "sections": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Section" - }, - "description": "The sections holding various template variables", - "x-nullable": false - } - }, - "description": "A template for creating creatives.", - "x-nullable": false - }, - "TextVariableValue": { - "required": [ - "text" - ], - "type": "object", - "properties": { - "text": { - "type": "string", - "description": "The displayed text", - "x-nullable": false - } - }, - "description": "A value of a template text variable", - "x-nullable": false - }, - "ChoiceVariableValue": { - "required": [ - "chosenOptions" - ], - "type": "object", - "properties": { - "chosenOptions": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "The chosen options", - "x-nullable": false - } - }, - "description": "A value of a template choice variable (among different accepted options)", - "x-nullable": false - }, - "ColorVariableValue": { - "required": [ - "color" - ], - "type": "object", - "properties": { - "color": { - "pattern": "^#(([0-9a-fA-F]{2}){3}|([0-9a-fA-F]){3})$", - "type": "string", - "description": "The displayed color (HEX format)", - "x-nullable": false - } - }, - "description": "A value of a template color variable", - "x-nullable": false - }, - "FilesVariableValue": { - "required": [ - "assetIds" - ], - "type": "object", - "properties": { - "assetIds": { - "minLength": 1, - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "The assets representing the images to be displayed", - "x-nullable": false - } - }, - "description": "A value of a template file variable (one or several files), like images in a creative", - "x-nullable": false - }, - "HyperlinkVariableValue": { - "required": [ - "url" - ], - "type": "object", - "properties": { - "url": { - "type": "string", - "description": "The url to redirect to", - "x-nullable": false - } - }, - "description": "A value of a template hyperlink variable", - "x-nullable": false - }, - "ExternalCatalogRequest": { - "type": "object", - "properties": { - "format": { - "enum": [ - "json-newline" - ], - "type": "string", - "default": "json-newline", - "x-nullable": false - }, - "brandIdFilter": { - "type": "array", - "items": { - "type": "string", - "format": "long-id" - }, - "x-nullable": false - } - }, - "description": "A request for a catalog under the specified format. Currently \"json-newline\" is supported.", - "x-nullable": false - }, - "Section": { - "required": [ - "title", - "templateVariables" - ], - "type": "object", - "properties": { - "title": { - "type": "string", - "x-nullable": false - }, - "templateVariables": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TemplateVariable" - }, - "x-nullable": false - } - }, - "description": "Section object that hold template variables", - "x-nullable": false - }, - "TemplateVariable": { - "required": [ - "id", - "required", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "The id of the variable", - "x-nullable": false - }, - "required": { - "type": "boolean", - "description": "Whether the variable is required", - "x-nullable": false - }, - "type": { - "enum": [ - "Text", - "Choice", - "Color", - "Files", - "Hyperlink" - ], - "type": "string", - "description": "The type of the variable", - "x-nullable": false - }, - "choiceVariableSpecification": { - "$ref": "#/components/schemas/ChoiceVariableSpecification" - }, - "textVariableSpecification": { - "$ref": "#/components/schemas/TextVariableSpecification" - }, - "filesVariablesSpecification": { - "$ref": "#/components/schemas/FilesVariablesSpecification" - } - }, - "description": "A variable in a creative template", - "x-nullable": false - }, - "ChoiceVariableSpecification": { - "required": [ - "options" - ], - "type": "object", - "properties": { - "options": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ChoiceOption" - }, - "description": "The available options", - "x-nullable": false - }, - "maxSelected": { - "type": "integer", - "description": "The maximum number of selectable options", - "format": "int32", - "nullable": true, - "x-nullable": true - }, - "minSelected": { - "type": "integer", - "description": "The minimum number of selectable options", - "format": "int32", - "nullable": true, - "x-nullable": true - } - }, - "description": "Specification of choice variable", - "x-nullable": false - }, - "TextVariableSpecification": { - "type": "object", - "properties": { - "maxChars": { - "type": "integer", - "description": "The maximum amount of characters accepted for the text", - "format": "int32", - "nullable": true, - "x-nullable": true - } - }, - "description": "Specification of a text variable", - "x-nullable": false - }, - "FilesVariablesSpecification": { - "required": [ - "extensions", - "minFiles" - ], - "type": "object", - "properties": { - "extensions": { - "type": "array", - "items": { - "enum": [ - "Unknown", - "Jpeg", - "Png", - "Gif", - "Pdf" - ], - "type": "string", - "x-nullable": false - }, - "description": "The accepted file extensions", - "x-nullable": false - }, - "maxBytes": { - "type": "integer", - "description": "The maximum amount of bytes per file", - "format": "int32", - "nullable": true, - "x-nullable": true - }, - "minFiles": { - "type": "integer", - "description": "The minimum amount of files requires", - "format": "int32", - "nullable": true, - "x-nullable": true - }, - "maxFile": { - "type": "integer", - "description": "The maximum amount of files required", - "format": "int32", - "nullable": true, - "x-nullable": true - } - }, - "description": "Specification of a file variable", - "x-nullable": false - }, - "ChoiceOption": { - "required": [ - "dependentVariables", - "id" - ], - "type": "object", - "properties": { - "dependentVariables": { - "type": "array", - "items": { - "$ref": "#/components/schemas/TemplateVariable" - }, - "description": "Template variables unblocked when the option is chosen", - "x-nullable": false - }, - "id": { - "type": "string", - "description": "The id of the option", - "x-nullable": false - } - }, - "description": "An option given in a choice", - "x-nullable": false - }, - "EnvelopeReportStatus": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ReportStatus" - } - }, - "description": "Standard response envelope" - }, - "BadRequest": { - "type": "object", - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Error" - }, - "description": "The errors", - "nullable": true - } - }, - "description": "Bad request errors" - }, - "EnvelopeReportRequest": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ReportRequest" - } - }, - "description": "Standard response envelope" - }, - "ReportStatus": { - "required": [ - "type", - "id", - "attributes" - ], - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ReportStatusAttributes" - }, - "id": { - "type": "string", - "description": "The reportId" - }, - "type": { - "type": "string", - "description": "Always \"RetailMediaReportStatus\"" - } - }, - "description": "Report Status" - }, - "Error": { - "required": [ - "code", - "type", - "traceId", - "instance" - ], - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case." - }, - "detail": { - "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", - "nullable": true - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem." - }, - "source": { - "$ref": "#/components/schemas/MapString" - }, - "stackTrace": { - "type": "array", - "items": { - "type": "string" - }, - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology e.g. .Net, Scala, etc", - "nullable": true - }, - "title": { - "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", - "nullable": true - }, - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem." - }, - "type": { - "enum": [ - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "Type should be: \"validation\", \"unavailable, \"violation\", \"permission\", ..." - } - }, - "description": "Error" - }, - "ReportRequest": { - "required": [ - "type", - "attributes" - ], - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ReportRequestAttributes" - }, - "type": { - "type": "string", - "description": "Always \"RetailMediaReportRequest\"" - } - }, - "description": "Report Request" - }, - "ReportStatusAttributes": { - "required": [ - "status" - ], - "type": "object", - "properties": { - "createdAt": { - "type": "string", - "description": "Timestamp when the report started to execute", - "format": "date-time", - "nullable": true - }, - "expiresAt": { - "type": "string", - "description": "Timestamp when the cached report will expire", - "format": "date-time", - "nullable": true - }, - "fileSizeBytes": { - "type": "integer", - "description": "Total size of file, only populated on success", - "format": "int64", - "nullable": true - }, - "md5Checksum": { - "type": "string", - "description": "The MD5 checksum of the content, only populated on success", - "nullable": true - }, - "message": { - "type": "string", - "description": "Failure message, only populated on failure", - "nullable": true - }, - "rowCount": { - "type": "integer", - "description": "Rows of data in report, only populated on success", - "format": "int64", - "nullable": true - }, - "status": { - "enum": [ - "pending", - "success", - "failure", - "expired" - ], - "type": "string", - "description": "One of \"pending\", \"success\", \"failure\", or \"expired\"" - } - }, - "description": "Report Status Attributes" - }, - "MapString": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)." - }, - "ReportRequestAttributes": { - "required": [ - "reportType", - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "clickAttributionWindow": { - "enum": [ - "7D", - "14D", - "30D" - ], - "type": "string", - "description": "Defaults to value from campaign or one of \"7D\", \"14D\", or \"30D\". If specified, viewAttributionWindow must also be specified", - "nullable": true - }, - "endDate": { - "type": "string", - "description": "YYYY-MM-DD, must not be before startDate and not more than 100 days later", - "format": "date" - }, - "format": { - "enum": [ - "csv", - "json", - "json-compact", - "json-newline" - ], - "type": "string", - "description": "One of \"json\" (default),\"json-compact\",\"json-newline\" or \"csv\"", - "default": "json", - "nullable": true - }, - "id": { - "type": "string", - "description": "The id of the campaign or line item. Either 'id' or 'ids' must be specified, but not both", - "nullable": true - }, - "ids": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The ids of the campaigns or line items. Either 'id' or 'ids' must be specified, but not both", - "nullable": true - }, - "reportType": { - "enum": [ - "summary", - "keyword", - "pageType", - "productCategory", - "product", - "attributedTransactions" - ], - "type": "string", - "description": "One of \"summary\", \"keyword\", \"pageType\", \"productCategory\", \"product\", or \"attributedTransactions\"" - }, - "revenueType": { - "type": "string", - "nullable": true - }, - "startDate": { - "type": "string", - "description": "YYYY-MM-DD", - "format": "date" - }, - "timeZone": { - "type": "string", - "nullable": true - }, - "viewAttributionWindow": { - "enum": [ - "none", - "1D", - "7D", - "14D", - "30D" - ], - "type": "string", - "description": "Defaults to value from campaign or one of \"none\", \"1D\", \"7D\", \"14D\", or \"30D\". If specified, must be less than clickAttributionWindow, which must also be specified.", - "nullable": true - } - }, - "description": "Report Request Attributes" - }, - "Balance202110PagedListResponse": { - "type": "object", - "properties": { - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfBalance202110" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a paged list of response resources", - "x-nullable": false - }, - "CommonLineItemPagedListResponse": { - "type": "object", - "properties": { - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfCommonLineItem" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a paged list of response resources", - "x-nullable": false - }, - "JsonApiPageResponseOfCampaign": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "x-nullable": false - }, - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndCampaignAndCampaign" - }, - "x-nullable": false - } - }, - "description": "A wrapper class to return a single page of with metadata", - "x-nullable": false - }, - "JsonApiSingleResponseOfCampaign": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndCampaignAndCampaign" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "x-nullable": false - } - }, - "description": "A JSON:API wrapper class to add one JSON:API within a data property", - "x-nullable": false - }, - "AuctionLineItemResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfAuctionLineItem" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for response resource", - "x-nullable": false - }, - "KeywordTarget202110Response": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfKeywordTarget202110" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a value type resource outcome", - "x-nullable": false - }, - "BalanceCampaign202110PagedListResponse": { - "type": "object", - "properties": { - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfBalanceCampaign202110" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a paged list of response resources", - "x-nullable": false - }, - "AuctionLineItemPagedListResponse": { - "type": "object", - "properties": { - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfAuctionLineItem" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a paged list of response resources", - "x-nullable": false - }, - "PreferredLineItem202110PagedListResponse": { - "type": "object", - "properties": { - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfPreferredLineItem202110" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a paged list of response resources", - "x-nullable": false - }, - "PreferredLineItem202110Response": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfPreferredLineItem202110" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for response resource", - "x-nullable": false - }, - "CommonLineItemResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfCommonLineItem" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for response resource", - "x-nullable": false - }, - "PromotedProduct202110PagedListResponse": { - "type": "object", - "properties": { - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfPromotedProduct202110" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a paged list of response resources", - "x-nullable": false - }, - "AddToBasketTarget202110Response": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfAddToBasketTarget202110" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a value type resource outcome", - "x-nullable": false - }, - "AudienceTarget202110Response": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfAudienceTarget202110" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a value type resource outcome", - "x-nullable": false - }, - "StoreTarget202110Response": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfStoreTarget202110" - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for a value type resource outcome", - "x-nullable": false - }, - "ExternalPostCampaign": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiBodyWithoutIdOfCampaignAttributesAndCampaign" - } - }, - "description": "An object that represents the available options to set when creating a Retail Media Campaign", - "x-nullable": false - }, - "AuctionLineItemUpdateModelRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfAuctionLineItemUpdateModel" - } - }, - "description": "Data model for an input resource", - "x-nullable": false - }, - "KeywordTarget202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfKeywordTarget202110" - } - }, - "description": "Data model for a value type input resource", - "x-nullable": false - }, - "BalanceCampaign202110ListRequest": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfBalanceCampaign202110" - }, - "x-nullable": false - } - }, - "description": "A class implementing the request of the Criteo API as described in API Guild Guidelines with a collection of entities as body\r\nhttps://criteo.atlassian.net/wiki/spaces/GUA/pages/1564541212/Response+Body+Guidelines", - "x-nullable": false - }, - "AuctionLineItemCreateModelRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/InputResourceOfAuctionLineItemCreateModel" - } - }, - "description": "Data model for a create input resource", - "x-nullable": false - }, - "PreferredLineItemCreateModel202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/InputResourceOfPreferredLineItemCreateModel202110" - } - }, - "description": "Data model for a create input resource", - "x-nullable": false - }, - "ExternalPutCampaign": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/JsonApiBodyWithExternalIdOfEditableCampaignAttributesAndCampaign" - } - }, - "description": "An object that represents the available options to set when editing a Retail Media Campaign", - "x-nullable": false - }, - "PromotedProduct202110ListRequest": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfPromotedProduct202110" - }, - "x-nullable": false - } - }, - "description": "Data model for a list of input resources", - "x-nullable": false - }, - "PreferredLineItemUpdateModel202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfPreferredLineItemUpdateModel202110" - } - }, - "description": "Data model for an input resource", - "x-nullable": false - }, - "AddToBasketTarget202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfAddToBasketTarget202110" - } - }, - "description": "Data model for a value type input resource", - "x-nullable": false - }, - "AddToBasketIdsUpdateModel202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfAddToBasketIdsUpdateModel202110" - } - }, - "description": "Data model for a value type input resource", - "x-nullable": false - }, - "AudienceTarget202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfAudienceTarget202110" - } - }, - "description": "Data model for a value type input resource", - "x-nullable": false - }, - "AudienceIdsUpdateModel202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfAudienceIdsUpdateModel202110" - } - }, - "description": "Data model for a value type input resource", - "x-nullable": false - }, - "StoreTarget202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfStoreTarget202110" - } - }, - "description": "Data model for a value type input resource", - "x-nullable": false - }, - "StoreIdsUpdateModel202110Request": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ValueTypeResourceOfStoreIdsUpdateModel202110" - } - }, - "description": "Data model for a value type input resource", - "x-nullable": false - }, - "ResourceOfBalance202110": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalBalance202110" - } - }, - "description": "A class that represents an entity in a guild compliant way", - "x-nullable": false - }, - "ResourceOfCommonLineItem": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalCommonLineItem" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "JsonApiBodyWithIdOfInt64AndCampaignAndCampaign": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalCampaign" - } - }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false - }, - "ResourceOfAuctionLineItem": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAuctionLineItem" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ValueTypeResourceOfKeywordTarget202110": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalKeywordTarget202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "ResourceOfBalanceCampaign202110": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalBalanceCampaign202110" - } - }, - "description": "A class that represents an entity in a guild compliant way", - "x-nullable": false - }, - "ResourceOfPreferredLineItem202110": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalPreferredLineItem202110" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ResourceOfPromotedProduct202110": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalPromotedProduct202110" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ValueTypeResourceOfAddToBasketTarget202110": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAddToBasketTarget202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "ValueTypeResourceOfAudienceTarget202110": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAudienceTarget202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "ValueTypeResourceOfStoreTarget202110": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalStoreTarget202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "JsonApiBodyWithoutIdOfCampaignAttributesAndCampaign": { - "required": [ - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalCampaignAttributes" - } - }, - "description": "A JSON:API wrapper class to format a with Type, and\r\nAttributes properties", - "x-nullable": false - }, - "ResourceOfAuctionLineItemUpdateModel": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAuctionLineItemUpdateModel" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "InputResourceOfAuctionLineItemCreateModel": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAuctionLineItemCreateModel" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "InputResourceOfPreferredLineItemCreateModel202110": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalPreferredLineItemCreateModel202110" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "JsonApiBodyWithExternalIdOfEditableCampaignAttributesAndCampaign": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalEditableCampaignAttributes" - } - }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false - }, - "ResourceOfPreferredLineItemUpdateModel202110": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalPreferredLineItemUpdateModel202110" - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ValueTypeResourceOfAddToBasketIdsUpdateModel202110": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAddToBasketIdsUpdateModel202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "ValueTypeResourceOfAudienceIdsUpdateModel202110": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAudienceIdsUpdateModel202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "ValueTypeResourceOfStoreIdsUpdateModel202110": { - "type": "object", - "properties": { - "type": { - "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalStoreIdsUpdateModel202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "ExternalBalance202110": { - "required": [ - "name", - "poNumber", - "memo", - "deposited", - "spent", - "remaining", - "startDate", - "endDate", - "status", - "createdAt", - "updatedAt" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "x-nullable": false - }, - "poNumber": { - "type": "string", - "x-nullable": false - }, - "memo": { - "type": "string", - "x-nullable": false - }, - "deposited": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "spent": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "remaining": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "status": { - "enum": [ - "unknown", - "scheduled", - "active", - "ended" - ], - "type": "string", - "x-nullable": false - }, - "createdAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - } - }, - "description": "A Retail Media Balance used to determine the funds available for any or all campaigns in an account", - "x-nullable": false - }, - "ExternalCommonLineItem": { - "required": [ - "name", - "type", - "startDate", - "targetRetailerId", - "campaignId", - "budgetRemaining", - "createdAt", - "updatedAt" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "type": { - "enum": [ - "unknown", - "auction", - "preferred" - ], - "type": "string", - "x-nullable": false - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date", - "nullable": true - }, - "status": { - "enum": [ - "unknown", - "active", - "scheduled", - "draft", - "paused", - "budgetHit", - "ended", - "archived", - "noFunds" - ], - "type": "string", - "x-nullable": false - }, - "targetRetailerId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "budget": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "campaignId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "budgetSpent": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "budgetRemaining": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "createdAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - } - }, - "description": "A common line item to hold line item information shared between preferred and auction line items", - "x-nullable": false - }, - "ExternalCampaign": { - "required": [ - "accountId", - "promotedBrandIds", - "budgetSpent", - "budgetRemaining", - "createdAt", - "updatedAt", - "name" - ], - "type": "object", - "properties": { - "accountId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "promotedBrandIds": { - "type": "array", - "items": { - "type": "string", - "format": "long-id" - }, - "x-nullable": false - }, - "budgetSpent": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "budgetRemaining": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "status": { - "enum": [ - "unknown", - "active", - "inactive" - ], - "type": "string", - "x-nullable": false - }, - "createdAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "type": { - "enum": [ - "unknown", - "auction", - "preferred" - ], - "type": "string", - "default": "auction", - "x-nullable": false - }, - "drawableBalanceIds": { - "type": "array", - "items": { - "type": "string", - "format": "long-id" - }, - "x-nullable": false - }, - "clickAttributionWindow": { - "enum": [ - "7D", - "14D", - "30D", - "unknown" - ], - "type": "string", - "default": "30D", - "x-nullable": false - }, - "viewAttributionWindow": { - "enum": [ - "none", - "1D", - "7D", - "14D", - "30D", - "unknown" - ], - "type": "string", - "default": "none", - "x-nullable": false - }, - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "budget": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "clickAttributionScope": { - "enum": [ - "unknown", - "sameSku", - "sameSkuCategory", - "sameSkuCategoryBrand" - ], - "type": "string", - "nullable": true, - "x-nullable": true - }, - "viewAttributionScope": { - "enum": [ - "unknown", - "sameSku", - "sameSkuCategory", - "sameSkuCategoryBrand" - ], - "type": "string", - "nullable": true, - "x-nullable": true - } - }, - "description": "A Retail Media Campaign used to represent an advertiser's marketing objective", - "x-nullable": false - }, - "ExternalAuctionLineItem": { - "required": [ - "name", - "startDate", - "targetRetailerId", - "campaignId", - "budgetRemaining", - "createdAt", - "updatedAt" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date", - "nullable": true - }, - "maxBid": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "budget": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "monthlyPacing": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "dailyPacing": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "bidStrategy": { - "enum": [ - "unknown", - "conversion", - "clicks", - "revenue" - ], - "type": "string", - "default": "conversion", - "x-nullable": false - }, - "targetRetailerId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "status": { - "enum": [ - "unknown", - "active", - "scheduled", - "draft", - "paused", - "budgetHit", - "ended", - "archived", - "noFunds" - ], - "type": "string", - "x-nullable": false - }, - "targetBid": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "isAutoDailyPacing": { - "type": "boolean", - "default": false, - "x-nullable": false - }, - "campaignId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "budgetSpent": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "budgetRemaining": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "createdAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - } - }, - "description": "A Retail Media Auction Line Item used to hold bid settings for one or many promoted products on a single retailer", - "x-nullable": false - }, - "ExternalKeywordTarget202110": { - "required": [ - "keywords" - ], - "type": "object", - "properties": { - "keywords": { - "type": "object", - "additionalProperties": { - "enum": [ - "unknown", - "negativeExact", - "negativeBroad" - ], - "type": "string", - "x-nullable": false - }, - "description": "Keywords that targeting specifications exist for", - "x-nullable": false - } - }, - "description": "Identifies keyword targeting for a line item", - "x-nullable": false - }, - "ExternalBalanceCampaign202110": { - "type": "object", - "description": "Campaigns related to the balance", - "x-nullable": false - }, - "ExternalPreferredLineItem202110": { - "required": [ - "name", - "startDate", - "endDate", - "status", - "pacing", - "page", - "targetRetailerId", - "budget", - "campaignId", - "createdAt", - "updatedAt" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "status": { - "enum": [ - "unknown", - "active", - "scheduled", - "draft", - "paused", - "budgetHit", - "ended", - "archived", - "noFunds" - ], - "type": "string", - "x-nullable": false - }, - "pacing": { - "enum": [ - "unknown", - "standard", - "accelerated" - ], - "type": "string", - "x-nullable": false - }, - "capping": { - "$ref": "#/components/schemas/ExternalLineItemCapping202110" - }, - "page": { - "$ref": "#/components/schemas/ExternalLineItemPage202110" - }, - "targetRetailerId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "budget": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "campaignId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "budgetSpent": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "budgetRemaining": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "createdAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "creativeId": { - "type": "string", - "format": "long-id", - "nullable": true, - "x-nullable": true - } - }, - "description": "A Retail Media Preferred Line Item used to hold bid settings for one or many promoted products on a single retailer", - "x-nullable": false - }, - "ExternalPromotedProduct202110": { - "type": "object", - "properties": { - "bidOverride": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - } - }, - "description": "identifies a promoted product", - "x-nullable": false - }, - "ExternalAddToBasketTarget202110": { - "required": [ - "scope" - ], - "type": "object", - "properties": { - "scope": { - "enum": [ - "unknown", - "include", - "exclude" - ], - "type": "string", - "description": "Scope of the add to basket target", - "x-nullable": false - }, - "productIds": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "Product ids that add to basket should target", - "x-nullable": false - }, - "categoryIds": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "Category ids that add to basket should target", - "x-nullable": false - } - }, - "description": "Identifies add to basket targeting for a line item", - "x-nullable": false - }, - "ExternalAudienceTarget202110": { - "required": [ - "scope", - "audienceIds" - ], - "type": "object", - "properties": { - "scope": { - "enum": [ - "unknown", - "include", - "exclude" - ], - "type": "string", - "description": "Scope of the audience target", - "x-nullable": false - }, - "audienceIds": { - "type": "array", - "items": { - "type": "string", - "format": "long-id" - }, - "description": "Audience ids that should be targeted", - "x-nullable": false - } - }, - "description": "Identifies audience targeting for a line item", - "x-nullable": false - }, - "ExternalStoreTarget202110": { - "required": [ - "scope", - "storeIds" - ], - "type": "object", - "properties": { - "scope": { - "enum": [ - "unknown", - "include", - "exclude" - ], - "type": "string", - "description": "Scope of the store target", - "x-nullable": false - }, - "storeIds": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "Store ids that should be targeted", - "x-nullable": false - } - }, - "description": "Identifies store targeting for a line item", - "x-nullable": false - }, - "ExternalCampaignAttributes": { - "required": [ - "name" - ], - "type": "object", - "properties": { - "type": { - "enum": [ - "unknown", - "auction", - "preferred" - ], - "type": "string", - "default": "auction", - "x-nullable": false - }, - "drawableBalanceIds": { - "type": "array", - "items": { - "type": "string", - "format": "long-id" - }, - "x-nullable": false - }, - "clickAttributionWindow": { - "enum": [ - "7D", - "14D", - "30D", - "unknown" - ], - "type": "string", - "default": "30D", - "x-nullable": false - }, - "viewAttributionWindow": { - "enum": [ - "none", - "1D", - "7D", - "14D", - "30D", - "unknown" - ], - "type": "string", - "default": "none", - "x-nullable": false - }, - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "budget": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "clickAttributionScope": { - "enum": [ - "unknown", - "sameSku", - "sameSkuCategory", - "sameSkuCategoryBrand" - ], - "type": "string", - "nullable": true, - "x-nullable": true - }, - "viewAttributionScope": { - "enum": [ - "unknown", - "sameSku", - "sameSkuCategory", - "sameSkuCategoryBrand" - ], - "type": "string", - "nullable": true, - "x-nullable": true - } - }, - "description": "An object that represents the available options to set when creating a Retail Media Campaign", - "x-nullable": false - }, - "ExternalAuctionLineItemUpdateModel": { - "required": [ - "name", - "startDate", - "status", - "targetBid", - "isAutoDailyPacing" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date", - "nullable": true - }, - "status": { - "enum": [ - "unknown", - "active", - "scheduled", - "draft", - "paused", - "budgetHit", - "ended", - "archived", - "noFunds" - ], - "type": "string", - "x-nullable": false - }, - "budget": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "targetBid": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "maxBid": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "monthlyPacing": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "dailyPacing": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "isAutoDailyPacing": { - "type": "boolean", - "x-nullable": false - }, - "bidStrategy": { - "enum": [ - "unknown", - "conversion", - "clicks", - "revenue" - ], - "type": "string", - "default": "conversion", - "x-nullable": false - } - }, - "description": "Model to update a retail media auction line item", - "x-nullable": false - }, - "ExternalAuctionLineItemCreateModel": { - "required": [ - "name", - "startDate", - "targetRetailerId" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date", - "nullable": true - }, - "status": { - "enum": [ - "unknown", - "active", - "scheduled", - "draft", - "paused", - "budgetHit", - "ended", - "archived", - "noFunds" - ], - "type": "string", - "x-nullable": false - }, - "targetRetailerId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "budget": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "targetBid": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "maxBid": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "monthlyPacing": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "dailyPacing": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "isAutoDailyPacing": { - "type": "boolean", - "default": false, - "x-nullable": false - }, - "bidStrategy": { - "enum": [ - "unknown", - "conversion", - "clicks", - "revenue" - ], - "type": "string", - "default": "conversion", - "x-nullable": false - } - }, - "description": "Model to create a retail media auction line item", - "x-nullable": false - }, - "ExternalPreferredLineItemCreateModel202110": { - "required": [ - "name", - "startDate", - "endDate", - "pacing", - "page", - "targetRetailerId", - "budget" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "status": { - "enum": [ - "unknown", - "active", - "scheduled", - "draft", - "paused", - "budgetHit", - "ended", - "archived", - "noFunds" - ], - "type": "string", - "x-nullable": false - }, - "pacing": { - "enum": [ - "unknown", - "standard", - "accelerated" - ], - "type": "string", - "x-nullable": false - }, - "capping": { - "$ref": "#/components/schemas/ExternalLineItemCapping202110" - }, - "page": { - "$ref": "#/components/schemas/ExternalLineItemPage202110" - }, - "targetRetailerId": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, - "budget": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "creativeId": { - "type": "string", - "format": "long-id", - "nullable": true, - "x-nullable": true - } - }, - "description": "Model used to create a preferred line item", - "x-nullable": false - }, - "ExternalEditableCampaignAttributes": { - "required": [ - "name", - "clickAttributionWindow", - "viewAttributionWindow" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "budget": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "clickAttributionWindow": { - "enum": [ - "7D", - "14D", - "30D", - "unknown" - ], - "type": "string", - "x-nullable": false - }, - "viewAttributionWindow": { - "enum": [ - "none", - "1D", - "7D", - "14D", - "30D", - "unknown" - ], - "type": "string", - "x-nullable": false - }, - "clickAttributionScope": { - "enum": [ - "unknown", - "sameSku", - "sameSkuCategory", - "sameSkuCategoryBrand" - ], - "type": "string", - "nullable": true, - "x-nullable": true - }, - "viewAttributionScope": { - "enum": [ - "unknown", - "sameSku", - "sameSkuCategory", - "sameSkuCategoryBrand" - ], - "type": "string", - "nullable": true, - "x-nullable": true - } - }, - "description": "An object that represents the available options to set when editing a Retail Media Campaign", - "x-nullable": false - }, - "ExternalPreferredLineItemUpdateModel202110": { - "required": [ - "name", - "startDate", - "endDate", - "status" - ], - "type": "object", - "properties": { - "name": { - "maxLength": 255, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "status": { - "enum": [ - "unknown", - "active", - "scheduled", - "draft", - "paused", - "budgetHit", - "ended", - "archived", - "noFunds" - ], - "type": "string", - "x-nullable": false - }, - "pacing": { - "enum": [ - "unknown", - "standard", - "accelerated" - ], - "type": "string", - "default": "accelerated", - "x-nullable": false - }, - "capping": { - "$ref": "#/components/schemas/ExternalLineItemCapping202110" - }, - "page": { - "$ref": "#/components/schemas/ExternalLineItemPage202110" - }, - "budget": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "creativeId": { - "type": "string", - "format": "long-id", - "nullable": true, - "x-nullable": true - } - }, - "description": "Model used to update a preferred line item", - "x-nullable": false - }, - "ExternalAddToBasketIdsUpdateModel202110": { - "type": "object", - "properties": { - "productIds": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "Product ids that add to basket should target", - "x-nullable": false - }, - "categoryIds": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "Category ids that add to basket should target", - "x-nullable": false - } - }, - "description": "Update model for updating add to basket target ids", - "x-nullable": false - }, - "ExternalAudienceIdsUpdateModel202110": { - "required": [ - "audienceIds" - ], - "type": "object", - "properties": { - "audienceIds": { - "type": "array", - "items": { - "type": "string", - "format": "long-id" - }, - "description": "Audience ids that should be targeted", - "x-nullable": false - } - }, - "description": "Update model for updating audience target ids", - "x-nullable": false - }, - "ExternalStoreIdsUpdateModel202110": { - "required": [ - "storeIds" - ], - "type": "object", - "properties": { - "storeIds": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "description": "Store ids that should be targeted", - "x-nullable": false - } - }, - "description": "Update model for updating store target ids", - "x-nullable": false - }, - "ExternalLineItemCapping202110": { - "required": [ - "type", - "count" - ], - "type": "object", - "properties": { - "type": { - "enum": [ - "unknown", - "day", - "session" - ], - "type": "string", - "x-nullable": false - }, - "count": { - "type": "integer", - "format": "int32", - "x-nullable": false - } - }, - "description": "Frequency capping for a preferred line item", - "x-nullable": false - }, - "ExternalLineItemPage202110": { - "required": [ - "pageType" - ], - "type": "object", - "properties": { - "pageType": { - "enum": [ - "search", - "home", - "checkout", - "category", - "productDetail", - "confirmation", - "merchandising", - "deals" - ], - "type": "string", - "x-nullable": false - }, - "categories": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ExternalLineItemPageCategory202110" - }, - "x-nullable": false - }, - "searchKeywords": { - "type": "array", - "items": { - "type": "string", - "x-nullable": false - }, - "x-nullable": false - } - }, - "description": "Page information for a preferred line item", - "x-nullable": false - }, - "ExternalLineItemPageCategory202110": { - "required": [ - "categoryId" - ], - "type": "object", - "properties": { - "categoryId": { - "type": "string", - "x-nullable": false - }, - "includeChildren": { - "type": "boolean", - "default": true, - "x-nullable": false - } - }, - "description": "Category information for a preferred line item page", - "x-nullable": false - } - }, - "securitySchemes": { - "oauth": { - "type": "oauth2", - "flows": { - "clientCredentials": { - "tokenUrl": "https://api.criteo.com/oauth2/token", - "scopes": { } - }, - "authorizationCode": { - "authorizationUrl": "https://api.criteo.com/oauth2", - "tokenUrl": "https://api.criteo.com/oauth2/token", - "scopes": { } - } - } - } - } - }, - "security": [ - { - "oauth": [ ] - } - ], - "x-samples-languages": [ - "java", - "python", - "php", - "csharp", - "javascript", - "curl", - "ruby" - ] -} \ No newline at end of file diff --git a/api-specifications/retailmedia_2023-01.json b/api-specifications/retailmedia_2023-01.json index 714ba51..d010fc4 100644 --- a/api-specifications/retailmedia_2023-01.json +++ b/api-specifications/retailmedia_2023-01.json @@ -1185,45 +1185,94 @@ "tags": [ "Analytics" ], - "description": "Request a campaign report", - "operationId": "requestCampaignReport", + "description": "Return an asynchronous Campaigns Report", + "operationId": "GenerateAsyncCampaignsReport", "requestBody": { - "description": "Envelope of the request", "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } } }, - "required": true + "required": true, + "x-bodyName": "request" }, "responses": { "200": { - "description": "Returns the status of the report", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } }, "400": { - "description": "Bad request", + "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/BadRequest" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } }, - "401": { - "description": "Missing Authorization or token invalid" - }, "403": { - "description": "Must have access to RetailMedia accounts" + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } } } } @@ -1233,45 +1282,94 @@ "tags": [ "Analytics" ], - "description": "Request a line item report", - "operationId": "requestLineItemReport", + "description": "Returns an asynchronous Line Items Report", + "operationId": "GenerateAsyncLineItemsReport", "requestBody": { - "description": "Envelope of the request", "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } } }, - "required": true + "required": true, + "x-bodyName": "request" }, "responses": { "200": { - "description": "Returns the status of the report", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } }, "400": { - "description": "Bad request", + "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/BadRequest" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } }, - "401": { - "description": "Missing Authorization or token invalid" - }, "403": { - "description": "Must have access to RetailMedia accounts" + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } } } } @@ -1281,13 +1379,13 @@ "tags": [ "Analytics" ], - "description": "Request the report output", - "operationId": "getReportOutput", + "description": "Returns the output of an async report", + "operationId": "GetAsyncExportOutput", "parameters": [ { "name": "reportId", "in": "path", - "description": "report id", + "description": "The ID of the report to retrieve", "required": true, "style": "simple", "schema": { @@ -1297,32 +1395,64 @@ ], "responses": { "200": { - "description": "The output", - "headers": { - "Content-Disposition": { - "description": "Returns a filename for the output", - "required": true, + "description": "Success", + "content": { + "text/plain": { "schema": { "type": "string" } - } - }, - "content": { - "application/octet-stream": { + }, + "application/json": { + "schema": { + "type": "string" + } + }, + "text/json": { "schema": { "type": "string" } } } }, - "401": { - "description": "Missing Authorization or token invalid" + "400": { + "description": "Bad Request", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } }, "403": { - "description": "Must have access to RetailMedia accounts" - }, - "404": { - "description": "ReportId not found" + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } } } } @@ -1332,13 +1462,13 @@ "tags": [ "Analytics" ], - "description": "Get the status of the report", - "operationId": "getReportStatus", + "description": "Returns the status of an async report", + "operationId": "GetAsyncExportStatus", "parameters": [ { "name": "reportId", "in": "path", - "description": "report id", + "description": "The ID of the report to retrieve", "required": true, "style": "simple", "schema": { @@ -1348,23 +1478,64 @@ ], "responses": { "200": { - "description": "Returns the status of the report", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } }, - "401": { - "description": "Missing Authorization or token invalid" + "400": { + "description": "Bad Request", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } }, "403": { - "description": "Must have access to RetailMedia accounts" - }, - "404": { - "description": "ReportId not found" + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } } } } @@ -5900,239 +6071,290 @@ "description": "An option given in a choice", "x-nullable": false }, - "EnvelopeReportStatus": { - "required": [ - "data" - ], + "AsyncReportResponse": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ReportStatus" + "$ref": "#/components/schemas/StatusResponseResource" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true } }, - "description": "Standard response envelope" + "description": "Async Report response format" }, - "BadRequest": { + "ReportOutcome": { "type": "object", "properties": { + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, "errors": { "type": "array", "items": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/CommonProblem" }, - "description": "The errors", - "nullable": true + "nullable": true, + "readOnly": true } }, - "description": "Bad request errors" + "description": "The outcome of an API call." }, - "EnvelopeReportRequest": { - "required": [ - "data" - ], + "AsyncCampaignsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportResource" } }, - "description": "Standard response envelope" + "description": "A top-level object that encapsulates a Criteo API request for a single value" }, - "ReportStatus": { - "required": [ - "type", - "id", - "attributes" - ], + "AsyncLineItemsReportRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AsyncLineItemsReportResource" + } + }, + "description": "A top-level object that encapsulates a Criteo API request for a single value" + }, + "StatusResponseResource": { "type": "object", "properties": { "attributes": { - "$ref": "#/components/schemas/ReportStatusAttributes" + "$ref": "#/components/schemas/StatusResponse" }, "id": { "type": "string", - "description": "The reportId" + "nullable": true }, "type": { "type": "string", - "description": "Always \"RetailMediaReportStatus\"" + "nullable": true } }, - "description": "Report Status" + "description": "A class that represents a domain entity exposed by an API" }, - "Error": { - "required": [ - "code", - "type", - "traceId", - "instance" - ], + "AsyncCampaignsReportResource": { "type": "object", "properties": { - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case." - }, - "detail": { - "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", - "nullable": true - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem." - }, - "source": { - "$ref": "#/components/schemas/MapString" - }, - "stackTrace": { - "type": "array", - "items": { - "type": "string" - }, - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology e.g. .Net, Scala, etc", - "nullable": true - }, - "title": { + "type": { "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", "nullable": true }, - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem." - }, - "type": { - "enum": [ - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "Type should be: \"validation\", \"unavailable, \"violation\", \"permission\", ..." + "attributes": { + "$ref": "#/components/schemas/AsyncCampaignsReport" } }, - "description": "Error" + "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "ReportRequest": { - "required": [ - "type", - "attributes" - ], + "AsyncLineItemsReportResource": { "type": "object", "properties": { - "attributes": { - "$ref": "#/components/schemas/ReportRequestAttributes" - }, "type": { "type": "string", - "description": "Always \"RetailMediaReportRequest\"" + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AsyncLineItemsReport" } }, - "description": "Report Request" + "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "ReportStatusAttributes": { - "required": [ - "status" - ], + "StatusResponse": { "type": "object", "properties": { - "createdAt": { + "status": { + "enum": [ + "pending", + "success", + "failure", + "expired" + ], "type": "string", - "description": "Timestamp when the report started to execute", - "format": "date-time", "nullable": true }, - "expiresAt": { - "type": "string", - "description": "Timestamp when the cached report will expire", - "format": "date-time", + "rowCount": { + "type": "integer", + "format": "int32", "nullable": true }, "fileSizeBytes": { "type": "integer", - "description": "Total size of file, only populated on success", - "format": "int64", + "format": "int32", "nullable": true }, - "md5Checksum": { + "md5CheckSum": { "type": "string", - "description": "The MD5 checksum of the content, only populated on success", "nullable": true }, - "message": { + "createdAt": { "type": "string", - "description": "Failure message, only populated on failure", "nullable": true }, - "rowCount": { - "type": "integer", - "description": "Rows of data in report, only populated on success", - "format": "int64", + "expiresAt": { + "type": "string", "nullable": true }, - "status": { - "enum": [ - "pending", - "success", - "failure", - "expired" - ], + "message": { "type": "string", - "description": "One of \"pending\", \"success\", \"failure\", or \"expired\"" + "nullable": true + }, + "id": { + "type": "string", + "nullable": true } }, - "description": "Report Status Attributes" - }, - "MapString": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)." + "description": "Status of an async report request", + "x-criteo-canonical": { + "infoType": "entity" + } }, - "ReportRequestAttributes": { + "AsyncCampaignsReport": { "required": [ - "reportType", - "startDate", - "endDate" + "endDate", + "startDate" ], "type": "object", "properties": { - "clickAttributionWindow": { + "metrics": { + "type": "array", + "items": { + "enum": [ + "impressions", + "clicks", + "spend", + "attributedSales", + "attributedUnits", + "attributedOrders", + "ctr", + "cpc", + "cpo", + "cpm", + "roas", + "uniqueVisitors", + "frequency", + "assistedUnits", + "assistedSales" + ], + "type": "string" + }, + "description": "List of metrics to report on", + "nullable": true + }, + "dimensions": { + "type": "array", + "items": { + "enum": [ + "date", + "hour", + "campaignId", + "campaignName", + "campaignTypeName", + "advProductCategory", + "advProductId", + "advProductName", + "brandId", + "brandName", + "pageTypeName", + "environment", + "keyword", + "salesChannel", + "retailerId", + "retailerName" + ], + "type": "string" + }, + "description": "List of dimensions to report on", + "nullable": true + }, + "campaignType": { "enum": [ - "7D", - "14D", - "30D" + "sponsoredProducts", + "onSiteDisplays" ], "type": "string", - "description": "Defaults to value from campaign or one of \"7D\", \"14D\", or \"30D\". If specified, viewAttributionWindow must also be specified", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", "nullable": true }, - "endDate": { + "salesChannel": { + "enum": [ + "offline", + "online" + ], "type": "string", - "description": "YYYY-MM-DD, must not be before startDate and not more than 100 days later", - "format": "date" + "description": "Filter on specific sales channel: offline or online", + "nullable": true }, "format": { "enum": [ - "csv", "json", "json-compact", - "json-newline" + "json-newline", + "csv" ], "type": "string", - "description": "One of \"json\" (default),\"json-compact\",\"json-newline\" or \"csv\"", - "default": "json", + "description": "Format of the output", + "default": "json-compact", "nullable": true }, - "id": { + "reportType": { + "enum": [ + "summary", + "pageType", + "keyword", + "productCategory", + "product", + "attributedTransactions", + "environment", + "servedCategory" + ], "type": "string", - "description": "The id of the campaign or line item. Either 'id' or 'ids' must be specified, but not both", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", + "nullable": true + }, + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "Click attribution window", + "default": "none", + "nullable": true + }, + "viewAttributionWindow": { + "enum": [ + "1D", + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "View attribution window", + "default": "none", "nullable": true }, "ids": { @@ -6140,48 +6362,194 @@ "items": { "type": "string" }, - "description": "The ids of the campaigns or line items. Either 'id' or 'ids' must be specified, but not both", + "description": "Ids to report on", + "nullable": true + }, + "id": { + "type": "string", + "description": "Id to report on", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", + "nullable": true + } + }, + "description": "Campaign report body request" + }, + "AsyncLineItemsReport": { + "required": [ + "endDate", + "startDate" + ], + "type": "object", + "properties": { + "metrics": { + "type": "array", + "items": { + "enum": [ + "impressions", + "clicks", + "spend", + "attributedSales", + "attributedUnits", + "attributedOrders", + "ctr", + "cpc", + "cpo", + "roas", + "assistedUnits", + "assistedSales", + "uniqueVisitors", + "frequency" + ], + "type": "string" + }, + "description": "List of metrics to report on", + "nullable": true + }, + "dimensions": { + "type": "array", + "items": { + "enum": [ + "date", + "hour", + "campaignId", + "campaignName", + "campaignTypeName", + "advProductCategory", + "advProductId", + "advProductName", + "brandId", + "brandName", + "lineItemId", + "lineItemName", + "retailerId", + "retailerName", + "keyword", + "pageTypeName", + "salesChannel", + "environment" + ], + "type": "string" + }, + "description": "List of dimensions to report on", + "nullable": true + }, + "campaignType": { + "enum": [ + "sponsoredProducts", + "onSiteDisplays" + ], + "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", + "nullable": true + }, + "salesChannel": { + "enum": [ + "offline", + "online" + ], + "type": "string", + "description": "Filter on specific sales channel: offline or online", + "nullable": true + }, + "format": { + "enum": [ + "json", + "json-compact", + "json-newline", + "csv" + ], + "type": "string", + "description": "Format of the output", + "default": "json-compact", "nullable": true }, "reportType": { "enum": [ "summary", - "keyword", "pageType", + "keyword", "productCategory", "product", - "attributedTransactions" + "attributedTransactions", + "environment", + "servedCategory" ], "type": "string", - "description": "One of \"summary\", \"keyword\", \"pageType\", \"productCategory\", \"product\", or \"attributedTransactions\"" - }, - "revenueType": { - "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", "nullable": true }, - "startDate": { - "type": "string", - "description": "YYYY-MM-DD", - "format": "date" - }, - "timeZone": { + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], "type": "string", + "description": "Click attribution window", + "default": "none", "nullable": true }, "viewAttributionWindow": { "enum": [ - "none", "1D", "7D", "14D", - "30D" + "30D", + "none" ], "type": "string", - "description": "Defaults to value from campaign or one of \"none\", \"1D\", \"7D\", \"14D\", or \"30D\". If specified, must be less than clickAttributionWindow, which must also be specified.", + "description": "View attribution window", + "default": "none", + "nullable": true + }, + "ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Ids to report on", + "nullable": true + }, + "id": { + "type": "string", + "description": "Id to report on", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", "nullable": true } }, - "description": "Report Request Attributes" + "description": "Line Items report body request" }, "Balance202110PagedListResponse": { "type": "object", @@ -7247,7 +7615,6 @@ "spent", "remaining", "startDate", - "endDate", "status", "createdAt", "updatedAt" @@ -7299,12 +7666,15 @@ ], "type": "string", "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" + "format": "date", + "x-nullable": false }, "endDate": { "type": "string", "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" + "format": "date", + "nullable": true, + "x-nullable": true }, "status": { "enum": [ diff --git a/api-specifications/retailmedia_2023-04.json b/api-specifications/retailmedia_2023-04.json index 29a666e..3e189ac 100644 --- a/api-specifications/retailmedia_2023-04.json +++ b/api-specifications/retailmedia_2023-04.json @@ -1541,45 +1541,94 @@ "tags": [ "Analytics" ], - "description": "Request a campaign report", - "operationId": "requestCampaignReport", + "description": "Return an asynchronous Campaigns Report", + "operationId": "GenerateAsyncCampaignsReport", "requestBody": { - "description": "Envelope of the request", "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } } }, - "required": true + "required": true, + "x-bodyName": "request" }, "responses": { "200": { - "description": "Returns the status of the report", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } }, "400": { - "description": "Bad request", + "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/BadRequest" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } }, - "401": { - "description": "Missing Authorization or token invalid" - }, "403": { - "description": "Must have access to RetailMedia accounts" + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } } } } @@ -1589,45 +1638,94 @@ "tags": [ "Analytics" ], - "description": "Request a line item report", - "operationId": "requestLineItemReport", + "description": "Returns an asynchronous Line Items Report", + "operationId": "GenerateAsyncLineItemsReport", "requestBody": { - "description": "Envelope of the request", "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } } }, - "required": true + "required": true, + "x-bodyName": "request" }, "responses": { "200": { - "description": "Returns the status of the report", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } }, "400": { - "description": "Bad request", + "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/BadRequest" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } }, - "401": { - "description": "Missing Authorization or token invalid" - }, "403": { - "description": "Must have access to RetailMedia accounts" + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } } } } @@ -1637,13 +1735,13 @@ "tags": [ "Analytics" ], - "description": "Request the report output", - "operationId": "getReportOutput", + "description": "Returns the output of an async report", + "operationId": "GetAsyncExportOutput", "parameters": [ { "name": "reportId", "in": "path", - "description": "report id", + "description": "The ID of the report to retrieve", "required": true, "style": "simple", "schema": { @@ -1653,32 +1751,64 @@ ], "responses": { "200": { - "description": "The output", - "headers": { - "Content-Disposition": { - "description": "Returns a filename for the output", - "required": true, + "description": "Success", + "content": { + "text/plain": { "schema": { "type": "string" } - } - }, - "content": { - "application/octet-stream": { + }, + "application/json": { + "schema": { + "type": "string" + } + }, + "text/json": { "schema": { "type": "string" } } } }, - "401": { - "description": "Missing Authorization or token invalid" + "400": { + "description": "Bad Request", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } }, "403": { - "description": "Must have access to RetailMedia accounts" - }, - "404": { - "description": "ReportId not found" + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } } } } @@ -1688,13 +1818,13 @@ "tags": [ "Analytics" ], - "description": "Get the status of the report", - "operationId": "getReportStatus", + "description": "Returns the status of an async report", + "operationId": "GetAsyncExportStatus", "parameters": [ { "name": "reportId", "in": "path", - "description": "report id", + "description": "The ID of the report to retrieve", "required": true, "style": "simple", "schema": { @@ -1704,23 +1834,64 @@ ], "responses": { "200": { - "description": "Returns the status of the report", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } }, - "401": { - "description": "Missing Authorization or token invalid" + "400": { + "description": "Bad Request", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } }, "403": { - "description": "Must have access to RetailMedia accounts" - }, - "404": { - "description": "ReportId not found" + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } } } } @@ -6777,239 +6948,290 @@ "description": "An option given in a choice", "x-nullable": false }, - "EnvelopeReportStatus": { - "required": [ - "data" - ], + "AsyncReportResponse": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ReportStatus" + "$ref": "#/components/schemas/StatusResponseResource" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true } }, - "description": "Standard response envelope" + "description": "Async Report response format" }, - "BadRequest": { + "ReportOutcome": { "type": "object", "properties": { + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, "errors": { "type": "array", "items": { - "$ref": "#/components/schemas/Error" + "$ref": "#/components/schemas/CommonProblem" }, - "description": "The errors", - "nullable": true + "nullable": true, + "readOnly": true } }, - "description": "Bad request errors" + "description": "The outcome of an API call." }, - "EnvelopeReportRequest": { - "required": [ - "data" - ], + "AsyncCampaignsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportResource" } }, - "description": "Standard response envelope" + "description": "A top-level object that encapsulates a Criteo API request for a single value" }, - "ReportStatus": { - "required": [ - "type", - "id", - "attributes" - ], + "AsyncLineItemsReportRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AsyncLineItemsReportResource" + } + }, + "description": "A top-level object that encapsulates a Criteo API request for a single value" + }, + "StatusResponseResource": { "type": "object", "properties": { "attributes": { - "$ref": "#/components/schemas/ReportStatusAttributes" + "$ref": "#/components/schemas/StatusResponse" }, "id": { "type": "string", - "description": "The reportId" + "nullable": true }, "type": { "type": "string", - "description": "Always \"RetailMediaReportStatus\"" + "nullable": true } }, - "description": "Report Status" + "description": "A class that represents a domain entity exposed by an API" }, - "Error": { - "required": [ - "code", - "type", - "traceId", - "instance" - ], + "AsyncCampaignsReportResource": { "type": "object", "properties": { - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case." - }, - "detail": { - "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", - "nullable": true - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem." - }, - "source": { - "$ref": "#/components/schemas/MapString" - }, - "stackTrace": { - "type": "array", - "items": { - "type": "string" - }, - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology e.g. .Net, Scala, etc", - "nullable": true - }, - "title": { + "type": { "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", "nullable": true }, - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem." - }, - "type": { - "enum": [ - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], - "type": "string", - "description": "Type should be: \"validation\", \"unavailable, \"violation\", \"permission\", ..." + "attributes": { + "$ref": "#/components/schemas/AsyncCampaignsReport" } }, - "description": "Error" + "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "ReportRequest": { - "required": [ - "type", - "attributes" - ], + "AsyncLineItemsReportResource": { "type": "object", "properties": { - "attributes": { - "$ref": "#/components/schemas/ReportRequestAttributes" - }, "type": { "type": "string", - "description": "Always \"RetailMediaReportRequest\"" + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AsyncLineItemsReport" } }, - "description": "Report Request" + "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "ReportStatusAttributes": { - "required": [ - "status" - ], + "StatusResponse": { "type": "object", "properties": { - "createdAt": { + "status": { + "enum": [ + "pending", + "success", + "failure", + "expired" + ], "type": "string", - "description": "Timestamp when the report started to execute", - "format": "date-time", "nullable": true }, - "expiresAt": { - "type": "string", - "description": "Timestamp when the cached report will expire", - "format": "date-time", + "rowCount": { + "type": "integer", + "format": "int32", "nullable": true }, "fileSizeBytes": { "type": "integer", - "description": "Total size of file, only populated on success", - "format": "int64", + "format": "int32", "nullable": true }, - "md5Checksum": { + "md5CheckSum": { "type": "string", - "description": "The MD5 checksum of the content, only populated on success", "nullable": true }, - "message": { + "createdAt": { "type": "string", - "description": "Failure message, only populated on failure", "nullable": true }, - "rowCount": { - "type": "integer", - "description": "Rows of data in report, only populated on success", - "format": "int64", + "expiresAt": { + "type": "string", "nullable": true }, - "status": { - "enum": [ - "pending", - "success", - "failure", - "expired" - ], + "message": { + "type": "string", + "nullable": true + }, + "id": { "type": "string", - "description": "One of \"pending\", \"success\", \"failure\", or \"expired\"" + "nullable": true } }, - "description": "Report Status Attributes" - }, - "MapString": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)." + "description": "Status of an async report request", + "x-criteo-canonical": { + "infoType": "entity" + } }, - "ReportRequestAttributes": { + "AsyncCampaignsReport": { "required": [ - "reportType", - "startDate", - "endDate" + "endDate", + "startDate" ], "type": "object", "properties": { - "clickAttributionWindow": { + "metrics": { + "type": "array", + "items": { + "enum": [ + "impressions", + "clicks", + "spend", + "attributedSales", + "attributedUnits", + "attributedOrders", + "ctr", + "cpc", + "cpo", + "cpm", + "roas", + "uniqueVisitors", + "frequency", + "assistedUnits", + "assistedSales" + ], + "type": "string" + }, + "description": "List of metrics to report on", + "nullable": true + }, + "dimensions": { + "type": "array", + "items": { + "enum": [ + "date", + "hour", + "campaignId", + "campaignName", + "campaignTypeName", + "advProductCategory", + "advProductId", + "advProductName", + "brandId", + "brandName", + "pageTypeName", + "environment", + "keyword", + "salesChannel", + "retailerId", + "retailerName" + ], + "type": "string" + }, + "description": "List of dimensions to report on", + "nullable": true + }, + "campaignType": { "enum": [ - "7D", - "14D", - "30D" + "sponsoredProducts", + "onSiteDisplays" ], "type": "string", - "description": "Defaults to value from campaign or one of \"7D\", \"14D\", or \"30D\". If specified, viewAttributionWindow must also be specified", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", "nullable": true }, - "endDate": { + "salesChannel": { + "enum": [ + "offline", + "online" + ], "type": "string", - "description": "YYYY-MM-DD, must not be before startDate and not more than 100 days later", - "format": "date" + "description": "Filter on specific sales channel: offline or online", + "nullable": true }, "format": { "enum": [ - "csv", "json", "json-compact", - "json-newline" + "json-newline", + "csv" ], "type": "string", - "description": "One of \"json\" (default),\"json-compact\",\"json-newline\" or \"csv\"", - "default": "json", + "description": "Format of the output", + "default": "json-compact", "nullable": true }, - "id": { + "reportType": { + "enum": [ + "summary", + "pageType", + "keyword", + "productCategory", + "product", + "attributedTransactions", + "environment", + "servedCategory" + ], + "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", + "nullable": true + }, + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "Click attribution window", + "default": "none", + "nullable": true + }, + "viewAttributionWindow": { + "enum": [ + "1D", + "7D", + "14D", + "30D", + "none" + ], "type": "string", - "description": "The id of the campaign or line item. Either 'id' or 'ids' must be specified, but not both", + "description": "View attribution window", + "default": "none", "nullable": true }, "ids": { @@ -7017,48 +7239,194 @@ "items": { "type": "string" }, - "description": "The ids of the campaigns or line items. Either 'id' or 'ids' must be specified, but not both", + "description": "Ids to report on", + "nullable": true + }, + "id": { + "type": "string", + "description": "Id to report on", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", + "nullable": true + } + }, + "description": "Campaign report body request" + }, + "AsyncLineItemsReport": { + "required": [ + "endDate", + "startDate" + ], + "type": "object", + "properties": { + "metrics": { + "type": "array", + "items": { + "enum": [ + "impressions", + "clicks", + "spend", + "attributedSales", + "attributedUnits", + "attributedOrders", + "ctr", + "cpc", + "cpo", + "roas", + "assistedUnits", + "assistedSales", + "uniqueVisitors", + "frequency" + ], + "type": "string" + }, + "description": "List of metrics to report on", + "nullable": true + }, + "dimensions": { + "type": "array", + "items": { + "enum": [ + "date", + "hour", + "campaignId", + "campaignName", + "campaignTypeName", + "advProductCategory", + "advProductId", + "advProductName", + "brandId", + "brandName", + "lineItemId", + "lineItemName", + "retailerId", + "retailerName", + "keyword", + "pageTypeName", + "salesChannel", + "environment" + ], + "type": "string" + }, + "description": "List of dimensions to report on", + "nullable": true + }, + "campaignType": { + "enum": [ + "sponsoredProducts", + "onSiteDisplays" + ], + "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", + "nullable": true + }, + "salesChannel": { + "enum": [ + "offline", + "online" + ], + "type": "string", + "description": "Filter on specific sales channel: offline or online", + "nullable": true + }, + "format": { + "enum": [ + "json", + "json-compact", + "json-newline", + "csv" + ], + "type": "string", + "description": "Format of the output", + "default": "json-compact", "nullable": true }, "reportType": { "enum": [ "summary", - "keyword", "pageType", + "keyword", "productCategory", "product", - "attributedTransactions" + "attributedTransactions", + "environment", + "servedCategory" ], "type": "string", - "description": "One of \"summary\", \"keyword\", \"pageType\", \"productCategory\", \"product\", or \"attributedTransactions\"" - }, - "revenueType": { - "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", "nullable": true }, - "startDate": { - "type": "string", - "description": "YYYY-MM-DD", - "format": "date" - }, - "timeZone": { + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], "type": "string", + "description": "Click attribution window", + "default": "none", "nullable": true }, "viewAttributionWindow": { "enum": [ - "none", "1D", "7D", "14D", - "30D" + "30D", + "none" ], "type": "string", - "description": "Defaults to value from campaign or one of \"none\", \"1D\", \"7D\", \"14D\", or \"30D\". If specified, must be less than clickAttributionWindow, which must also be specified.", + "description": "View attribution window", + "default": "none", + "nullable": true + }, + "ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Ids to report on", + "nullable": true + }, + "id": { + "type": "string", + "description": "Id to report on", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", "nullable": true } }, - "description": "Report Request Attributes" + "description": "Line Items report body request" }, "Balance202110PagedListResponse": { "type": "object", @@ -8124,7 +8492,6 @@ "spent", "remaining", "startDate", - "endDate", "status", "createdAt", "updatedAt" @@ -8176,12 +8543,15 @@ ], "type": "string", "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" + "format": "date", + "x-nullable": false }, "endDate": { "type": "string", "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" + "format": "date", + "nullable": true, + "x-nullable": true }, "status": { "enum": [ diff --git a/api-specifications/retailmedia_2023-07.json b/api-specifications/retailmedia_2023-07.json index cab2848..988576d 100644 --- a/api-specifications/retailmedia_2023-07.json +++ b/api-specifications/retailmedia_2023-07.json @@ -1541,28 +1541,28 @@ "tags": [ "Analytics" ], - "description": "Return an async Campaign Report", - "operationId": "GenerateAsyncCampaignReport", + "description": "Return an asynchronous Campaigns Report", + "operationId": "GenerateAsyncCampaignsReport", "requestBody": { "content": { "application/json-patch+json": { "schema": { - "$ref": "#/components/schemas/AsyncCampaignReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } }, "application/json": { "schema": { - "$ref": "#/components/schemas/AsyncCampaignReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } }, "text/json": { "schema": { - "$ref": "#/components/schemas/AsyncCampaignReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } }, "application/*+json": { "schema": { - "$ref": "#/components/schemas/AsyncCampaignReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } } }, @@ -1638,28 +1638,28 @@ "tags": [ "Analytics" ], - "description": "Return an async Line Item Report", + "description": "Returns an asynchronous Line Items Report", "operationId": "GenerateAsyncLineItemsReport", "requestBody": { "content": { "application/json-patch+json": { "schema": { - "$ref": "#/components/schemas/AsyncLineItemReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } }, "application/json": { "schema": { - "$ref": "#/components/schemas/AsyncLineItemReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } }, "text/json": { "schema": { - "$ref": "#/components/schemas/AsyncLineItemReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } }, "application/*+json": { "schema": { - "$ref": "#/components/schemas/AsyncLineItemReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } } }, @@ -1735,7 +1735,7 @@ "tags": [ "Analytics" ], - "description": "Return the output of an async report", + "description": "Returns the output of an async report", "operationId": "GetAsyncExportOutput", "parameters": [ { @@ -1818,7 +1818,7 @@ "tags": [ "Analytics" ], - "description": "Return the status of an async report", + "description": "Returns the status of an async report", "operationId": "GetAsyncExportStatus", "parameters": [ { @@ -6995,20 +6995,20 @@ }, "description": "The outcome of an API call." }, - "AsyncCampaignReportRequest": { + "AsyncCampaignsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/AsyncCampaignReportResource" + "$ref": "#/components/schemas/AsyncCampaignsReportResource" } }, "description": "A top-level object that encapsulates a Criteo API request for a single value" }, - "AsyncLineItemReportRequest": { + "AsyncLineItemsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/AsyncLineItemReportResource" + "$ref": "#/components/schemas/AsyncLineItemsReportResource" } }, "description": "A top-level object that encapsulates a Criteo API request for a single value" @@ -7030,7 +7030,7 @@ }, "description": "A class that represents a domain entity exposed by an API" }, - "AsyncCampaignReportResource": { + "AsyncCampaignsReportResource": { "type": "object", "properties": { "type": { @@ -7038,12 +7038,12 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/AsyncCampaignReport" + "$ref": "#/components/schemas/AsyncCampaignsReport" } }, "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "AsyncLineItemReportResource": { + "AsyncLineItemsReportResource": { "type": "object", "properties": { "type": { @@ -7051,7 +7051,7 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/AsyncLineItemReport" + "$ref": "#/components/schemas/AsyncLineItemsReport" } }, "description": "A top-level object that encapsulates a Criteo API response for a single value" @@ -7105,7 +7105,7 @@ "infoType": "entity" } }, - "AsyncCampaignReport": { + "AsyncCampaignsReport": { "required": [ "endDate", "startDate" @@ -7128,10 +7128,13 @@ "cpm", "roas", "uniqueVisitors", - "frequency" + "frequency", + "assistedUnits", + "assistedSales" ], "type": "string" }, + "description": "List of metrics to report on", "nullable": true }, "dimensions": { @@ -7139,6 +7142,7 @@ "items": { "enum": [ "date", + "hour", "campaignId", "campaignName", "campaignTypeName", @@ -7148,44 +7152,15 @@ "brandId", "brandName", "pageTypeName", + "environment", "keyword", - "salesChannel" + "salesChannel", + "retailerId", + "retailerName" ], "type": "string" }, - "nullable": true - }, - "clickAttributionWindow": { - "enum": [ - "7D", - "14D", - "30D", - "none" - ], - "type": "string", - "nullable": true - }, - "viewAttributionWindow": { - "enum": [ - "1D", - "7D", - "14D", - "30D", - "none" - ], - "type": "string", - "nullable": true - }, - "startDate": { - "type": "string", - "format": "date-time" - }, - "endDate": { - "type": "string", - "format": "date-time" - }, - "timezone": { - "type": "string", + "description": "List of dimensions to report on", "nullable": true }, "campaignType": { @@ -7194,6 +7169,7 @@ "onSiteDisplays" ], "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", "nullable": true }, "salesChannel": { @@ -7202,6 +7178,7 @@ "online" ], "type": "string", + "description": "Filter on specific sales channel: offline or online", "nullable": true }, "format": { @@ -7212,6 +7189,8 @@ "csv" ], "type": "string", + "description": "Format of the output", + "default": "json-compact", "nullable": true }, "reportType": { @@ -7221,9 +7200,38 @@ "keyword", "productCategory", "product", - "attributedTransactions" + "attributedTransactions", + "environment", + "servedCategory" ], "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", + "nullable": true + }, + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "Click attribution window", + "default": "none", + "nullable": true + }, + "viewAttributionWindow": { + "enum": [ + "1D", + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "View attribution window", + "default": "none", "nullable": true }, "ids": { @@ -7231,16 +7239,34 @@ "items": { "type": "string" }, + "description": "Ids to report on", "nullable": true }, "id": { "type": "string", + "description": "Id to report on", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", "nullable": true } }, "description": "Campaign report body request" }, - "AsyncLineItemReport": { + "AsyncLineItemsReport": { "required": [ "endDate", "startDate" @@ -7268,6 +7294,7 @@ ], "type": "string" }, + "description": "List of metrics to report on", "nullable": true }, "dimensions": { @@ -7275,6 +7302,7 @@ "items": { "enum": [ "date", + "hour", "campaignId", "campaignName", "campaignTypeName", @@ -7289,43 +7317,12 @@ "retailerName", "keyword", "pageTypeName", - "salesChannel" + "salesChannel", + "environment" ], "type": "string" }, - "nullable": true - }, - "clickAttributionWindow": { - "enum": [ - "7D", - "14D", - "30D", - "none" - ], - "type": "string", - "nullable": true - }, - "viewAttributionWindow": { - "enum": [ - "1D", - "7D", - "14D", - "30D", - "none" - ], - "type": "string", - "nullable": true - }, - "startDate": { - "type": "string", - "format": "date-time" - }, - "endDate": { - "type": "string", - "format": "date-time" - }, - "timezone": { - "type": "string", + "description": "List of dimensions to report on", "nullable": true }, "campaignType": { @@ -7334,6 +7331,7 @@ "onSiteDisplays" ], "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", "nullable": true }, "salesChannel": { @@ -7342,6 +7340,7 @@ "online" ], "type": "string", + "description": "Filter on specific sales channel: offline or online", "nullable": true }, "format": { @@ -7352,6 +7351,8 @@ "csv" ], "type": "string", + "description": "Format of the output", + "default": "json-compact", "nullable": true }, "reportType": { @@ -7361,9 +7362,38 @@ "keyword", "productCategory", "product", - "attributedTransactions" + "attributedTransactions", + "environment", + "servedCategory" ], "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", + "nullable": true + }, + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "Click attribution window", + "default": "none", + "nullable": true + }, + "viewAttributionWindow": { + "enum": [ + "1D", + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "View attribution window", + "default": "none", "nullable": true }, "ids": { @@ -7371,14 +7401,32 @@ "items": { "type": "string" }, + "description": "Ids to report on", "nullable": true }, "id": { "type": "string", + "description": "Id to report on", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", "nullable": true } }, - "description": "Line Item report body request" + "description": "Line Items report body request" }, "Balance202110PagedListResponse": { "type": "object", @@ -8444,7 +8492,6 @@ "spent", "remaining", "startDate", - "endDate", "status", "createdAt", "updatedAt" @@ -8496,12 +8543,15 @@ ], "type": "string", "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" + "format": "date", + "x-nullable": false }, "endDate": { "type": "string", "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" + "format": "date", + "nullable": true, + "x-nullable": true }, "status": { "enum": [ diff --git a/api-specifications/retailmedia_2022-07.json b/api-specifications/retailmedia_2023-10.json similarity index 67% rename from api-specifications/retailmedia_2022-07.json rename to api-specifications/retailmedia_2023-10.json index 6f3a084..0f85ff3 100644 --- a/api-specifications/retailmedia_2022-07.json +++ b/api-specifications/retailmedia_2023-10.json @@ -3,7 +3,7 @@ "info": { "title": "Criteo API", "description": "Criteo API - RetailMedia", - "version": "2022-07" + "version": "2023-10" }, "servers": [ { @@ -11,7 +11,7 @@ } ], "paths": { - "/2022-07/retail-media/me": { + "/2023-10/retail-media/me": { "get": { "tags": [ "Gateway" @@ -38,7 +38,7 @@ } } }, - "/2022-07/retail-media/accounts": { + "/2023-10/retail-media/accounts": { "get": { "tags": [ "Campaign" @@ -96,7 +96,7 @@ } } }, - "/2022-07/retail-media/accounts/{accountId}/brands": { + "/2023-10/retail-media/accounts/{accountId}/brands": { "get": { "tags": [ "Campaign" @@ -165,7 +165,7 @@ } } }, - "/2022-07/retail-media/accounts/{accountId}/retailers": { + "/2023-10/retail-media/accounts/{accountId}/retailers": { "get": { "tags": [ "Campaign" @@ -234,7 +234,7 @@ } } }, - "/2022-07/retail-media/assets": { + "/2023-10/retail-media/assets": { "post": { "tags": [ "Campaign" @@ -283,7 +283,7 @@ } } }, - "/2022-07/retail-media/accounts/{accountId}/audiences": { + "/2023-10/retail-media/accounts/{accountId}/audiences": { "get": { "tags": [ "Audience" @@ -449,33 +449,99 @@ } } }, - "/2022-07/retail-media/accounts/{account-id}/creatives": { + "/2023-10/retail-media/v2/accounts/{accountId}/audiences": { "get": { "tags": [ - "Campaign" + "Audience" ], - "description": "Get account creatives", - "operationId": "CreativesApi_GetApi202110ExternalAccountCreativesByAccountId", + "description": "Get a page of audiences for a given account ID", + "operationId": "GetRetailMediaAudienceV2ListByAccountId", "parameters": [ { - "name": "account-id", + "name": "accountId", "in": "path", - "description": "External account id to retrieve creatives for", + "description": "External account ID which owns audience.", "required": true, "style": "simple", "schema": { - "type": "string" + "type": "integer", + "format": "int64" }, - "x-nullable": false + "x-example": 68004146450571264 + }, + { + "name": "limitToId", + "in": "query", + "description": "Limits results to the entity IDs specified; parameter key is repeated, eg. limitToId=1&limitToId=2", + "style": "form", + "schema": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + } + } + }, + { + "name": "pageSize", + "in": "query", + "description": "Specifies the maximum number of entities returned in a single page; defaults to 25 entities per page", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-example": 25 + }, + { + "name": "pageIndex", + "in": "query", + "description": "Returns the specified page of results given a pageSize; pages are 0-indexed", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-example": 0 } ], "responses": { "200": { - "description": "Creatives found", + "description": "A page of audiences for the supplied account.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Creative202110ListResponse" + "$ref": "#/components/schemas/RetailMediaAudienceV2ListResponse" + } + } + } + }, + "403": { + "description": "Missing or invalid account ID. - OR - You do not have permission to access this account.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommonStatusCodeResponse" + } + } + } + }, + "406": { + "description": "The Accept header must contain application/json.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommonStatusCodeResponse" + } + } + } + }, + "415": { + "description": "The Content-Type header must be application/json if present.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommonStatusCodeResponse" } } } @@ -484,42 +550,92 @@ }, "post": { "tags": [ - "Campaign" + "Audience" ], - "description": "Create a creative for an account", - "operationId": "CreativesApi_PostApi202207ExternalAccountCreativesByAccountId", + "description": "Create an audience for a given account ID", + "operationId": "CreateRetailMediaAudienceV2", "parameters": [ { - "name": "account-id", + "name": "accountId", "in": "path", - "description": "External account id to create a creative for", + "description": "ID of the account to which this audience belongs.", "required": true, "style": "simple", "schema": { - "type": "string" + "type": "integer", + "format": "int64" }, - "x-nullable": false + "x-example": 68004146450571264 } ], "requestBody": { - "description": "The creative to create", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CreativeCreateModel202207" + "$ref": "#/components/schemas/CreateRetailMediaAudienceV2Request" } } }, - "x-nullable": false, - "x-bodyName": "creative" + "required": true, + "x-bodyName": "body" }, "responses": { "201": { - "description": "Creatives created", + "description": "The audience that was just created.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RetailMediaAudienceV2Response" + } + } + } + }, + "400": { + "description": "Missing or invalid retailerID field. - OR - Missing or invalid name field. Name should be less than 255 characters. - OR - Missing or invalid userType field. Valid values are: 'buyer', 'viewer'. - OR - The brandIds is not a valid list of IDs or may contain more than 100 elements. - OR - The categoryIds is not a valid list of IDs or may contain more than 100 elements. - OR - Missing or invalid lookbackWindow field. Valid values are: P7D, P14D, P30D, P45D, P60D, P90D, P120D, P150D or P180D. - OR - Exactly one of categoryIds or brandIds must be specified, but not both. - OR - The retailer is invalid because it is not live - OR - Missing or invalid userAction field. Valid values are: 'buy', 'view', 'addToCart'.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommonStatusCodeResponse" + } + } + } + }, + "403": { + "description": "Missing or invalid account ID.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommonStatusCodeResponse" + } + } + } + }, + "406": { + "description": "The Accept header must contain application/json.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommonStatusCodeResponse" + } + } + } + }, + "409": { + "description": "An audience name should be unique per account.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CommonStatusCodeResponse" + } + } + } + }, + "415": { + "description": "The Content-Type header must be application/json if present.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Creative202207Response" + "$ref": "#/components/schemas/CommonStatusCodeResponse" } } } @@ -527,376 +643,433 @@ } } }, - "/2022-07/retail-media/accounts/{account-id}/creatives/{creative-id}": { + "/2023-10/retail-media/line-items/{id}/keywords": { "get": { "tags": [ "Campaign" ], - "description": "Get the specified creative", - "operationId": "CreativesApi_GetApi202207ExternalAccountByAccountId}Creatives{creativeId", + "description": "Fetch keywords associated with the specified line item", + "operationId": "FetchKeywords", "parameters": [ { - "name": "account-id", - "in": "path", - "description": "External account id to retrieve creatives for", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "creative-id", + "name": "id", "in": "path", - "description": "Creative to get", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "responses": { "200": { - "description": "Creatives found", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1KeywordsModelResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/Creative202207Response" + "$ref": "#/components/schemas/RetailMediaExternalv1KeywordsModelResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1KeywordsModelResponse" } } } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } } } - }, - "put": { + } + }, + "/2023-10/retail-media/line-items/{id}/keywords/add-remove": { + "post": { "tags": [ "Campaign" ], - "description": "Update a creative", - "operationId": "CreativesApi_PutApi202207ExternalAccountByAccountId}Creatives{creativeId", + "description": "Add or Remove keywords from the associated line item in bulk", + "operationId": "AddRemoveKeywords", "parameters": [ { - "name": "account-id", - "in": "path", - "description": "External account id containing the creative", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "creative-id", + "name": "id", "in": "path", - "description": "Creative to update", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "requestBody": { - "description": "The creative to create", + "description": "Object containing keywords to be added or removed", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CreativeUpdateModel202207" + "$ref": "#/components/schemas/RetailMediaExternalv1AddRemoveKeywordsModelRequest" } } }, - "x-nullable": false, - "x-bodyName": "creative" + "x-bodyName": "keywords" }, "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ResourceOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/Creative202207Response" + "$ref": "#/components/schemas/RetailMediaExternalv1ResourceOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ResourceOutcome" } } } }, - "204": { - "description": "Creative updated", + "400": { + "description": "Bad Request", "content": { - "application/json": { } + "text/plain": { }, + "application/json": { }, + "text/json": { } } } } } }, - "/2022-07/retail-media/accounts/{accountId}/catalogs": { + "/2023-10/retail-media/line-items/{id}/keywords/set-bid": { "post": { "tags": [ "Campaign" ], - "description": "Create a request for a Catalog available to the indicated account.", - "operationId": "CatalogApi_PostApiV1ExternalAccountCatalogsByAccountId", + "description": "Set bid overrides for associated keywords to the given line item in bulk", + "operationId": "SetKeywordBids", "parameters": [ { - "name": "accountId", + "name": "id", "in": "path", - "description": "The account to request the catalog for.", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "requestBody": { + "description": "Object containing a list of bid overrides for associated keywords", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/JsonApiRequestOfCatalogRequest" + "$ref": "#/components/schemas/RetailMediaExternalv1SetBidsModelRequest" } } }, - "x-nullable": false, - "x-bodyName": "request" + "x-bodyName": "keywords" }, "responses": { "200": { - "description": "Catalog request successfully created", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ResourceOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCatalogStatus" + "$ref": "#/components/schemas/RetailMediaExternalv1ResourceOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ResourceOutcome" } } } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } } } } }, - "/2022-07/retail-media/catalogs/{catalogId}/output": { + "/2023-10/retail-media/preferred-deal-line-items/{id}/proposal": { "get": { "tags": [ "Campaign" ], - "description": "Output the indicated catalog. Catalogs are only available for retrieval when their associated status request\r\nis at a Success status.\r\nProduces application/x-json-stream of v2021_07 CatalogProduct json objects.", - "operationId": "CatalogApi_GetApiV1ExternalCatalogOutputByCatalogId", + "description": "Fetch the status of a proposal to modify a Preferred Deal Line Item.", + "operationId": "FetchProposal", "parameters": [ { - "name": "catalogId", + "name": "id", "in": "path", - "description": "A catalog ID returned from an account catalog request.", + "description": "The external id of a line item.", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "responses": { "200": { - "description": "Catalog download initiated.", - "content": { - "application/x-json-stream": { }, - "application/json": { } - } - }, - "400": { - "description": "The indicated catalog is not available for retrieval, wait for a success status.", + "description": "Success", "content": { - "application/x-json-stream": { }, - "application/json": { } + "text/plain": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ProposalStatusModelResponse" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ProposalStatusModelResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ProposalStatusModelResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "Server Error", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } } } } } }, - "/2022-07/retail-media/catalogs/{catalogId}/status": { - "get": { + "/2023-10/retail-media/preferred-deal-line-items/{id}/proposal/submit": { + "post": { "tags": [ "Campaign" ], - "description": "Check the status of a catalog request.", - "operationId": "CatalogApi_GetApiV1ExternalCatalogStatusByCatalogId", + "description": "Submit a proposal to modify a Preferred Deal Line Item for review.", + "operationId": "SubmitProposal", "parameters": [ { - "name": "catalogId", + "name": "id", "in": "path", - "description": "A catalog ID returned from an account catalog request.", + "description": "The external id of a line item.", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "responses": { "200": { - "description": "Catalog request found.", + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ProposalStatusModelResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCatalogStatus" + "$ref": "#/components/schemas/RetailMediaExternalv1ProposalStatusModelResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/RetailMediaExternalv1ProposalStatusModelResponse" } } } + }, + "400": { + "description": "Bad Request", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "500": { + "description": "Server Error", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { }, + "application/json": { }, + "text/json": { } + } } } } }, - "/2022-07/retail-media/categories": { + "/2023-10/retail-media/accounts/{account-id}/creatives": { "get": { "tags": [ "Campaign" ], - "description": "Endpoint to search categories by text and retailer.", - "operationId": "CategorySearchApi_GetApi202204ExternalCategories", + "description": "Get account creatives", + "operationId": "CreativesApi_GetApi202110ExternalAccountCreativesByAccountId", "parameters": [ { - "name": "retailerId", - "in": "query", - "description": "The retailer id for which Categories fetched", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "textSubstring", - "in": "query", - "description": "Query string to search across Categories", - "style": "form", + "name": "account-id", + "in": "path", + "description": "External account id to retrieve creatives for", + "required": true, + "style": "simple", "schema": { "type": "string" }, "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The start position in the overall list of matches. Must be zero or greater.", - "style": "form", - "schema": { - "maximum": 500.0, - "minimum": 0.0, - "type": "integer", - "format": "int32", - "default": 0 - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of results to return with each call. Must be greater than zero.", - "style": "form", - "schema": { - "maximum": 100.0, - "minimum": 1.0, - "type": "integer", - "format": "int32", - "default": 100 - }, - "x-nullable": false } ], "responses": { "200": { - "description": "Categories found.", + "description": "Creatives found", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Category202204ListResponse" + "$ref": "#/components/schemas/Creative202110ListResponse" } } } } } - } - }, - "/2022-07/retail-media/categories/{categoryId}": { - "get": { + }, + "post": { "tags": [ "Campaign" ], - "description": "Endpoint to search for a specific category by categoryId.", - "operationId": "CategorySearchApi_GetApi202204ExternalCategorieByCategoryId", + "description": "Create a creative for an account", + "operationId": "CreativesApi_PostApi202210ExternalAccountCreativesByAccountId", "parameters": [ { - "name": "categoryId", + "name": "account-id", "in": "path", - "description": "ID of the desired category", + "description": "External account id to create a creative for", "required": true, "style": "simple", "schema": { - "type": "integer", - "format": "int32" + "type": "string" }, "x-nullable": false } ], + "requestBody": { + "description": "The creative to create", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreativeCreateModel202207" + } + } + }, + "x-nullable": false, + "x-bodyName": "creative" + }, "responses": { - "200": { - "description": "Retrieval completed and category is returned.", + "201": { + "description": "Creatives created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Category202204" + "$ref": "#/components/schemas/Creative202210Response" } } } - }, - "400": { - "description": "No IDs were passed in.", - "content": { - "application/json": { } - } - }, - "500": { - "description": "A non-request input based error occurred in the server.", - "content": { - "application/json": { } - } } } } }, - "/2022-07/retail-media/retailers/{retailer-id}/templates": { - "get": { + "/2023-10/retail-media/accounts/{account-id}/creatives/search": { + "post": { "tags": [ "Campaign" ], - "description": "Get retailer creative templates", - "operationId": "CreativesApi_GetApi202207ExternalRetailerTemplatesByRetailerId", + "description": "Get account creatives", + "operationId": "CreativesApi_PostApi202210ExternalAccountCreativesSearchByAccountId", "parameters": [ { - "name": "retailer-id", + "name": "account-id", "in": "path", - "description": "External retailer id to retrieve creative templates for", + "description": "External account id to retrieve creatives for", "required": true, "style": "simple", "schema": { - "type": "integer", - "format": "int32" + "type": "string" + }, + "x-nullable": false + }, + { + "name": "creative-ids", + "in": "query", + "description": "Creatives to filter by", + "style": "form", + "schema": { + "type": "array", + "items": { + "type": "string" + } }, "x-nullable": false } ], "responses": { "200": { - "description": "Templates found", + "description": "Creatives found", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/TemplateListResponse" + "$ref": "#/components/schemas/Creative202210ListResponse" } } } @@ -904,339 +1077,294 @@ } } }, - "/2022-07/retail-media/retailers/{retailer-id}/templates/{template-id}": { + "/2023-10/retail-media/accounts/{account-id}/creatives/{creative-id}": { "get": { "tags": [ "Campaign" ], - "description": "Gets the template for the specified retailer id and template id", - "operationId": "CreativesApi_GetApi202207ExternalRetailerByRetailerId}Templates{templateId", + "description": "Get the specified creative", + "operationId": "CreativesApi_GetApi202210ExternalAccountByAccountId}Creatives{creativeId", "parameters": [ { - "name": "retailer-id", + "name": "account-id", "in": "path", - "description": "Retailer Id", + "description": "External account id to retrieve creatives for", "required": true, "style": "simple", "schema": { - "type": "integer", - "format": "int32" + "type": "string" }, "x-nullable": false }, { - "name": "template-id", + "name": "creative-id", "in": "path", - "description": "Template Id", + "description": "Creative to get", "required": true, "style": "simple", "schema": { - "type": "integer", - "format": "int32" + "type": "string" }, "x-nullable": false } ], "responses": { "200": { - "description": "Template found for the retailer", + "description": "Creatives found", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/TemplateResponse" + "$ref": "#/components/schemas/Creative202210Response" } } } } } - } - }, - "/2022-07/retail-media/retailers/{retailerId}/pages": { - "get": { + }, + "put": { "tags": [ "Campaign" ], - "description": "Get the page types available for the given retailer", - "operationId": "RetailerApi_GetApi202110ExternalRetailerPagesByRetailerId", + "description": "Update a creative", + "operationId": "CreativesApi_PutApi202210ExternalAccountByAccountId}Creatives{creativeId", "parameters": [ { - "name": "retailerId", + "name": "account-id", "in": "path", - "description": "The retailers to fetch pages for", + "description": "External account id containing the creative", "required": true, "style": "simple", "schema": { - "type": "integer", - "format": "int32" + "type": "string" + }, + "x-nullable": false + }, + { + "name": "creative-id", + "in": "path", + "description": "Creative to update", + "required": true, + "style": "simple", + "schema": { + "type": "string" }, "x-nullable": false } ], - "responses": { - "200": { - "description": "Pages fetched successfully", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ExternalRetailerPages202110" - } - } - } - } - } - } - }, - "/2022-07/retail-media/reports/campaigns": { - "post": { - "tags": [ - "Analytics" - ], - "description": "Request a campaign report", - "operationId": "requestCampaignReport", "requestBody": { - "description": "Envelope of the request", + "description": "The creative to create", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportRequest" + "$ref": "#/components/schemas/CreativeUpdateModel202207" } } }, - "required": true + "x-nullable": false, + "x-bodyName": "creative" }, "responses": { "200": { - "description": "Returns the status of the report", + "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" + "$ref": "#/components/schemas/Creative202210Response" } } } }, - "400": { - "description": "Bad request", + "204": { + "description": "Creative updated", "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BadRequest" - } - } + "application/json": { } } - }, - "401": { - "description": "Missing Authorization or token invalid" - }, - "403": { - "description": "Must have access to RetailMedia accounts" } } } }, - "/2022-07/retail-media/reports/line-items": { + "/2023-10/retail-media/accounts/{accountId}/catalogs": { "post": { "tags": [ - "Analytics" + "Campaign" + ], + "description": "Create a request for a Catalog available to the indicated account.", + "operationId": "CatalogApi_PostApiV1ExternalAccountCatalogsByAccountId", + "parameters": [ + { + "name": "accountId", + "in": "path", + "description": "The account to request the catalog for.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } ], - "description": "Request a line item report", - "operationId": "requestLineItemReport", "requestBody": { - "description": "Envelope of the request", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportRequest" + "$ref": "#/components/schemas/JsonApiRequestOfCatalogRequest" } } }, - "required": true + "x-nullable": false, + "x-bodyName": "request" }, "responses": { "200": { - "description": "Returns the status of the report", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" - } - } - } - }, - "400": { - "description": "Bad request", + "description": "Catalog request successfully created", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/BadRequest" + "$ref": "#/components/schemas/JsonApiSingleResponseOfCatalogStatus" } } } - }, - "401": { - "description": "Missing Authorization or token invalid" - }, - "403": { - "description": "Must have access to RetailMedia accounts" } } } }, - "/2022-07/retail-media/reports/{reportId}/output": { + "/2023-10/retail-media/catalogs/{catalogId}/output": { "get": { "tags": [ - "Analytics" + "Campaign" ], - "description": "Request the report output", - "operationId": "getReportOutput", + "description": "Output the indicated catalog. Catalogs are only available for retrieval when their associated status request\r\nis at a Success status.\r\nProduces application/x-json-stream of v2021_07 CatalogProduct json objects.", + "operationId": "CatalogApi_GetApiV1ExternalCatalogOutputByCatalogId", "parameters": [ { - "name": "reportId", + "name": "catalogId", "in": "path", - "description": "report id", + "description": "A catalog ID returned from an account catalog request.", "required": true, "style": "simple", "schema": { "type": "string" - } + }, + "x-nullable": false } ], "responses": { "200": { - "description": "The output", - "headers": { - "Content-Disposition": { - "description": "Returns a filename for the output", - "required": true, - "schema": { - "type": "string" - } - } - }, + "description": "Catalog download initiated.", "content": { - "application/octet-stream": { - "schema": { - "type": "string" - } - } + "application/x-json-stream": { }, + "application/json": { } } }, - "401": { - "description": "Missing Authorization or token invalid" - }, - "403": { - "description": "Must have access to RetailMedia accounts" - }, - "404": { - "description": "ReportId not found" + "400": { + "description": "The indicated catalog is not available for retrieval, wait for a success status.", + "content": { + "application/x-json-stream": { }, + "application/json": { } + } } } } }, - "/2022-07/retail-media/reports/{reportId}/status": { + "/2023-10/retail-media/catalogs/{catalogId}/status": { "get": { "tags": [ - "Analytics" + "Campaign" ], - "description": "Get the status of the report", - "operationId": "getReportStatus", + "description": "Check the status of a catalog request.", + "operationId": "CatalogApi_GetApiV1ExternalCatalogStatusByCatalogId", "parameters": [ { - "name": "reportId", + "name": "catalogId", "in": "path", - "description": "report id", + "description": "A catalog ID returned from an account catalog request.", "required": true, "style": "simple", "schema": { "type": "string" - } + }, + "x-nullable": false } ], "responses": { "200": { - "description": "Returns the status of the report", + "description": "Catalog request found.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/EnvelopeReportStatus" + "$ref": "#/components/schemas/JsonApiSingleResponseOfCatalogStatus" } } } - }, - "401": { - "description": "Missing Authorization or token invalid" - }, - "403": { - "description": "Must have access to RetailMedia accounts" - }, - "404": { - "description": "ReportId not found" } } } }, - "/2022-07/retail-media/accounts/{account-id}/balances": { + "/2023-10/retail-media/categories": { "get": { "tags": [ "Campaign" ], - "description": "Gets page of balance objects for the given account id", - "operationId": "BalancesApi_GetApi202110ExternalAccountBalancesByAccountId", + "description": "Endpoint to search categories by text and retailer.", + "operationId": "CategorySearchApi_GetApi202204ExternalCategories", "parameters": [ { - "name": "account-id", - "in": "path", - "description": "The account to get balances for", - "required": true, - "style": "simple", + "name": "retailerId", + "in": "query", + "description": "The retailer id for which Categories fetched", + "style": "form", "schema": { - "type": "string" + "type": "integer", + "format": "int32" }, "x-nullable": false }, { - "name": "limitToId", + "name": "textSubstring", "in": "query", - "description": "The ids that you would like to limit your result set to", + "description": "Query string to search across Categories", "style": "form", "schema": { - "type": "array", - "items": { - "type": "string" - } + "type": "string" }, "x-nullable": false }, { "name": "pageIndex", "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", + "description": "The start position in the overall list of matches. Must be zero or greater.", "style": "form", "schema": { + "maximum": 500.0, + "minimum": 0.0, "type": "integer", - "format": "int32" + "format": "int32", + "default": 0 }, "x-nullable": false }, { "name": "pageSize", "in": "query", - "description": "The maximum number of items you would like to receive in this request", + "description": "The maximum number of results to return with each call. Must be greater than zero.", "style": "form", "schema": { + "maximum": 100.0, + "minimum": 1.0, "type": "integer", - "format": "int32" + "format": "int32", + "default": 100 }, "x-nullable": false } ], "responses": { "200": { - "description": "Success", + "description": "Categories found.", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/Balance202110PagedListResponse" + "$ref": "#/components/schemas/Category202204ListResponse" } } } @@ -1244,82 +1372,67 @@ } } }, - "/2022-07/retail-media/accounts/{account-id}/line-items": { + "/2023-10/retail-media/categories/{categoryId}": { "get": { "tags": [ "Campaign" ], - "description": "Gets page of line item objects for the given account id", - "operationId": "GetApiV2ExternalAccountLineItemsByAccountId", + "description": "Endpoint to search for a specific category by categoryId.", + "operationId": "CategorySearchApi_GetApi202204ExternalCategorieByCategoryId", "parameters": [ { - "name": "account-id", + "name": "categoryId", "in": "path", - "description": "The given account id", + "description": "ID of the desired category", "required": true, "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToCampaignId", - "in": "query", - "description": "The campaign ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "limitToType", - "in": "query", - "description": "The campaign types that you would like to limit your result set to", - "style": "form", - "schema": { - "enum": [ - "Unknown", - "Auction", - "Preferred" - ], - "type": "string" - }, - "x-nullable": true - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", "schema": { "type": "integer", "format": "int32" }, "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Retrieval completed and category is returned.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Category202204" + } + } + } + }, + "400": { + "description": "No IDs were passed in.", + "content": { + "application/json": { } + } }, + "500": { + "description": "A non-request input based error occurred in the server.", + "content": { + "application/json": { } + } + } + } + } + }, + "/2023-10/retail-media/retailers/{retailer-id}/templates": { + "get": { + "tags": [ + "Campaign" + ], + "description": "Get retailer creative templates", + "operationId": "CreativesApi_GetApi202207ExternalRetailerTemplatesByRetailerId", + "parameters": [ { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", + "name": "retailer-id", + "in": "path", + "description": "External retailer id to retrieve creative templates for", + "required": true, + "style": "simple", "schema": { "type": "integer", "format": "int32" @@ -1329,11 +1442,11 @@ ], "responses": { "200": { - "description": "Success", + "description": "Templates found", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CommonLineItemPagedListResponse" + "$ref": "#/components/schemas/TemplateListResponse" } } } @@ -1341,54 +1454,32 @@ } } }, - "/2022-07/retail-media/accounts/{accountId}/campaigns": { + "/2023-10/retail-media/retailers/{retailer-id}/templates/{template-id}": { "get": { "tags": [ "Campaign" ], - "description": "Gets page of campaign objects for the given account id", - "operationId": "CampaignsApi_GetApiV1ExternalAccountCampaignsByAccountId", + "description": "Gets the template for the specified retailer id and template id", + "operationId": "CreativesApi_GetApi202207ExternalRetailerByRetailerId}Templates{templateId", "parameters": [ { - "name": "accountId", + "name": "retailer-id", "in": "path", - "description": "The given account id", + "description": "Retailer Id", "required": true, "style": "simple", "schema": { - "type": "string" + "type": "integer", + "format": "int32" }, "x-nullable": false }, { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32" - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", + "name": "template-id", + "in": "path", + "description": "Template Id", + "required": true, + "style": "simple", "schema": { "type": "integer", "format": "int32" @@ -1398,61 +1489,46 @@ ], "responses": { "200": { - "description": "Success", + "description": "Template found for the retailer", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/JsonApiPageResponseOfCampaign" + "$ref": "#/components/schemas/TemplateResponse" } } } } } - }, - "post": { + } + }, + "/2023-10/retail-media/retailers/{retailerId}/pages": { + "get": { "tags": [ "Campaign" ], - "description": "Creates a new campaign with the specified settings", - "operationId": "CampaignsApi_PostApiV1ExternalAccountCampaignsByAccountId", + "description": "Get the page types available for the given retailer", + "operationId": "RetailerApi_GetApi202110ExternalRetailerPagesByRetailerId", "parameters": [ { - "name": "accountId", + "name": "retailerId", "in": "path", - "description": "The given account id", + "description": "The retailers to fetch pages for", "required": true, "style": "simple", "schema": { - "type": "string" + "type": "integer", + "format": "int32" }, "x-nullable": false } ], - "requestBody": { - "description": "The campaign settings to create a campaign with", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ExternalPostCampaign" - } - } - }, - "x-nullable": false, - "x-bodyName": "campaign" - }, "responses": { - "201": { - "description": "Success", - "content": { - "application/json": { } - } - }, "200": { - "description": "OK", + "description": "Pages fetched successfully", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaign" + "$ref": "#/components/schemas/ExternalRetailerPages202110" } } } @@ -1460,33 +1536,56 @@ } } }, - "/2022-07/retail-media/auction-line-items/{line-item-id}": { - "get": { + "/2023-10/retail-media/reports/campaigns": { + "post": { "tags": [ - "Campaign" + "Analytics" ], - "description": "Gets the auction line item for the given line item id", - "operationId": "GetApiV2ExternalAuctionLineItemByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The given line item id", - "required": true, - "style": "simple", - "schema": { - "type": "string" + "description": "Return an asynchronous Campaigns Report", + "operationId": "GenerateAsyncCampaignsReport", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } }, - "x-nullable": false - } - ], + "application/json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" + } + } + }, + "required": true, + "x-bodyName": "request" + }, "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } @@ -1494,53 +1593,96 @@ "400": { "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } } } - }, - "put": { + } + }, + "/2023-10/retail-media/reports/line-items": { + "post": { "tags": [ - "Campaign" - ], - "description": "Updates the auction line item for the given line item id", - "operationId": "PutApiV2ExternalAuctionLineItemByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The given line item id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } + "Analytics" ], + "description": "Returns an asynchronous Line Items Report", + "operationId": "GenerateAsyncLineItemsReport", "requestBody": { - "description": "The line item settings to create a line item with", "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/AuctionLineItemUpdateModelRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } } }, - "x-nullable": false, - "x-bodyName": "lineItem" + "required": true, + "x-bodyName": "request" }, "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } @@ -1548,9 +1690,39 @@ "400": { "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } @@ -1558,33 +1730,56 @@ } } }, - "/2022-07/retail-media/auction-line-items/{line-item-id}/targeting/keywords": { - "get": { + "/2023-10/retail-media/reports/revenue": { + "post": { "tags": [ - "Campaign" + "Analytics" ], - "description": "This endpoint gets the keyword target on the specified line item.", - "operationId": "TargetingApi_GetApi202110ExternalAuctionLineItemTargetingKeywordsByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with", - "required": true, - "style": "simple", - "schema": { - "type": "string" + "description": "Returns an asynchronous Revenue Report", + "operationId": "GenerateAsyncRevenueReport", + "requestBody": { + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/AsyncRevenueReportRequest" + } }, - "x-nullable": false - } - ], + "application/json": { + "schema": { + "$ref": "#/components/schemas/AsyncRevenueReportRequest" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncRevenueReportRequest" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/AsyncRevenueReportRequest" + } + } + }, + "required": true, + "x-bodyName": "request" + }, "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } @@ -1592,55 +1787,82 @@ "400": { "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } - } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } + } } } }, - "/2022-07/retail-media/auction-line-items/{line-item-id}/targeting/keywords/append": { - "post": { + "/2023-10/retail-media/reports/{reportId}/output": { + "get": { "tags": [ - "Campaign" + "Analytics" ], - "description": "This endpoint appends one or more keywords to targeting on the specified line item. The resulting state of the keyword target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalAuctionLineItemTargetingKeywordsAppendByLineItemId", + "description": "Returns the output of an async report", + "operationId": "GetAsyncExportOutput", "parameters": [ { - "name": "line-item-id", + "name": "reportId", "in": "path", - "description": "The line item to interact with", + "description": "The ID of the report to retrieve", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], - "requestBody": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "keywordsToAppend" - }, "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "type": "string" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" + "type": "string" + } + }, + "text/json": { + "schema": { + "type": "string" } } } @@ -1648,9 +1870,39 @@ "400": { "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } @@ -1658,45 +1910,42 @@ } } }, - "/2022-07/retail-media/auction-line-items/{line-item-id}/targeting/keywords/delete": { - "post": { + "/2023-10/retail-media/reports/{reportId}/status": { + "get": { "tags": [ - "Campaign" + "Analytics" ], - "description": "This endpoint removes one or more keywords from targeting on the specified line item. The resulting state of the keyword target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalAuctionLineItemTargetingKeywordsDeleteByLineItemId", + "description": "Returns the status of an async report", + "operationId": "GetAsyncExportStatus", "parameters": [ { - "name": "line-item-id", + "name": "reportId", "in": "path", - "description": "The line item to interact with", + "description": "The ID of the report to retrieve", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], - "requestBody": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "keywordsToRemove" - }, "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" + "$ref": "#/components/schemas/AsyncReportResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/AsyncReportResponse" } } } @@ -1704,9 +1953,39 @@ "400": { "description": "Bad Request", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/KeywordTarget202110Response" + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ReportOutcome" } } } @@ -1714,18 +1993,18 @@ } } }, - "/2022-07/retail-media/balances/{balance-id}/campaigns": { + "/2023-10/retail-media/accounts/{account-id}/balances": { "get": { "tags": [ "Campaign" ], - "description": "Gets page of campaigns for the given balanceId", - "operationId": "BalancesApi_GetApi202110ExternalBalanceCampaignsByBalanceId", + "description": "Gets page of balance objects for the given account id", + "operationId": "BalancesApi_GetApi202110ExternalAccountBalancesByAccountId", "parameters": [ { - "name": "balance-id", + "name": "account-id", "in": "path", - "description": "The balance to get campaigns from", + "description": "The account to get balances for", "required": true, "style": "simple", "schema": { @@ -1775,7 +2054,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" + "$ref": "#/components/schemas/Balance202110PagedListResponse" } } } @@ -1783,116 +2062,52 @@ } } }, - "/2022-07/retail-media/balances/{balance-id}/campaigns/append": { - "post": { + "/2023-10/retail-media/accounts/{account-id}/line-items": { + "get": { "tags": [ "Campaign" ], - "description": "appends one or more campaigns to the specified balance", - "operationId": "BalancesApi_PostApi202110ExternalBalanceCampaignsAppendByBalanceId", + "description": "Gets page of line item objects for the given account id", + "operationId": "GetApiV2ExternalAccountLineItemsByAccountId", "parameters": [ { - "name": "balance-id", + "name": "account-id", "in": "path", - "description": "The balance to add campaigns from", + "description": "The given account id", "required": true, "style": "simple", "schema": { "type": "string" }, "x-nullable": false - } - ], - "requestBody": { - "description": "The campaigns to append", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110ListRequest" - } - } }, - "x-nullable": false, - "x-bodyName": "campaigns" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-07/retail-media/balances/{balance-id}/campaigns/delete": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Removes one or more campaigns on the specified balance", - "operationId": "BalancesApi_PostApi202110ExternalBalanceCampaignsDeleteByBalanceId", - "parameters": [ { - "name": "balance-id", - "in": "path", - "description": "The balance to remove campaigns from", - "required": true, - "style": "simple", + "name": "limitToCampaignId", + "in": "query", + "description": "The campaign ids that you would like to limit your result set to", + "style": "form", "schema": { - "type": "string" + "type": "array", + "items": { + "type": "string" + } }, "x-nullable": false - } - ], - "requestBody": { - "description": "The campaigns to append", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110ListRequest" - } - } }, - "x-nullable": false, - "x-bodyName": "campaigns" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" - } - } - } - } - } - } - }, - "/2022-07/retail-media/campaigns/{campaign-id}/auction-line-items": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Gets page of auction line item objects for the given campaign id", - "operationId": "GetApiV2ExternalCampaignAuctionLineItemsByCampaignId", - "parameters": [ { - "name": "campaign-id", - "in": "path", - "description": "The given campaign id", - "required": true, - "style": "simple", + "name": "limitToType", + "in": "query", + "description": "The campaign types that you would like to limit your result set to", + "style": "form", "schema": { + "enum": [ + "Unknown", + "Auction", + "Preferred" + ], "type": "string" }, - "x-nullable": false + "x-nullable": true }, { "name": "limitToId", @@ -1936,71 +2151,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AuctionLineItemPagedListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemPagedListResponse" - } - } - } - } - } - }, - "post": { - "tags": [ - "Campaign" - ], - "description": "Creates new auction line item with the specified settings", - "operationId": "PostApiV2ExternalCampaignAuctionLineItemsByCampaignId", - "parameters": [ - { - "name": "campaign-id", - "in": "path", - "description": "The given campaign id", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The line item settings to create a line item with", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemCreateModelRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "lineItem" - }, - "responses": { - "201": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AuctionLineItemResponse" + "$ref": "#/components/schemas/CommonLineItemPagedListResponse" } } } @@ -2008,18 +2159,18 @@ } } }, - "/2022-07/retail-media/campaigns/{campaign-id}/preferred-line-items": { + "/2023-10/retail-media/accounts/{accountId}/balances": { "get": { "tags": [ "Campaign" ], - "description": "Gets page of preferred line item objects for the given campaign id", - "operationId": "LineItemsApi_GetApi202110ExternalCampaignPreferredLineItemsByCampaignId", + "description": "Get page of balances for the given accountId.", + "operationId": "Balances_GetApiV1ExternalAccountBalancesByAccountId", "parameters": [ { - "name": "campaign-id", + "name": "accountId", "in": "path", - "description": "The given campaign id", + "description": "The account to get page of balances for", "required": true, "style": "simple", "schema": { @@ -2047,7 +2198,8 @@ "style": "form", "schema": { "type": "integer", - "format": "int32" + "format": "int32", + "default": 0 }, "x-nullable": false }, @@ -2058,7 +2210,8 @@ "style": "form", "schema": { "type": "integer", - "format": "int32" + "format": "int32", + "default": 25 }, "x-nullable": false } @@ -2069,17 +2222,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110PagedListResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110PagedListResponse" + "$ref": "#/components/schemas/BalanceResponsePagedListResponse" } } } @@ -2090,13 +2233,13 @@ "tags": [ "Campaign" ], - "description": "Creates a new preferred line item with the specified settings", - "operationId": "LineItemsApi_PostApi202110ExternalCampaignPreferredLineItemsByCampaignId", + "description": "Create balance for the given account id", + "operationId": "Balances_PostApiV1ExternalAccountBalancesByAccountId", "parameters": [ { - "name": "campaign-id", + "name": "accountId", "in": "path", - "description": "The given campaign id", + "description": "The account to create balances for", "required": true, "style": "simple", "schema": { @@ -2106,16 +2249,15 @@ } ], "requestBody": { - "description": "The line item settings to create a line item with", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItemCreateModel202110Request" + "$ref": "#/components/schemas/CreateBalanceRequest" } } }, "x-nullable": false, - "x-bodyName": "lineItem" + "x-bodyName": "createBalance" }, "responses": { "201": { @@ -2123,36 +2265,80 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" + "$ref": "#/components/schemas/BalanceResponse" } } } + } + } + } + }, + "/2023-10/retail-media/accounts/{accountId}/balances/{balanceId}": { + "get": { + "tags": [ + "Campaign" + ], + "description": "Get a balance for the given account id and balance id", + "operationId": "Balances_GetApiV1ExternalAccountByAccountIdAndBalanceId", + "parameters": [ + { + "name": "accountId", + "in": "path", + "description": "The account of the balance", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false }, - "400": { - "description": "Bad Request", + { + "name": "balanceId", + "in": "path", + "description": "The balance id", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" + "$ref": "#/components/schemas/BalanceResponse" } } } } } - } - }, - "/2022-07/retail-media/campaigns/{campaignId}": { - "get": { + }, + "patch": { "tags": [ "Campaign" ], - "description": "Gets the campaign for the given campaign id", - "operationId": "CampaignsApi_GetApiV1ExternalCampaignByCampaignId", + "description": "Modify a balance for the given account id", + "operationId": "Balances_PatchApiV1ExternalAccountByAccountIdAndBalanceId", "parameters": [ { - "name": "campaignId", + "name": "accountId", "in": "path", - "description": "The given campaign id", + "description": "The account of the balance", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + }, + { + "name": "balanceId", + "in": "path", + "description": "The balance to change the dates", "required": true, "style": "simple", "schema": { @@ -2161,30 +2347,54 @@ "x-nullable": false } ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateBalanceModelRequest" + } + } + }, + "x-nullable": false, + "x-bodyName": "updateBalanceModel" + }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaign" + "$ref": "#/components/schemas/BalanceResponse" } } } } } - }, - "put": { + } + }, + "/2023-10/retail-media/accounts/{accountId}/balances/{balanceId}/add-funds": { + "post": { "tags": [ "Campaign" ], - "description": "Updates the campaign for the given campaign id", - "operationId": "CampaignsApi_PutApiV1ExternalCampaignByCampaignId", + "description": "Add funds to a balance for the given account id", + "operationId": "Balances_PostApiV1ExternalAccountAddFundsByAccountIdAndBalanceId", "parameters": [ { - "name": "campaignId", + "name": "accountId", "in": "path", - "description": "The given campaign id", + "description": "The account of the balance", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + }, + { + "name": "balanceId", + "in": "path", + "description": "The balance to add funds to", "required": true, "style": "simple", "schema": { @@ -2194,16 +2404,15 @@ } ], "requestBody": { - "description": "The campaign settings to update that campaign with", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ExternalPutCampaign" + "$ref": "#/components/schemas/AddFundsToBalanceRequest" } } }, "x-nullable": false, - "x-bodyName": "campaign" + "x-bodyName": "addFundsToBalance" }, "responses": { "200": { @@ -2211,7 +2420,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaign" + "$ref": "#/components/schemas/BalanceResponse" } } } @@ -2219,18 +2428,29 @@ } } }, - "/2022-07/retail-media/line-items/{line-item-id}": { - "get": { + "/2023-10/retail-media/accounts/{accountId}/balances/{balanceId}/change-dates": { + "post": { "tags": [ "Campaign" ], - "description": "Gets the line item for the given line item id", - "operationId": "GetApiV2ExternalLineItemByLineItemId", + "description": "Change dates of a balance for the given account id", + "operationId": "Balances_PostApiV1ExternalAccountChangeDatesByAccountIdAndBalanceId", "parameters": [ { - "name": "line-item-id", + "name": "accountId", "in": "path", - "description": "The given line item id", + "description": "The account of the balance", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + }, + { + "name": "balanceId", + "in": "path", + "description": "The balance to change the dates", "required": true, "style": "simple", "schema": { @@ -2239,13 +2459,24 @@ "x-nullable": false } ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ChangeDatesOfBalanceRequest" + } + } + }, + "x-nullable": false, + "x-bodyName": "changeDatesOfBalance" + }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/CommonLineItemResponse" + "$ref": "#/components/schemas/BalanceResponse" } } } @@ -2253,18 +2484,18 @@ } } }, - "/2022-07/retail-media/line-items/{line-item-id}/products": { + "/2023-10/retail-media/accounts/{accountId}/campaigns": { "get": { "tags": [ "Campaign" ], - "description": "This endpoint gets the promoted products on the specified line item.", - "operationId": "PromotedProductsApi_GetApi202110ExternalLineItemProductsByLineItemId", + "description": "Get all the editable and creatable campaign attributes including all types of budgets for each campaigns in relation to the account id, limited by the campaign ids.", + "operationId": "Campaigns_GetApi202301ExternalAccountCampaignsByAccountId", "parameters": [ { - "name": "line-item-id", + "name": "accountId", "in": "path", - "description": "The line item to interact with", + "description": "The account to request the campaign for.", "required": true, "style": "simple", "schema": { @@ -2292,7 +2523,8 @@ "style": "form", "schema": { "type": "integer", - "format": "int32" + "format": "int32", + "default": 0 }, "x-nullable": false }, @@ -2303,7 +2535,8 @@ "style": "form", "schema": { "type": "integer", - "format": "int32" + "format": "int32", + "default": 25 }, "x-nullable": false } @@ -2314,26 +2547,24 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" + "$ref": "#/components/schemas/JsonApiPageResponseOfCampaignV202301" } } } } } - } - }, - "/2022-07/retail-media/line-items/{line-item-id}/products/append": { + }, "post": { "tags": [ "Campaign" ], - "description": "This endpoint appends one or more products to promote on the specified line item. The resulting state of the line item is returned.", - "operationId": "PromotedProductsApi_PostApi202110ExternalLineItemProductsAppendByLineItemId", + "description": "Create a campaign and assign budgets for the given account id with creatable campaign attributes given in request body constrained by business validation. The validation error includes details and source of errors. Pacing can be adjusted and affected by the status of the campaign and the days left on the campaign if auto daily pacing is enabled.", + "operationId": "Campaigns_PostApi202301ExternalAccountCampaignsByAccountId", "parameters": [ { - "name": "line-item-id", + "name": "accountId", "in": "path", - "description": "The line item to interact with", + "description": "The account to request the campaign for.", "required": true, "style": "simple", "schema": { @@ -2343,24 +2574,24 @@ } ], "requestBody": { - "description": "the products to append to this line item", + "description": "Creatable campaign attributes", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PromotedProduct202110ListRequest" + "$ref": "#/components/schemas/PostCampaignV202301" } } }, "x-nullable": false, - "x-bodyName": "promotedProductsToAppend" + "x-bodyName": "campaign" }, "responses": { - "200": { + "201": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" + "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaignV202301" } } } @@ -2368,18 +2599,18 @@ } } }, - "/2022-07/retail-media/line-items/{line-item-id}/products/delete": { - "post": { + "/2023-10/retail-media/auction-line-items/{line-item-id}": { + "get": { "tags": [ "Campaign" ], - "description": "This endpoint removes one or more products from promotion on the specified line item. The resulting state of the line item is returned.", - "operationId": "PromotedProductsApi_PostApi202110ExternalLineItemProductsDeleteByLineItemId", + "description": "Gets the auction line item for the given line item id", + "operationId": "GetApiV2ExternalAuctionLineItemByLineItemId", "parameters": [ { "name": "line-item-id", "in": "path", - "description": "The line item to interact with", + "description": "The given line item id", "required": true, "style": "simple", "schema": { @@ -2388,44 +2619,40 @@ "x-nullable": false } ], - "requestBody": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110ListRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "promotedProductsToRemove" - }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" + "$ref": "#/components/schemas/AuctionLineItemResponse" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuctionLineItemResponse" } } } } } - } - }, - "/2022-07/retail-media/line-items/{line-item-id}/products/pause": { - "post": { + }, + "put": { "tags": [ "Campaign" ], - "description": "This endpoint pauses one or more promoted products on a specified line item.", - "operationId": "PromotedProducts_PostApi202110ExternalLineItemProductsPauseByLineItemId", + "description": "Updates the auction line item for the given line item id", + "operationId": "PutApiV2ExternalAuctionLineItemByLineItemId", "parameters": [ { "name": "line-item-id", "in": "path", - "description": "The line item to interact with.", + "description": "The given line item id", "required": true, "style": "simple", "schema": { @@ -2435,75 +2662,53 @@ } ], "requestBody": { - "description": "The products from which their IDs will be used to pause.", + "description": "The line item settings to create a line item with", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PromotedProduct202110ListRequest" + "$ref": "#/components/schemas/AuctionLineItemUpdateModelRequest" } } }, "x-nullable": false, - "x-bodyName": "promotedProductsToPause" + "x-bodyName": "lineItem" }, "responses": { "200": { - "description": "Success" - } - } - } - }, - "/2022-07/retail-media/line-items/{line-item-id}/products/unpause": { - "post": { - "tags": [ - "Campaign" - ], - "description": "This endpoint unpauses one or more promoted products on a specified line item.", - "operationId": "PromotedProducts_PostApi202110ExternalLineItemProductsUnpauseByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "The line item to interact with.", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "The products from which their IDs will be used to unpause.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PromotedProduct202110ListRequest" + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuctionLineItemResponse" + } } } }, - "x-nullable": false, - "x-bodyName": "promotedProductsToUnpause" - }, - "responses": { - "200": { - "description": "Success" + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AuctionLineItemResponse" + } + } + } } } } }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}": { + "/2023-10/retail-media/auction-line-items/{line-item-id}/targeting/keywords": { "get": { "tags": [ "Campaign" ], - "description": "Gets the preferred line item for the given line item id", - "operationId": "LineItemsApi_GetApi202110ExternalPreferredLineItemByLineItemId", + "description": "This endpoint gets the keyword target on the specified line item.", + "operationId": "TargetingApi_GetApi202110ExternalAuctionLineItemTargetingKeywordsByLineItemId", "parameters": [ { "name": "line-item-id", "in": "path", - "description": "The given line item id", + "description": "The line item to interact with", "required": true, "style": "simple", "schema": { @@ -2518,7 +2723,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" + "$ref": "#/components/schemas/KeywordTarget202110Response" } } } @@ -2528,24 +2733,26 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" + "$ref": "#/components/schemas/KeywordTarget202110Response" } } } } } - }, - "put": { + } + }, + "/2023-10/retail-media/auction-line-items/{line-item-id}/targeting/keywords/append": { + "post": { "tags": [ "Campaign" ], - "description": "Updates the preferred line item for the given line item id", - "operationId": "LineItemsApi_PutApi202110ExternalPreferredLineItemByLineItemId", + "description": "This endpoint appends one or more keywords to targeting on the specified line item. The resulting state of the keyword target is returned.", + "operationId": "TargetingApi_PostApi202110ExternalAuctionLineItemTargetingKeywordsAppendByLineItemId", "parameters": [ { "name": "line-item-id", "in": "path", - "description": "The given line item id", + "description": "The line item to interact with", "required": true, "style": "simple", "schema": { @@ -2555,16 +2762,16 @@ } ], "requestBody": { - "description": "The line item settings to create a line item with", + "description": "", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItemUpdateModel202110Request" + "$ref": "#/components/schemas/KeywordTarget202110Request" } } }, "x-nullable": false, - "x-bodyName": "lineItem" + "x-bodyName": "keywordsToAppend" }, "responses": { "200": { @@ -2572,7 +2779,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" + "$ref": "#/components/schemas/KeywordTarget202110Response" } } } @@ -2582,7 +2789,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/PreferredLineItem202110Response" + "$ref": "#/components/schemas/KeywordTarget202110Response" } } } @@ -2590,13 +2797,13 @@ } } }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket": { - "get": { + "/2023-10/retail-media/auction-line-items/{line-item-id}/targeting/keywords/delete": { + "post": { "tags": [ "Campaign" ], - "description": "This endpoint gets the add to basket target on the specified line item.", - "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingAddToBasketByLineItemId", + "description": "This endpoint removes one or more keywords from targeting on the specified line item. The resulting state of the keyword target is returned.", + "operationId": "TargetingApi_PostApi202110ExternalAuctionLineItemTargetingKeywordsDeleteByLineItemId", "parameters": [ { "name": "line-item-id", @@ -2610,13 +2817,25 @@ "x-nullable": false } ], + "requestBody": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/KeywordTarget202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "keywordsToRemove" + }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" + "$ref": "#/components/schemas/KeywordTarget202110Response" } } } @@ -2626,61 +2845,76 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" + "$ref": "#/components/schemas/KeywordTarget202110Response" } } } } } - }, - "put": { + } + }, + "/2023-10/retail-media/balances/{balance-id}/campaigns": { + "get": { "tags": [ "Campaign" ], - "description": "This endpoint sets the scope of the add to basket target on the specified line item.", - "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingAddToBasketByLineItemId", + "description": "Gets page of campaigns for the given balanceId", + "operationId": "BalancesApi_GetApi202110ExternalBalanceCampaignsByBalanceId", "parameters": [ { - "name": "line-item-id", + "name": "balance-id", "in": "path", - "description": "The line item to interact with", + "description": "The balance to get campaigns from", "required": true, "style": "simple", "schema": { "type": "string" }, "x-nullable": false - } - ], - "requestBody": { - "description": "The add to basket target to set the scope for", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Request" + }, + { + "name": "limitToId", + "in": "query", + "description": "The ids that you would like to limit your result set to", + "style": "form", + "schema": { + "type": "array", + "items": { + "type": "string" } - } + }, + "x-nullable": false }, - "x-nullable": false, - "x-bodyName": "addToBasketTarget" - }, + { + "name": "pageIndex", + "in": "query", + "description": "The 0 indexed page index you would like to receive given the page size", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-nullable": false + }, + { + "name": "pageSize", + "in": "query", + "description": "The maximum number of items you would like to receive in this request", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-nullable": false + } + ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" + "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" } } } @@ -2688,18 +2922,18 @@ } } }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket/append": { + "/2023-10/retail-media/balances/{balance-id}/campaigns/append": { "post": { "tags": [ "Campaign" ], - "description": "This endpoint appends one or more add to basket ids to targeting on the specified line item. The resulting state of the add to basket target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAddToBasketAppendByLineItemId", + "description": "appends one or more campaigns to the specified balance", + "operationId": "BalancesApi_PostApi202110ExternalBalanceCampaignsAppendByBalanceId", "parameters": [ { - "name": "line-item-id", + "name": "balance-id", "in": "path", - "description": "The line item to interact with", + "description": "The balance to add campaigns from", "required": true, "style": "simple", "schema": { @@ -2709,16 +2943,16 @@ } ], "requestBody": { - "description": "Ids to append to the target", + "description": "The campaigns to append", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AddToBasketIdsUpdateModel202110Request" + "$ref": "#/components/schemas/BalanceCampaign202110ListRequest" } } }, "x-nullable": false, - "x-bodyName": "idsToAppend" + "x-bodyName": "campaigns" }, "responses": { "200": { @@ -2726,17 +2960,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" + "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" } } } @@ -2744,18 +2968,18 @@ } } }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket/delete": { + "/2023-10/retail-media/balances/{balance-id}/campaigns/delete": { "post": { "tags": [ "Campaign" ], - "description": "This endpoint removes one or more add to basket ids from targeting on the specified line item. The resulting state of the add to basket target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAddToBasketDeleteByLineItemId", + "description": "Removes one or more campaigns on the specified balance", + "operationId": "BalancesApi_PostApi202110ExternalBalanceCampaignsDeleteByBalanceId", "parameters": [ { - "name": "line-item-id", + "name": "balance-id", "in": "path", - "description": "The line item to interact with", + "description": "The balance to remove campaigns from", "required": true, "style": "simple", "schema": { @@ -2765,16 +2989,16 @@ } ], "requestBody": { - "description": "Ids to remove from the target", + "description": "The campaigns to append", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AddToBasketIdsUpdateModel202110Request" + "$ref": "#/components/schemas/BalanceCampaign202110ListRequest" } } }, "x-nullable": false, - "x-bodyName": "idsToRemove" + "x-bodyName": "campaigns" }, "responses": { "200": { @@ -2782,17 +3006,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AddToBasketTarget202110Response" + "$ref": "#/components/schemas/BalanceCampaign202110PagedListResponse" } } } @@ -2800,33 +3014,68 @@ } } }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/audiences": { + "/2023-10/retail-media/campaigns/{campaign-id}/auction-line-items": { "get": { "tags": [ "Campaign" ], - "description": "This endpoint gets the audience target on the specified line item.", - "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingAudiencesByLineItemId", + "description": "Gets page of auction line item objects for the given campaign id", + "operationId": "GetApiV2ExternalCampaignAuctionLineItemsByCampaignId", "parameters": [ { - "name": "line-item-id", + "name": "campaign-id", "in": "path", - "description": "The line item to interact with", + "description": "The given campaign id", "required": true, "style": "simple", "schema": { "type": "string" }, "x-nullable": false - } - ], - "responses": { - "200": { + }, + { + "name": "limitToId", + "in": "query", + "description": "The ids that you would like to limit your result set to", + "style": "form", + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "x-nullable": false + }, + { + "name": "pageIndex", + "in": "query", + "description": "The 0 indexed page index you would like to receive given the page size", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-nullable": false + }, + { + "name": "pageSize", + "in": "query", + "description": "The maximum number of items you would like to receive in this request", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-nullable": false + } + ], + "responses": { + "200": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" + "$ref": "#/components/schemas/AuctionLineItemPagedListResponse" } } } @@ -2836,24 +3085,24 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" + "$ref": "#/components/schemas/AuctionLineItemPagedListResponse" } } } } } }, - "put": { + "post": { "tags": [ "Campaign" ], - "description": "This endpoint sets the scope of the audience target on the specified line item.", - "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingAudiencesByLineItemId", + "description": "Creates new auction line item with the specified settings", + "operationId": "PostApiV2ExternalCampaignAuctionLineItemsByCampaignId", "parameters": [ { - "name": "line-item-id", + "name": "campaign-id", "in": "path", - "description": "The line item to interact with", + "description": "The given campaign id", "required": true, "style": "simple", "schema": { @@ -2863,24 +3112,24 @@ } ], "requestBody": { - "description": "The audience target to set the scope for", + "description": "The line item settings to create a line item with", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Request" + "$ref": "#/components/schemas/AuctionLineItemCreateModelRequest" } } }, "x-nullable": false, - "x-bodyName": "audienceTarget" + "x-bodyName": "lineItem" }, "responses": { - "200": { + "201": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" + "$ref": "#/components/schemas/AuctionLineItemResponse" } } } @@ -2890,7 +3139,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" + "$ref": "#/components/schemas/AuctionLineItemResponse" } } } @@ -2898,45 +3147,68 @@ } } }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/audiences/append": { - "post": { + "/2023-10/retail-media/campaigns/{campaign-id}/preferred-line-items": { + "get": { "tags": [ "Campaign" ], - "description": "This endpoint appends one or more audiences ids to targeting on the specified line item. The resulting state of the audience target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAudiencesAppendByLineItemId", + "description": "Gets page of preferred line item objects for the given campaign id", + "operationId": "LineItemsApi_GetApi202110ExternalCampaignPreferredLineItemsByCampaignId", "parameters": [ { - "name": "line-item-id", + "name": "campaign-id", "in": "path", - "description": "The line item to interact with", + "description": "The given campaign id", "required": true, "style": "simple", "schema": { "type": "string" }, "x-nullable": false - } - ], - "requestBody": { - "description": "Audience ids to append to the target", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AudienceIdsUpdateModel202110Request" + }, + { + "name": "limitToId", + "in": "query", + "description": "The ids that you would like to limit your result set to", + "style": "form", + "schema": { + "type": "array", + "items": { + "type": "string" } - } + }, + "x-nullable": false }, - "x-nullable": false, - "x-bodyName": "idsToAppend" - }, + { + "name": "pageIndex", + "in": "query", + "description": "The 0 indexed page index you would like to receive given the page size", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-nullable": false + }, + { + "name": "pageSize", + "in": "query", + "description": "The maximum number of items you would like to receive in this request", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-nullable": false + } + ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" + "$ref": "#/components/schemas/PreferredLineItem202110PagedListResponse" } } } @@ -2946,26 +3218,24 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" + "$ref": "#/components/schemas/PreferredLineItem202110PagedListResponse" } } } } } - } - }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/audiences/delete": { + }, "post": { "tags": [ "Campaign" ], - "description": "This endpoint removes one or more audiences ids from targeting on the specified line item. The resulting state of the audience target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAudiencesDeleteByLineItemId", + "description": "Creates a new preferred line item with the specified settings", + "operationId": "LineItemsApi_PostApi202110ExternalCampaignPreferredLineItemsByCampaignId", "parameters": [ { - "name": "line-item-id", + "name": "campaign-id", "in": "path", - "description": "The line item to interact with", + "description": "The given campaign id", "required": true, "style": "simple", "schema": { @@ -2975,24 +3245,24 @@ } ], "requestBody": { - "description": "Audience ids to remove from the target", + "description": "The line item settings to create a line item with", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceIdsUpdateModel202110Request" + "$ref": "#/components/schemas/PreferredLineItemCreateModel202110Request" } } }, "x-nullable": false, - "x-bodyName": "idsToRemove" + "x-bodyName": "lineItem" }, "responses": { - "200": { + "201": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" + "$ref": "#/components/schemas/PreferredLineItem202110Response" } } } @@ -3002,7 +3272,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AudienceTarget202110Response" + "$ref": "#/components/schemas/PreferredLineItem202110Response" } } } @@ -3010,18 +3280,18 @@ } } }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/stores": { + "/2023-10/retail-media/campaigns/{campaignId}": { "get": { "tags": [ "Campaign" ], - "description": "This endpoint gets the store target on the specified line item.", - "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingStoresByLineItemId", + "description": "Get all the editable and creatable campaign attributes including all types of budgets given the campaign id", + "operationId": "Campaigns_GetApi202301ExternalCampaignByCampaignId", "parameters": [ { - "name": "line-item-id", + "name": "campaignId", "in": "path", - "description": "The line item to interact with", + "description": "Campaign Id of the campaign detail", "required": true, "style": "simple", "schema": { @@ -3036,17 +3306,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" + "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaignV202301" } } } @@ -3057,13 +3317,13 @@ "tags": [ "Campaign" ], - "description": "This endpoint sets the scope of the store target on the specified line item.", - "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingStoresByLineItemId", + "description": "Edit a campaign for the given campaign id with a given editable attributes. This will return updated creatable and editable attributes of the campaign as the result of the operation. Pacing can be adjusted and affected by the status of the campaign and the days left on the campaign if auto daily pacing is enabled.", + "operationId": "Campaigns_PutApi202301ExternalCampaignByCampaignId", "parameters": [ { - "name": "line-item-id", + "name": "campaignId", "in": "path", - "description": "The line item to interact with", + "description": "Campaign Id of the updating campaign", "required": true, "style": "simple", "schema": { @@ -3073,16 +3333,16 @@ } ], "requestBody": { - "description": "The store target to set the scope for", + "description": "Editable campaign attributes", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/StoreTarget202110Request" + "$ref": "#/components/schemas/PutCampaignV202301" } } }, "x-nullable": false, - "x-bodyName": "storeTarget" + "x-bodyName": "campaign" }, "responses": { "200": { @@ -3090,17 +3350,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" + "$ref": "#/components/schemas/JsonApiSingleResponseOfCampaignV202301" } } } @@ -3108,18 +3358,18 @@ } } }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/stores/append": { - "post": { + "/2023-10/retail-media/line-items/{line-item-id}": { + "get": { "tags": [ "Campaign" ], - "description": "This endpoint appends one or more store ids to targeting on the specified line item. The resulting state of the store target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingStoresAppendByLineItemId", + "description": "Gets the line item for the given line item id", + "operationId": "GetApiV2ExternalLineItemByLineItemId", "parameters": [ { "name": "line-item-id", "in": "path", - "description": "The line item to interact with", + "description": "The given line item id", "required": true, "style": "simple", "schema": { @@ -3128,1051 +3378,2779 @@ "x-nullable": false } ], - "requestBody": { - "description": "Store ids to append to the target", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreIdsUpdateModel202110Request" - } - } - }, - "x-nullable": false, - "x-bodyName": "idsToAppend" - }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" + "$ref": "#/components/schemas/CommonLineItemResponse" } } } - }, - "400": { - "description": "Bad Request", + } + } + } + }, + "/2023-10/retail-media/line-items/{line-item-id}/bid-multipliers": { + "get": { + "tags": [ + "Campaign" + ], + "description": "Get bid multipliers by line item", + "operationId": "LineItems_GetApi202301ExternalLineItemBidMultipliersByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "Long external id of the associated line item", + "required": true, + "style": "simple", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" + "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" } } } } } - } - }, - "/2022-07/retail-media/preferred-line-items/{line-item-id}/targeting/stores/delete": { - "post": { + }, + "put": { "tags": [ "Campaign" ], - "description": "This endpoint removes one or more store ids from targeting on the specified line item. The resulting state of the store target is returned.", - "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingStoresDeleteByLineItemId", + "description": "Replace bid multipliers on a line item", + "operationId": "LineItems_PutApi202301ExternalLineItemBidMultipliersByLineItemId", "parameters": [ { "name": "line-item-id", "in": "path", - "description": "The line item to interact with", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "requestBody": { - "description": "Store ids to remove from the target", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/StoreIdsUpdateModel202110Request" + "$ref": "#/components/schemas/LineItemBidMultipliersRequest" } } }, "x-nullable": false, - "x-bodyName": "idsToRemove" + "x-bodyName": "request" }, "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/LineItemBidMultipliersResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" + "$ref": "#/components/schemas/LineItemBidMultipliersResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/LineItemBidMultipliersResponse" + } + } + } + } + } + } + }, + "/2023-10/retail-media/line-items/{line-item-id}/products": { + "get": { + "tags": [ + "Campaign" + ], + "description": "This endpoint gets the promoted products on the specified line item.", + "operationId": "PromotedProductsApi_GetApi202110ExternalLineItemProductsByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + }, + { + "name": "limitToId", + "in": "query", + "description": "The ids that you would like to limit your result set to", + "style": "form", + "schema": { + "type": "array", + "items": { + "type": "string" + } + }, + "x-nullable": false + }, + { + "name": "pageIndex", + "in": "query", + "description": "The 0 indexed page index you would like to receive given the page size", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-nullable": false + }, + { + "name": "pageSize", + "in": "query", + "description": "The maximum number of items you would like to receive in this request", + "style": "form", + "schema": { + "type": "integer", + "format": "int32" + }, + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" + } + } + } + } + } + } + }, + "/2023-10/retail-media/line-items/{line-item-id}/products/append": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint appends one or more products to promote on the specified line item. The resulting state of the line item is returned.", + "operationId": "PromotedProductsApi_PostApi202110ExternalLineItemProductsAppendByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "the products to append to this line item", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PromotedProduct202110ListRequest" + } + } + }, + "x-nullable": false, + "x-bodyName": "promotedProductsToAppend" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" + } + } + } + } + } + } + }, + "/2023-10/retail-media/line-items/{line-item-id}/products/delete": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint removes one or more products from promotion on the specified line item. The resulting state of the line item is returned.", + "operationId": "PromotedProductsApi_PostApi202110ExternalLineItemProductsDeleteByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PromotedProduct202110ListRequest" + } + } + }, + "x-nullable": false, + "x-bodyName": "promotedProductsToRemove" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PromotedProduct202110PagedListResponse" } } } + } + } + } + }, + "/2023-10/retail-media/line-items/{line-item-id}/products/pause": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint pauses one or more promoted products on a specified line item.", + "operationId": "PromotedProducts_PostApi202110ExternalLineItemProductsPauseByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "The products from which their IDs will be used to pause.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PromotedProduct202110ListRequest" + } + } + }, + "x-nullable": false, + "x-bodyName": "promotedProductsToPause" + }, + "responses": { + "200": { + "description": "Success" + } + } + } + }, + "/2023-10/retail-media/line-items/{line-item-id}/products/unpause": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint unpauses one or more promoted products on a specified line item.", + "operationId": "PromotedProducts_PostApi202110ExternalLineItemProductsUnpauseByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with.", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "The products from which their IDs will be used to unpause.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PromotedProduct202110ListRequest" + } + } + }, + "x-nullable": false, + "x-bodyName": "promotedProductsToUnpause" + }, + "responses": { + "200": { + "description": "Success" + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}": { + "get": { + "tags": [ + "Campaign" + ], + "description": "Gets the preferred line item for the given line item id", + "operationId": "LineItemsApi_GetApi202110ExternalPreferredLineItemByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The given line item id", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PreferredLineItem202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PreferredLineItem202110Response" + } + } + } + } + } + }, + "put": { + "tags": [ + "Campaign" + ], + "description": "Updates the preferred line item for the given line item id", + "operationId": "LineItemsApi_PutApi202110ExternalPreferredLineItemByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The given line item id", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "The line item settings to create a line item with", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PreferredLineItemUpdateModel202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "lineItem" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PreferredLineItem202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PreferredLineItem202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket": { + "get": { + "tags": [ + "Campaign" + ], + "description": "This endpoint gets the add to basket target on the specified line item.", + "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingAddToBasketByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Response" + } + } + } + } + } + }, + "put": { + "tags": [ + "Campaign" + ], + "description": "This endpoint sets the scope of the add to basket target on the specified line item.", + "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingAddToBasketByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "The add to basket target to set the scope for", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "addToBasketTarget" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket/append": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint appends one or more add to basket ids to targeting on the specified line item. The resulting state of the add to basket target is returned.", + "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAddToBasketAppendByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "Ids to append to the target", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketIdsUpdateModel202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "idsToAppend" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/add-to-basket/delete": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint removes one or more add to basket ids from targeting on the specified line item. The resulting state of the add to basket target is returned.", + "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAddToBasketDeleteByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "Ids to remove from the target", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketIdsUpdateModel202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "idsToRemove" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AddToBasketTarget202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/audiences": { + "get": { + "tags": [ + "Campaign" + ], + "description": "This endpoint gets the audience target on the specified line item.", + "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingAudiencesByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Response" + } + } + } + } + } + }, + "put": { + "tags": [ + "Campaign" + ], + "description": "This endpoint sets the scope of the audience target on the specified line item.", + "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingAudiencesByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "The audience target to set the scope for", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "audienceTarget" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/audiences/append": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint appends one or more audiences ids to targeting on the specified line item. The resulting state of the audience target is returned.", + "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAudiencesAppendByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "Audience ids to append to the target", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceIdsUpdateModel202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "idsToAppend" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/audiences/delete": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint removes one or more audiences ids from targeting on the specified line item. The resulting state of the audience target is returned.", + "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingAudiencesDeleteByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "Audience ids to remove from the target", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceIdsUpdateModel202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "idsToRemove" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AudienceTarget202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/stores": { + "get": { + "tags": [ + "Campaign" + ], + "description": "This endpoint gets the store target on the specified line item.", + "operationId": "TargetingApi_GetApi202110ExternalPreferredLineItemTargetingStoresByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Response" + } + } + } + } + } + }, + "put": { + "tags": [ + "Campaign" + ], + "description": "This endpoint sets the scope of the store target on the specified line item.", + "operationId": "TargetingApi_PutApi202110ExternalPreferredLineItemTargetingStoresByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "The store target to set the scope for", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "storeTarget" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/stores/append": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint appends one or more store ids to targeting on the specified line item. The resulting state of the store target is returned.", + "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingStoresAppendByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "Store ids to append to the target", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreIdsUpdateModel202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "idsToAppend" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Response" + } + } + } + } + } + } + }, + "/2023-10/retail-media/preferred-line-items/{line-item-id}/targeting/stores/delete": { + "post": { + "tags": [ + "Campaign" + ], + "description": "This endpoint removes one or more store ids from targeting on the specified line item. The resulting state of the store target is returned.", + "operationId": "TargetingApi_PostApi202110ExternalPreferredLineItemTargetingStoresDeleteByLineItemId", + "parameters": [ + { + "name": "line-item-id", + "in": "path", + "description": "The line item to interact with", + "required": true, + "style": "simple", + "schema": { + "type": "string" + }, + "x-nullable": false + } + ], + "requestBody": { + "description": "Store ids to remove from the target", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreIdsUpdateModel202110Request" + } + } + }, + "x-nullable": false, + "x-bodyName": "idsToRemove" + }, + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Response" + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/StoreTarget202110Response" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "ApplicationSummaryModelResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ApplicationSummaryModelResource" + }, + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Response of ApplicationSummaryModel" + }, + "ApplicationSummaryModelResource": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/ApplicationSummaryModel" + } + }, + "description": "A class that represents a ValueType in a guild compliant way" + }, + "CommonProblem": { + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "The request correlation ID this problem comes from.", + "nullable": true + }, + "traceIdentifier": { + "type": "string", + "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", + "nullable": true + }, + "type": { + "enum": [ + "unknown", + "access-control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "description": "The problem's category.", + "nullable": true + }, + "code": { + "type": "string", + "description": "A machine-readable error code, expressed as a string value.", + "nullable": true + }, + "instance": { + "type": "string", + "description": "A URI that identifies the specific occurrence of the problem.", + "nullable": true + }, + "title": { + "type": "string", + "description": "A short human-readable description of the problem type", + "nullable": true + }, + "detail": { + "type": "string", + "description": "A human-readable explanation specific to this occurrence of the problem", + "nullable": true + }, + "source": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A machine-readable structure to reference to the exact location(s) causing the error(s)", + "nullable": true + }, + "stackTrace": { + "type": "string", + "nullable": true + } + }, + "description": "Common problem object. Can be specialized as needed." + }, + "ApplicationSummaryModel": { + "type": "object", + "properties": { + "applicationId": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "name": { + "type": "string", + "nullable": true + }, + "organizationId": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "description": { + "type": "string", + "nullable": true + }, + "criteoService": { + "type": "string", + "nullable": true + } + }, + "description": "Model of ApplicationSummary" + }, + "JsonApiPageResponseOfAccount": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonError" + }, + "x-nullable": false + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonWarning" + }, + "x-nullable": false + }, + "metadata": { + "$ref": "#/components/schemas/PageMetadata" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndAccountAndAccount" + }, + "x-nullable": false + } + }, + "description": "A wrapper class to return a single page of with metadata", + "x-nullable": false + }, + "JsonApiPageResponseOfBrand": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonError" + }, + "x-nullable": false + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonWarning" + }, + "x-nullable": false + }, + "metadata": { + "$ref": "#/components/schemas/PageMetadata" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndBrandAndBrand" + }, + "x-nullable": false + } + }, + "description": "A wrapper class to return a single page of with metadata", + "x-nullable": false + }, + "JsonApiPageResponseOfRetailer": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonError" + }, + "x-nullable": false + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonWarning" + }, + "x-nullable": false + }, + "metadata": { + "$ref": "#/components/schemas/PageMetadata" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndRetailerAndRetailer" + }, + "x-nullable": false + } + }, + "description": "A wrapper class to return a single page of with metadata", + "x-nullable": false + }, + "PageMetadata": { + "required": [ + "currentPageSize", + "currentPageIndex" + ], + "type": "object", + "properties": { + "totalItemsAcrossAllPages": { + "type": "integer", + "format": "int64", + "nullable": true, + "x-nullable": true + }, + "currentPageSize": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "currentPageIndex": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "totalPages": { + "type": "integer", + "format": "int64", + "nullable": true, + "x-nullable": true + }, + "nextPage": { + "type": "string", + "x-nullable": false + }, + "previousPage": { + "type": "string", + "x-nullable": false + } + }, + "description": "Metadata related to the current request", + "x-nullable": false + }, + "CommonError": { + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", + "x-nullable": false + }, + "type": { + "enum": [ + "unknown", + "access-control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "description": "(REQUIRED) The classification of the error.", + "x-nullable": false + }, + "code": { + "type": "string", + "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case.", + "x-nullable": false + }, + "instance": { + "type": "string", + "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem.", + "x-nullable": false + }, + "title": { + "type": "string", + "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", + "x-nullable": false + }, + "detail": { + "type": "string", + "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", + "x-nullable": false + }, + "source": { + "type": "object", + "additionalProperties": { + "type": "string", + "x-nullable": false + }, + "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", + "x-nullable": false + }, + "stackTrace": { + "type": "string", + "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", + "x-nullable": false + } + }, + "description": "A JSON:API Common error structure", + "x-nullable": false + }, + "CommonWarning": { + "type": "object", + "properties": { + "traceId": { + "type": "string", + "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", + "x-nullable": false + }, + "type": { + "enum": [ + "unknown", + "access-control", + "authentication", + "authorization", + "availability", + "deprecation", + "quota", + "validation" + ], + "type": "string", + "description": "(REQUIRED) The classification of the error.", + "x-nullable": false }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/StoreTarget202110Response" - } - } - } + "code": { + "type": "string", + "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case.", + "x-nullable": false + }, + "instance": { + "type": "string", + "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem.", + "x-nullable": false + }, + "title": { + "type": "string", + "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", + "x-nullable": false + }, + "detail": { + "type": "string", + "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", + "x-nullable": false + }, + "source": { + "type": "object", + "additionalProperties": { + "type": "string", + "x-nullable": false + }, + "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", + "x-nullable": false + }, + "stackTrace": { + "type": "string", + "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", + "x-nullable": false } - } - } - } - }, - "components": { - "schemas": { - "ApplicationSummaryModelResponse": { + }, + "description": "A JSON:API Base common warning", + "x-nullable": false + }, + "JsonApiBodyWithIdOfInt64AndAccountAndAccount": { + "required": [ + "id", + "type" + ], "type": "object", "properties": { - "data": { - "$ref": "#/components/schemas/ApplicationSummaryModelResource" + "id": { + "type": "string", + "format": "long-id", + "x-nullable": false }, - "warnings": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true + "type": { + "type": "string", + "x-nullable": false }, - "errors": { - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "nullable": true, - "readOnly": true + "attributes": { + "$ref": "#/components/schemas/ExternalAccount" } }, - "description": "Response of ApplicationSummaryModel" + "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", + "x-nullable": false }, - "ApplicationSummaryModelResource": { + "JsonApiBodyWithIdOfInt64AndBrandAndBrand": { + "required": [ + "id", + "type" + ], "type": "object", "properties": { + "id": { + "type": "string", + "format": "long-id", + "x-nullable": false + }, "type": { "type": "string", - "nullable": true + "x-nullable": false }, "attributes": { - "$ref": "#/components/schemas/ApplicationSummaryModel" + "$ref": "#/components/schemas/ExternalBrand" } }, - "description": "A class that represents a ValueType in a guild compliant way" + "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", + "x-nullable": false }, - "CommonProblem": { + "JsonApiBodyWithIdOfInt64AndRetailerAndRetailer": { + "required": [ + "id", + "type" + ], "type": "object", "properties": { - "traceId": { + "id": { "type": "string", - "description": "The request correlation ID this problem comes from.", - "nullable": true + "format": "long-id", + "x-nullable": false }, - "traceIdentifier": { + "type": { "type": "string", - "description": "The request correlation ID this problem comes from. (deprecated, use traceId instead)", - "nullable": true + "x-nullable": false + }, + "attributes": { + "$ref": "#/components/schemas/ExternalRetailer" + } + }, + "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", + "x-nullable": false + }, + "ExternalAccount": { + "required": [ + "name", + "type", + "countries", + "currency", + "parentAccountLabel", + "timeZone" + ], + "type": "object", + "properties": { + "name": { + "maxLength": 510, + "minLength": 0, + "type": "string", + "x-nullable": false }, "type": { "enum": [ "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" + "supply", + "demand" ], "type": "string", - "description": "The problem's category.", - "nullable": true + "x-nullable": false }, - "code": { + "subtype": { + "enum": [ + "unknown", + "brand", + "seller" + ], "type": "string", - "description": "A machine-readable error code, expressed as a string value.", - "nullable": true + "nullable": true, + "x-nullable": true }, - "instance": { + "countries": { + "type": "array", + "items": { + "type": "string", + "x-nullable": false + }, + "x-nullable": false + }, + "currency": { "type": "string", - "description": "A URI that identifies the specific occurrence of the problem.", - "nullable": true + "x-nullable": false }, - "title": { + "parentAccountLabel": { + "maxLength": 510, + "minLength": 0, "type": "string", - "description": "A short human-readable description of the problem type", - "nullable": true + "x-nullable": false }, - "detail": { + "timeZone": { "type": "string", - "description": "A human-readable explanation specific to this occurrence of the problem", - "nullable": true + "x-nullable": false + } + }, + "description": "A Retail Media Account used to launch campaigns and line items", + "x-nullable": false + }, + "ExternalBrand": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "maxLength": 120, + "minLength": 0, + "type": "string", + "x-nullable": false + } + }, + "description": "A Retail Media Brand used to represent a collection of products sold under the same umbrella name", + "x-nullable": false + }, + "ExternalRetailer": { + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "maxLength": 100, + "type": "string", + "x-nullable": false + }, + "campaignEligibilities": { + "type": "array", + "items": { + "enum": [ + "unknown", + "auction", + "preferred" + ], + "type": "string", + "x-nullable": false + }, + "x-nullable": false + } + }, + "description": "A Retail Media Retailer used to represent a selection of products from multiple brands", + "x-nullable": false + }, + "AssetResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AssetResource" }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string" + "warnings": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" }, - "description": "A machine-readable structure to reference to the exact location(s) causing the error(s)", - "nullable": true + "nullable": true, + "readOnly": true }, - "stackTrace": { - "type": "string", - "nullable": true + "errors": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true } }, - "description": "Common problem object. Can be specialized as needed." + "description": "A class implementing the response of the Criteo API as described in API Guild Guidelines with a single entity as body" }, - "ApplicationSummaryModel": { + "AssetResource": { "type": "object", "properties": { - "applicationId": { - "type": "integer", - "format": "int32", - "nullable": true + "attributes": { + "$ref": "#/components/schemas/Asset" }, - "name": { + "id": { "type": "string", "nullable": true }, - "organizationId": { - "type": "integer", - "format": "int32", + "type": { + "type": "string", "nullable": true + } + }, + "description": "A class that represents an entity in a guild compliant way" + }, + "Asset": { + "required": [ + "fileExtension" + ], + "type": "object", + "properties": { + "fileExtension": { + "type": "string", + "description": "The file extension that is asset is representing. Example: jpg, png, gif or pdf." }, - "description": { + "fileLocation": { "type": "string", + "description": "A url pointing towards the static file the asset represents.", "nullable": true }, - "criteoService": { + "id": { "type": "string", "nullable": true } }, - "description": "Model of ApplicationSummary" + "description": "Handles pointing towards binary content that advertisers can use later on, for example in their creatives." }, - "JsonApiPageResponseOfAccount": { + "GetPageOfAudiencesByAccountIdResponse": { "required": [ - "data" + "data", + "metadata" ], "type": "object", "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RetailMediaAudience" + }, + "description": "data", + "readOnly": true + }, "errors": { "type": "array", "items": { "$ref": "#/components/schemas/CommonError" }, - "x-nullable": false + "description": "errors", + "nullable": true, + "readOnly": true }, "warnings": { "type": "array", "items": { "$ref": "#/components/schemas/CommonWarning" }, - "x-nullable": false + "description": "warnings", + "nullable": true, + "readOnly": true }, "metadata": { "$ref": "#/components/schemas/PageMetadata" - }, + } + }, + "description": "Response for page of audiences by given account" + }, + "CreateRetailMediaAudienceResponse": { + "type": "object", + "properties": { "data": { + "$ref": "#/components/schemas/CreateRetailMediaAudience" + }, + "errors": { "type": "array", "items": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndAccountAndAccount" + "$ref": "#/components/schemas/CommonError" }, - "x-nullable": false + "description": "errors", + "nullable": true, + "readOnly": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonWarning" + }, + "description": "warnings", + "nullable": true, + "readOnly": true } }, - "description": "A wrapper class to return a single page of with metadata", - "x-nullable": false + "description": "Response of CreateAudienceRequest" }, - "JsonApiPageResponseOfBrand": { + "RetailMediaAudienceV2ListResponse": { "required": [ - "data" + "data", + "metadata" ], "type": "object", "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/RetailMediaAudienceV2" + }, + "description": "data", + "readOnly": true + }, "errors": { "type": "array", "items": { - "$ref": "#/components/schemas/CommonError" + "$ref": "#/components/schemas/CommonProblem" }, - "x-nullable": false + "description": "errors", + "nullable": true, + "readOnly": true }, "warnings": { "type": "array", "items": { - "$ref": "#/components/schemas/CommonWarning" + "$ref": "#/components/schemas/CommonProblem" }, - "x-nullable": false + "description": "warnings", + "nullable": true, + "readOnly": true }, "metadata": { "$ref": "#/components/schemas/PageMetadata" + } + }, + "description": "Array of Audiences Returned as Part of Get RetailMedia Audience Request" + }, + "CommonStatusCodeResponse": { + "type": "object", + "properties": { + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "description": "errors", + "nullable": true, + "readOnly": true }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "description": "warnings", + "nullable": true, + "readOnly": true + } + }, + "description": "Commonly Returned Problem Response" + }, + "RetailMediaAudienceV2Response": { + "type": "object", + "properties": { "data": { + "$ref": "#/components/schemas/CreateRetailMediaAudienceV2" + }, + "errors": { "type": "array", "items": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndBrandAndBrand" + "$ref": "#/components/schemas/CommonProblem" }, - "x-nullable": false + "description": "errors", + "nullable": true, + "readOnly": true + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "description": "warnings", + "nullable": true, + "readOnly": true + } + }, + "description": "Response of CreateAudienceRequestV2" + }, + "CreateRetailMediaAudienceRequest": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CreateRetailMediaAudienceBody" + } + }, + "description": "Request to create an audience" + }, + "CreateRetailMediaAudienceV2Request": { + "required": [ + "data" + ], + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CreateRetailMediaAudienceV2Data" + } + }, + "description": "Request to create an audience" + }, + "RetailMediaAudience": { + "required": [ + "attributes", + "audienceType", + "id", + "type" + ], + "type": "object", + "properties": { + "audienceType": { + "enum": [ + "customerList", + "userBehavior" + ], + "type": "string", + "description": "Type of the audience", + "example": "customerList" + }, + "id": { + "type": "string", + "description": "Unique ID of this audience.", + "example": "314159" + }, + "type": { + "type": "string", + "description": "Name of the entity i.e. RetailMediaAudienceSummary", + "example": "RetailMediaAudienceSummary" + }, + "attributes": { + "$ref": "#/components/schemas/RetailMediaAudienceAttributes" + } + }, + "description": "All the information about a retail media audience" + }, + "CreateRetailMediaAudience": { + "required": [ + "attributes", + "id", + "type" + ], + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "the name of the entity type", + "example": "RetailMediaAudience" + }, + "id": { + "type": "integer", + "description": "Unique ID of this audience.", + "format": "int64", + "example": 314159 + }, + "attributes": { + "$ref": "#/components/schemas/CreateRetailMediaAudienceAttributes" } }, - "description": "A wrapper class to return a single page of with metadata", - "x-nullable": false + "description": "Retail Media audience used in audience creation" }, - "JsonApiPageResponseOfRetailer": { + "RetailMediaAudienceV2": { "required": [ - "data" + "attributes", + "id", + "type" ], "type": "object", "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "x-nullable": false - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "x-nullable": false + "type": { + "enum": [ + "customerList", + "userBehavior" + ], + "type": "string", + "description": "Type of the audience", + "example": "customerList" }, - "metadata": { - "$ref": "#/components/schemas/PageMetadata" + "id": { + "type": "string", + "description": "Unique ID of this audience.", + "example": "314159" }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndRetailerAndRetailer" - }, - "x-nullable": false + "attributes": { + "$ref": "#/components/schemas/RetailMediaAudienceV2Attributes" } }, - "description": "A wrapper class to return a single page of with metadata", - "x-nullable": false + "description": "Retail Media audience returned by the Get RetailMedia Audience" }, - "PageMetadata": { + "CreateRetailMediaAudienceV2": { "required": [ - "currentPageSize", - "currentPageIndex" + "attributes", + "id", + "type" ], "type": "object", "properties": { - "totalItemsAcrossAllPages": { - "type": "integer", - "format": "int64", - "nullable": true, - "x-nullable": true - }, - "currentPageSize": { - "type": "integer", - "format": "int32", - "x-nullable": false - }, - "currentPageIndex": { - "type": "integer", - "format": "int32", - "x-nullable": false + "type": { + "type": "string", + "description": "the name of the entity type", + "example": "RetailMediaAudience" }, - "totalPages": { + "id": { "type": "integer", + "description": "Unique ID of this audience.", "format": "int64", - "nullable": true, - "x-nullable": true - }, - "nextPage": { - "type": "string", - "x-nullable": false + "example": 314159 }, - "previousPage": { - "type": "string", - "x-nullable": false + "attributes": { + "$ref": "#/components/schemas/CreateRetailMediaAudienceV2Attributes" } }, - "description": "Metadata related to the current request", - "x-nullable": false + "description": "Retail Media audience used in audience creation" }, - "CommonError": { + "CreateRetailMediaAudienceBody": { + "required": [ + "attributes", + "type" + ], "type": "object", "properties": { - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", - "x-nullable": false - }, "type": { - "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], "type": "string", - "description": "(REQUIRED) The classification of the error.", - "x-nullable": false - }, - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case.", - "x-nullable": false + "description": "the name of the entity type", + "example": "RetailMediaAudience" }, - "instance": { + "attributes": { + "$ref": "#/components/schemas/CreateRetailMediaAudienceAttributes" + } + }, + "description": "Request body of CreateRetailMediaAudienceRequest" + }, + "CreateRetailMediaAudienceV2Data": { + "required": [ + "attributes", + "type" + ], + "type": "object", + "properties": { + "type": { "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem.", - "x-nullable": false + "description": "the name of the entity type", + "example": "RetailMediaAudience" }, - "title": { + "attributes": { + "$ref": "#/components/schemas/CreateRetailMediaAudienceV2Attributes" + } + }, + "description": "Request body of CreateRetailMediaAudienceV2Request" + }, + "RetailMediaAudienceAttributes": { + "required": [ + "name", + "retailerId" + ], + "type": "object", + "properties": { + "retailerId": { "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", - "x-nullable": false + "description": "ID of the retailer associated with this audience", + "example": "68004146450571264" }, - "detail": { + "name": { "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", - "x-nullable": false + "description": "Name of the audience.", + "example": "Test audience" }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string", - "x-nullable": false - }, - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", - "x-nullable": false + "userBehaviorDetails": { + "$ref": "#/components/schemas/UserBehaviorDetails" }, - "stackTrace": { - "type": "string", - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", - "x-nullable": false + "customerListDetails": { + "$ref": "#/components/schemas/CustomerListDetails" } }, - "description": "A JSON:API Common error structure", - "x-nullable": false + "description": "Fields of a retail media audience" }, - "CommonWarning": { + "CreateRetailMediaAudienceAttributes": { + "required": [ + "lookbackWindow", + "name", + "retailerId", + "userType" + ], "type": "object", "properties": { - "traceId": { - "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem.", - "x-nullable": false - }, - "type": { + "userType": { "enum": [ - "unknown", - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" + "viewer", + "buyer" ], "type": "string", - "description": "(REQUIRED) The classification of the error.", - "x-nullable": false - }, - "code": { - "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case.", - "x-nullable": false - }, - "instance": { - "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem.", - "x-nullable": false + "description": "Type of the user", + "example": "viewer" }, - "title": { + "lookbackWindow": { + "enum": [ + "P7D", + "P14D", + "P30D", + "P45D", + "P60D", + "P90D", + "P120D", + "P150D", + "P180D" + ], "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", - "x-nullable": false + "description": "Length of lookback window", + "example": "P7D" }, - "detail": { - "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", - "x-nullable": false + "brandIds": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "description": "The brands to target", + "nullable": true }, - "source": { - "type": "object", - "additionalProperties": { - "type": "string", - "x-nullable": false + "categoryIds": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" }, - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)", - "x-nullable": false + "description": "The categories to target", + "nullable": true }, - "stackTrace": { - "type": "string", - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology", - "x-nullable": false - } - }, - "description": "A JSON:API Base common warning", - "x-nullable": false - }, - "JsonApiBodyWithIdOfInt64AndAccountAndAccount": { - "required": [ - "id", - "type" - ], - "type": "object", - "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false + "retailerId": { + "type": "integer", + "description": "ID of the retailer associated with this audience", + "format": "int64", + "example": 6841 }, - "type": { + "name": { "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalAccount" + "description": "Name of the audience.", + "example": "Test audience" } }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false + "description": "Parameters needed to create an audience" }, - "JsonApiBodyWithIdOfInt64AndBrandAndBrand": { + "RetailMediaAudienceV2Attributes": { "required": [ - "id", - "type" + "name", + "retailerId" ], "type": "object", "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false + "retailerId": { + "type": "integer", + "description": "ID of the retailer associated with this audience", + "format": "int64", + "example": 6041 }, - "type": { + "name": { "type": "string", - "x-nullable": false + "description": "Name of the audience.", + "example": "Test audience" }, - "attributes": { - "$ref": "#/components/schemas/ExternalBrand" + "userBehaviorDetails": { + "$ref": "#/components/schemas/UserBehaviorDetailsV2" + }, + "customerListDetails": { + "$ref": "#/components/schemas/CustomerListDetails" } }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false + "description": "Properties of the returned Audience" }, - "JsonApiBodyWithIdOfInt64AndRetailerAndRetailer": { + "CreateRetailMediaAudienceV2Attributes": { "required": [ - "id", - "type" + "name", + "retailerId", + "userBehaviorDetails" ], "type": "object", "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false + "retailerId": { + "type": "integer", + "description": "ID of the retailer associated with this audience", + "format": "int64", + "example": 6041 }, - "type": { - "type": "string", - "x-nullable": false + "userBehaviorDetails": { + "$ref": "#/components/schemas/UserBehaviorDetailsV2" }, - "attributes": { - "$ref": "#/components/schemas/ExternalRetailer" + "name": { + "type": "string", + "description": "Name of the audience.", + "example": "Test audience" } }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", - "x-nullable": false + "description": "Parameters needed to create an audience" }, - "ExternalAccount": { + "UserBehaviorDetails": { "required": [ - "name", - "type", - "countries", - "currency", - "parentAccountLabel", - "timeZone" + "lookbackWindow", + "targetIds", + "targetType", + "userType" ], "type": "object", "properties": { - "name": { - "maxLength": 510, - "minLength": 0, - "type": "string", - "x-nullable": false - }, - "type": { - "enum": [ - "unknown", - "supply", - "demand" - ], - "type": "string", - "x-nullable": false - }, - "subtype": { + "targetType": { "enum": [ - "unknown", "brand", - "seller" + "category" ], "type": "string", - "nullable": true, - "x-nullable": true + "description": "Type of target", + "example": "category" }, - "countries": { + "targetIds": { "type": "array", "items": { - "type": "string", - "x-nullable": false + "type": "string" }, - "x-nullable": false - }, - "currency": { - "type": "string", - "x-nullable": false + "description": "ist of ids for the target type" }, - "parentAccountLabel": { - "maxLength": 510, - "minLength": 0, + "lookbackWindow": { + "enum": [ + "P7D", + "P14D", + "P30D", + "P45D", + "P60D", + "P90D", + "P120D", + "P150D", + "P180D" + ], "type": "string", - "x-nullable": false + "description": "Length of lookback window", + "example": "P7D" }, - "timeZone": { + "userType": { + "enum": [ + "viewer", + "buyer" + ], "type": "string", - "x-nullable": false + "description": "Type of the user", + "example": "viewer" } }, - "description": "A Retail Media Account used to launch campaigns and line items", - "x-nullable": false + "description": "Details about a user behavior retail media audience" }, - "ExternalBrand": { + "CustomerListDetails": { "required": [ - "name" + "size" ], "type": "object", "properties": { - "name": { - "maxLength": 120, - "minLength": 0, + "size": { "type": "string", - "x-nullable": false + "description": "Number of users in the customer list audience.", + "example": "34212" } }, - "description": "A Retail Media Brand used to represent a collection of products sold under the same umbrella name", - "x-nullable": false + "description": "Details of a customer list audience" }, - "ExternalRetailer": { + "UserBehaviorDetailsV2": { "required": [ - "name" + "inclusiveSegment" ], "type": "object", "properties": { - "name": { - "maxLength": 100, + "inclusiveSegment": { + "$ref": "#/components/schemas/CreateUserBehaviorSegmentV2" + }, + "exclusiveSegment": { + "$ref": "#/components/schemas/CreateUserBehaviorSegmentV2" + } + }, + "description": "Details about a user behavior retail media audience" + }, + "CreateUserBehaviorSegmentV2": { + "required": [ + "lookbackWindow", + "userAction" + ], + "type": "object", + "properties": { + "userAction": { + "enum": [ + "buy", + "view", + "addToCart" + ], "type": "string", - "x-nullable": false + "description": "Type of shopper activity used to generate the audience.", + "example": "buy" }, - "campaignEligibilities": { + "lookbackWindow": { + "enum": [ + "P7D", + "P14D", + "P30D", + "P45D", + "P60D", + "P90D", + "P120D", + "P150D", + "P180D" + ], + "type": "string", + "description": "Length of lookback window", + "example": "P7D" + }, + "categoryIds": { "type": "array", "items": { - "enum": [ - "unknown", - "auction", - "preferred" - ], - "type": "string", - "x-nullable": false + "type": "integer", + "format": "int32" }, - "x-nullable": false + "description": "The categories to target", + "nullable": true + }, + "brandIds": { + "type": "array", + "items": { + "type": "integer", + "format": "int64" + }, + "description": "The brands to target", + "nullable": true + }, + "minPrice": { + "type": "number", + "description": "The min price of targeted skus.", + "format": "double", + "nullable": true, + "readOnly": true + }, + "maxPrice": { + "type": "number", + "description": "The max price of targeted skus.", + "format": "double", + "nullable": true, + "readOnly": true } }, - "description": "A Retail Media Retailer used to represent a selection of products from multiple brands", - "x-nullable": false + "description": "Inclusive and exclusive segments of a user behavior audience " }, - "AssetResponse": { + "RetailMediaExternalv1KeywordsModelResponse": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/AssetResource" + "$ref": "#/components/schemas/RetailMediaExternalv1KeywordsModelResource" }, - "warnings": { + "errors": { "uniqueItems": false, "type": "array", "items": { - "$ref": "#/components/schemas/CommonProblem" + "$ref": "#/components/schemas/RetailMediaExternalv1ProblemDetails" }, "nullable": true, "readOnly": true }, - "errors": { + "warnings": { "uniqueItems": false, "type": "array", "items": { - "$ref": "#/components/schemas/CommonProblem" + "$ref": "#/components/schemas/RetailMediaExternalv1ProblemDetails" }, "nullable": true, "readOnly": true } }, - "description": "A class implementing the response of the Criteo API as described in API Guild Guidelines with a single entity as body" - }, - "AssetResource": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/Asset" - }, - "id": { - "type": "string", - "nullable": true - }, - "type": { - "type": "string", - "nullable": true - } - }, - "description": "A class that represents an entity in a guild compliant way" - }, - "Asset": { - "required": [ - "fileExtension" - ], - "type": "object", - "properties": { - "fileExtension": { - "type": "string", - "description": "The file extension that is asset is representing. Example: jpg, png, gif or pdf." - }, - "fileLocation": { - "type": "string", - "description": "A url pointing towards the static file the asset represents.", - "nullable": true - }, - "id": { - "type": "string", - "nullable": true - } - }, - "description": "Handles pointing towards binary content that advertisers can use later on, for example in their creatives." + "description": "Response object containing keywords associated with a line item" }, - "GetPageOfAudiencesByAccountIdResponse": { - "required": [ - "data", - "metadata" - ], + "RetailMediaExternalv1ResourceOutcome": { "type": "object", "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/RetailMediaAudience" - }, - "description": "data", - "readOnly": true - }, "errors": { + "uniqueItems": false, "type": "array", "items": { - "$ref": "#/components/schemas/CommonError" + "$ref": "#/components/schemas/RetailMediaExternalv1ProblemDetails" }, - "description": "errors", "nullable": true, "readOnly": true }, "warnings": { + "uniqueItems": false, "type": "array", "items": { - "$ref": "#/components/schemas/CommonWarning" + "$ref": "#/components/schemas/RetailMediaExternalv1ProblemDetails" }, - "description": "warnings", "nullable": true, "readOnly": true - }, - "metadata": { - "$ref": "#/components/schemas/PageMetadata" } }, - "description": "Response for page of audiences by given account" + "description": "A response object containing errors or warnings if required" }, - "CreateRetailMediaAudienceResponse": { + "RetailMediaExternalv1ProposalStatusModelResponse": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/CreateRetailMediaAudience" + "$ref": "#/components/schemas/RetailMediaExternalv1ProposalStatusModelResource" }, "errors": { + "uniqueItems": false, "type": "array", "items": { - "$ref": "#/components/schemas/CommonError" + "$ref": "#/components/schemas/RetailMediaExternalv1ProblemDetails" }, - "description": "errors", "nullable": true, "readOnly": true }, "warnings": { + "uniqueItems": false, "type": "array", "items": { - "$ref": "#/components/schemas/CommonWarning" + "$ref": "#/components/schemas/RetailMediaExternalv1ProblemDetails" }, - "description": "warnings", "nullable": true, "readOnly": true } }, - "description": "Response of CreateAudienceRequest" + "description": "Wrapper for the proposal status resource" }, - "CreateRetailMediaAudienceRequest": { - "required": [ - "data" - ], + "RetailMediaExternalv1AddRemoveKeywordsModelRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceBody" + "$ref": "#/components/schemas/RetailMediaExternalv1AddRemoveKeywordsModelResource" } }, - "description": "Request to create an audience" + "description": "Request object to add or remove keywords from a line item" }, - "RetailMediaAudience": { + "RetailMediaExternalv1SetBidsModelRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/RetailMediaExternalv1SetBidsModelResource" + } + }, + "description": "Request to set bid overrides for specified keywords on a line item" + }, + "RetailMediaExternalv1KeywordsModelResource": { "required": [ - "attributes", - "audienceType", - "id", "type" ], "type": "object", "properties": { - "audienceType": { - "enum": [ - "customerList", - "userBehavior" - ], + "id": { "type": "string", - "description": "Type of the audience", - "example": "customerList" + "nullable": true }, - "id": { + "type": { + "type": "string" + }, + "attributes": { + "$ref": "#/components/schemas/RetailMediaExternalv1KeywordsModel" + } + }, + "description": "Resource wrapper of associated keywords with a line item" + }, + "RetailMediaExternalv1ProblemDetails": { + "type": "object", + "properties": { + "traceIdentifier": { "type": "string", - "description": "Unique ID of this audience.", - "example": "314159" + "nullable": true + }, + "code": { + "type": "string", + "nullable": true + }, + "source": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "nullable": true + }, + "stackTrace": { + "type": "string", + "nullable": true }, "type": { "type": "string", - "description": "Name of the entity i.e. RetailMediaAudienceSummary", - "example": "RetailMediaAudienceSummary" + "nullable": true }, - "attributes": { - "$ref": "#/components/schemas/RetailMediaAudienceAttributes" + "title": { + "type": "string", + "nullable": true + }, + "status": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "detail": { + "type": "string", + "nullable": true + }, + "instance": { + "type": "string", + "nullable": true } }, - "description": "All the information about a retail media audience" + "additionalProperties": { + "type": "object" + }, + "description": "Datamodel for common errors and warnings" }, - "CreateRetailMediaAudience": { + "RetailMediaExternalv1ProposalStatusModelResource": { "required": [ - "attributes", - "id", "type" ], "type": "object", "properties": { - "type": { + "id": { "type": "string", - "description": "the name of the entity type", - "example": "RetailMediaAudience" + "nullable": true }, - "id": { - "type": "integer", - "description": "Unique ID of this audience.", - "format": "int64", - "example": 314159 + "type": { + "type": "string" }, "attributes": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceAttributes" + "$ref": "#/components/schemas/RetailMediaExternalv1ProposalStatusModel" } }, - "description": "Retail Media audience used in audience creation" + "description": "Wrapper for the proposal status" }, - "CreateRetailMediaAudienceBody": { + "RetailMediaExternalv1AddRemoveKeywordsModelResource": { "required": [ - "attributes", "type" ], "type": "object", "properties": { - "type": { + "id": { "type": "string", - "description": "the name of the entity type", - "example": "RetailMediaAudience" + "nullable": true + }, + "type": { + "type": "string" }, "attributes": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceAttributes" + "$ref": "#/components/schemas/RetailMediaExternalv1AddRemoveKeywordsModel" } }, - "description": "Request body of CreateRetailMediaAudienceRequest" + "description": "Resource wrapper the keyword add and remove datamodel" }, - "RetailMediaAudienceAttributes": { + "RetailMediaExternalv1SetBidsModelResource": { "required": [ - "name", - "retailerId" + "type" ], "type": "object", "properties": { - "retailerId": { + "id": { "type": "string", - "description": "ID of the retailer associated with this audience", - "example": "68004146450571264" + "nullable": true }, - "name": { - "type": "string", - "description": "Name of the audience.", - "example": "Test audience" + "type": { + "type": "string" }, - "userBehaviorDetails": { - "$ref": "#/components/schemas/UserBehaviorDetails" + "attributes": { + "$ref": "#/components/schemas/RetailMediaExternalv1SetBidsModel" + } + }, + "description": "Wrapper of the Set Bids datamodel" + }, + "RetailMediaExternalv1KeywordsModel": { + "type": "object", + "properties": { + "keywords": { + "$ref": "#/components/schemas/RetailMediaExternalv1KeywordDataModel" }, - "customerListDetails": { - "$ref": "#/components/schemas/CustomerListDetails" + "rank": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "nullable": true } }, - "description": "Fields of a retail media audience" + "description": "Datamodel representing keywords associated with a line item" }, - "CreateRetailMediaAudienceAttributes": { + "RetailMediaExternalv1ProposalStatusModel": { "required": [ - "lookbackWindow", - "name", - "retailerId", - "userType" + "negotiationState", + "bookingStatus", + "runnableStatus" ], "type": "object", "properties": { - "userType": { + "negotiationState": { "enum": [ - "viewer", - "buyer" + "Invalid", + "Modified", + "Submitted", + "Reviewed", + "Approved" ], - "type": "string", - "description": "Type of the user", - "example": "viewer" + "type": "string" }, - "lookbackWindow": { + "bookingStatus": { "enum": [ - "P7D", - "P14D", - "P30D", - "P45D", - "P60D", - "P90D", - "P120D", - "P150D", - "P180D" + "NotSubmitted", + "Submitted", + "Rejected", + "Approved" + ], + "type": "string" + }, + "runnableStatus": { + "enum": [ + "NotSubmitted", + "Submitted", + "Rejected", + "Approved" ], + "type": "string" + }, + "comment": { "type": "string", - "description": "Length of lookback window", - "example": "P7D" + "nullable": true }, - "brandIds": { + "createdAt": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "updatedAt": { + "type": "string", + "format": "date-time", + "nullable": true + } + }, + "description": "The proposal status includes the state of the proposal, the status of the booking and approval, as well as any comments explaining why it might have been rejected." + }, + "RetailMediaExternalv1AddRemoveKeywordsModel": { + "type": "object", + "properties": { + "keywords": { + "uniqueItems": false, "type": "array", "items": { - "type": "integer", - "format": "int64" + "$ref": "#/components/schemas/RetailMediaExternalv1AddRemoveKeywordModel" }, - "description": "The brands to target", "nullable": true - }, - "categoryIds": { + } + }, + "description": "Data model containing keywords to be added or removed from a line item" + }, + "RetailMediaExternalv1SetBidsModel": { + "type": "object", + "properties": { + "keywords": { + "uniqueItems": false, "type": "array", "items": { - "type": "integer", - "format": "int32" + "$ref": "#/components/schemas/RetailMediaExternalv1SetBidModel" }, - "description": "The categories to target", "nullable": true - }, - "retailerId": { - "type": "integer", - "description": "ID of the retailer associated with this audience", - "format": "int64", - "example": 6841 - }, - "name": { - "type": "string", - "description": "Name of the audience.", - "example": "Test audience" } }, - "description": "Parameters needed to create an audience" + "description": "Data model containing keywords and bid overrides to associate to them" }, - "UserBehaviorDetails": { - "required": [ - "lookbackWindow", - "targetIds", - "targetType", - "userType" - ], + "RetailMediaExternalv1KeywordDataModel": { "type": "object", "properties": { - "targetType": { + "reviewState": { "enum": [ - "brand", - "category" + "InReview", + "Recommended", + "Approved", + "AutoApproved", + "Rejected", + "AutoRejected" ], "type": "string", - "description": "Type of target", - "example": "category" - }, - "targetIds": { - "type": "array", - "items": { - "type": "string" - }, - "description": "ist of ids for the target type" + "nullable": true }, - "lookbackWindow": { + "matchType": { "enum": [ - "P7D", - "P14D", - "P30D", - "P45D", - "P60D", - "P90D", - "P120D", - "P150D", - "P180D" + "PositiveExactMatch", + "NegativeExactMatch", + "NegativeBroadMatch" ], "type": "string", - "description": "Length of lookback window", - "example": "P7D" + "nullable": true }, - "userType": { + "bid": { + "type": "number", + "format": "double", + "nullable": true + }, + "inputKeywords": { + "$ref": "#/components/schemas/RetailMediaExternalv1InputKeywordsModel" + }, + "createdAt": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "updatedAt": { + "type": "string", + "format": "date-time", + "nullable": true + } + }, + "description": "Details for a specific keyword" + }, + "RetailMediaExternalv1AddRemoveKeywordModel": { + "type": "object", + "properties": { + "phrase": { + "maxLength": 255, + "minLength": 0, + "type": "string", + "nullable": true + }, + "matchType": { "enum": [ - "viewer", - "buyer" + "PositiveExactMatch", + "NegativeExactMatch", + "NegativeBroadMatch" ], "type": "string", - "description": "Type of the user", - "example": "viewer" + "nullable": true + }, + "isDeleted": { + "type": "boolean", + "nullable": true } }, - "description": "Details about a user behavior retail media audience" + "description": "A single keyword to be added or removed" }, - "CustomerListDetails": { - "required": [ - "size" - ], + "RetailMediaExternalv1SetBidModel": { "type": "object", "properties": { - "size": { + "phrase": { + "maxLength": 255, + "minLength": 0, "type": "string", - "description": "Number of users in the customer list audience.", - "example": "34212" + "nullable": true + }, + "bid": { + "type": "number", + "format": "double", + "nullable": true } }, - "description": "Details of a customer list audience" + "description": "A single keyword and associated bid override" + }, + "RetailMediaExternalv1InputKeywordsModel": { + "type": "object", + "properties": { + "negativeBroad": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "nullable": true + }, + "negativeExact": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "nullable": true + }, + "positiveExact": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "nullable": true + } + }, + "description": "Input values associated with a keyword" }, "Creative202110ListResponse": { "type": "object", @@ -4204,11 +6182,11 @@ "description": "Data model for a list of response resources", "x-nullable": false }, - "Creative202207Response": { + "Creative202210Response": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ResourceOfCreative202207" + "$ref": "#/components/schemas/ResourceOfCreative202210" }, "warnings": { "type": "array", @@ -4230,6 +6208,36 @@ "description": "Data model for response resource", "x-nullable": false }, + "Creative202210ListResponse": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceOfCreative202210" + }, + "x-nullable": false + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "readOnly": true, + "x-nullable": false + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "Data model for a list of response resources", + "x-nullable": false + }, "JsonApiSingleResponseOfCatalogStatus": { "required": [ "data" @@ -4570,11 +6578,11 @@ "description": "Data model for common error or warning", "x-nullable": false }, - "ResourceOfCreative202207": { + "ResourceOfCreative202210": { "type": "object", "properties": { "attributes": { - "$ref": "#/components/schemas/Creative202207" + "$ref": "#/components/schemas/Creative202210" }, "id": { "type": "string", @@ -4750,11 +6758,14 @@ "description": "Metadata and usage info of a preferred deals creative", "x-nullable": false }, - "Creative202207": { + "Creative202210": { "required": [ "name", "status", "retailerId", + "templateId", + "templateName", + "formatId", "creativeFormatType", "environments", "templateVariableValues" @@ -4790,6 +6801,23 @@ "format": "int32", "x-nullable": false }, + "templateId": { + "type": "integer", + "description": "Template Id", + "format": "int32", + "x-nullable": false + }, + "templateName": { + "type": "string", + "description": "Template Name", + "x-nullable": false + }, + "formatId": { + "type": "integer", + "description": "Format Id", + "format": "int32", + "x-nullable": false + }, "associatedLineItemIds": { "type": "array", "items": { @@ -4825,13 +6853,7 @@ "environments": { "type": "array", "items": { - "enum": [ - "Web", - "Mobile", - "App" - ], - "type": "string", - "x-nullable": false + "$ref": "#/components/schemas/PageTypeEnvironment" }, "description": "Environment type (e.g. mobile, web, app)", "x-nullable": false @@ -5124,6 +7146,47 @@ "description": "A request for a catalog under the specified format. Currently \"json-newline\" is supported.", "x-nullable": false }, + "PageTypeEnvironment": { + "type": "object", + "properties": { + "pageType": { + "enum": [ + "Search", + "Home", + "Browse", + "Checkout", + "Category", + "ProductDetail", + "Confirmation", + "Merchandising", + "Deals" + ], + "type": "string", + "description": "Creative PageType", + "x-nullable": false + }, + "environments": { + "type": "array", + "items": { + "enum": [ + "Web", + "Mobile", + "App", + "Lockout", + "Mixed", + "iOS", + "Android" + ], + "type": "string", + "x-nullable": false + }, + "description": "List of environments per PageType", + "x-nullable": false + } + }, + "description": "The PageType-Environment Tuples for creatives", + "x-nullable": false + }, "Section": { "required": [ "title", @@ -5280,315 +7343,713 @@ "x-nullable": true } }, - "description": "Specification of a file variable", - "x-nullable": false + "description": "Specification of a file variable", + "x-nullable": false + }, + "ChoiceOption": { + "required": [ + "dependentVariables", + "id" + ], + "type": "object", + "properties": { + "dependentVariables": { + "type": "array", + "items": { + "$ref": "#/components/schemas/TemplateVariable" + }, + "description": "Template variables unblocked when the option is chosen", + "x-nullable": false + }, + "id": { + "type": "string", + "description": "The id of the option", + "x-nullable": false + } + }, + "description": "An option given in a choice", + "x-nullable": false + }, + "AsyncReportResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/StatusResponseResource" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "Async Report response format" }, - "ChoiceOption": { - "required": [ - "dependentVariables", - "id" - ], + "ReportOutcome": { "type": "object", "properties": { - "dependentVariables": { + "warnings": { "type": "array", "items": { - "$ref": "#/components/schemas/TemplateVariable" + "$ref": "#/components/schemas/CommonProblem" }, - "description": "Template variables unblocked when the option is chosen", - "x-nullable": false + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "description": "The outcome of an API call." + }, + "AsyncCampaignsReportRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AsyncCampaignsReportResource" + } + }, + "description": "A top-level object that encapsulates a Criteo API request for a single value" + }, + "AsyncLineItemsReportRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AsyncLineItemsReportResource" + } + }, + "description": "A top-level object that encapsulates a Criteo API request for a single value" + }, + "AsyncRevenueReportRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/AsyncRevenueReportResource" + } + }, + "description": "A top-level object that encapsulates a Criteo API request for a single value" + }, + "StatusResponseResource": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/StatusResponse" }, "id": { "type": "string", - "description": "The id of the option", - "x-nullable": false + "nullable": true + }, + "type": { + "type": "string", + "nullable": true } }, - "description": "An option given in a choice", - "x-nullable": false + "description": "A class that represents a domain entity exposed by an API" }, - "EnvelopeReportStatus": { - "required": [ - "data" - ], + "AsyncCampaignsReportResource": { "type": "object", "properties": { - "data": { - "$ref": "#/components/schemas/ReportStatus" + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AsyncCampaignsReport" } }, - "description": "Standard response envelope" + "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "BadRequest": { + "AsyncLineItemsReportResource": { "type": "object", "properties": { - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/Error" - }, - "description": "The errors", + "type": { + "type": "string", "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AsyncLineItemsReport" } }, - "description": "Bad request errors" + "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "EnvelopeReportRequest": { - "required": [ - "data" - ], + "AsyncRevenueReportResource": { "type": "object", "properties": { - "data": { - "$ref": "#/components/schemas/ReportRequest" + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/AsyncRevenueReport" + } + }, + "description": "A top-level object that encapsulates a Criteo API response for a single value" + }, + "StatusResponse": { + "type": "object", + "properties": { + "status": { + "enum": [ + "pending", + "success", + "failure", + "expired" + ], + "type": "string", + "nullable": true + }, + "rowCount": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "fileSizeBytes": { + "type": "integer", + "format": "int32", + "nullable": true + }, + "md5CheckSum": { + "type": "string", + "nullable": true + }, + "createdAt": { + "type": "string", + "nullable": true + }, + "expiresAt": { + "type": "string", + "nullable": true + }, + "message": { + "type": "string", + "nullable": true + }, + "id": { + "type": "string", + "nullable": true } }, - "description": "Standard response envelope" + "description": "Status of an async report request", + "x-criteo-canonical": { + "infoType": "entity" + } }, - "ReportStatus": { + "AsyncCampaignsReport": { "required": [ - "type", - "id", - "attributes" + "endDate", + "startDate" ], "type": "object", "properties": { - "attributes": { - "$ref": "#/components/schemas/ReportStatusAttributes" + "metrics": { + "type": "array", + "items": { + "enum": [ + "impressions", + "clicks", + "spend", + "attributedSales", + "attributedUnits", + "attributedOrders", + "ctr", + "cpc", + "cpo", + "cpm", + "roas", + "uniqueVisitors", + "frequency", + "assistedUnits", + "assistedSales" + ], + "type": "string" + }, + "description": "List of metrics to report on", + "nullable": true + }, + "dimensions": { + "type": "array", + "items": { + "enum": [ + "date", + "hour", + "campaignId", + "campaignName", + "campaignTypeName", + "advProductCategory", + "advProductId", + "advProductName", + "brandId", + "brandName", + "pageTypeName", + "environment", + "keyword", + "salesChannel", + "retailerId", + "retailerName" + ], + "type": "string" + }, + "description": "List of dimensions to report on", + "nullable": true + }, + "campaignType": { + "enum": [ + "sponsoredProducts", + "onSiteDisplays" + ], + "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", + "nullable": true + }, + "salesChannel": { + "enum": [ + "offline", + "online" + ], + "type": "string", + "description": "Filter on specific sales channel: offline or online", + "nullable": true + }, + "format": { + "enum": [ + "json", + "json-compact", + "json-newline", + "csv" + ], + "type": "string", + "description": "Format of the output", + "default": "json-compact", + "nullable": true + }, + "reportType": { + "enum": [ + "summary", + "pageType", + "keyword", + "productCategory", + "product", + "attributedTransactions", + "environment", + "servedCategory" + ], + "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", + "nullable": true + }, + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "Click attribution window", + "default": "none", + "nullable": true + }, + "viewAttributionWindow": { + "enum": [ + "1D", + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "View attribution window", + "default": "none", + "nullable": true + }, + "ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Ids to report on", + "nullable": true }, "id": { "type": "string", - "description": "The reportId" + "description": "Id to report on", + "nullable": true }, - "type": { + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { "type": "string", - "description": "Always \"RetailMediaReportStatus\"" + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", + "nullable": true } }, - "description": "Report Status" + "description": "Campaign report body request" }, - "Error": { + "AsyncLineItemsReport": { "required": [ - "code", - "type", - "traceId", - "instance" + "endDate", + "startDate" ], "type": "object", "properties": { - "code": { + "metrics": { + "type": "array", + "items": { + "enum": [ + "impressions", + "clicks", + "spend", + "attributedSales", + "attributedUnits", + "attributedOrders", + "ctr", + "cpc", + "cpo", + "roas", + "assistedUnits", + "assistedSales", + "uniqueVisitors", + "frequency" + ], + "type": "string" + }, + "description": "List of metrics to report on", + "nullable": true + }, + "dimensions": { + "type": "array", + "items": { + "enum": [ + "date", + "hour", + "campaignId", + "campaignName", + "campaignTypeName", + "advProductCategory", + "advProductId", + "advProductName", + "brandId", + "brandName", + "lineItemId", + "lineItemName", + "retailerId", + "retailerName", + "keyword", + "pageTypeName", + "salesChannel", + "environment" + ], + "type": "string" + }, + "description": "List of dimensions to report on", + "nullable": true + }, + "campaignType": { + "enum": [ + "sponsoredProducts", + "onSiteDisplays" + ], "type": "string", - "description": "(REQUIRED) A machine-readable unique error code, expressed as a string value. The format used must be kabab-case." + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", + "nullable": true }, - "detail": { + "salesChannel": { + "enum": [ + "offline", + "online" + ], "type": "string", - "description": "(RECOMMENDED) A human-readable explanation specific to this occurrence of the problem.", + "description": "Filter on specific sales channel: offline or online", + "nullable": true + }, + "format": { + "enum": [ + "json", + "json-compact", + "json-newline", + "csv" + ], + "type": "string", + "description": "Format of the output", + "default": "json-compact", + "nullable": true + }, + "reportType": { + "enum": [ + "summary", + "pageType", + "keyword", + "productCategory", + "product", + "attributedTransactions", + "environment", + "servedCategory" + ], + "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", "nullable": true }, - "instance": { + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], "type": "string", - "description": "(REQUIRED) A URI reference that identifies the specific occurrence of the problem." + "description": "Click attribution window", + "default": "none", + "nullable": true }, - "source": { - "$ref": "#/components/schemas/MapString" + "viewAttributionWindow": { + "enum": [ + "1D", + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "View attribution window", + "default": "none", + "nullable": true }, - "stackTrace": { + "ids": { "type": "array", "items": { "type": "string" }, - "description": "(NEVER IN PRODUCTION) A human-readable stacktrace produced by the implementation technology e.g. .Net, Scala, etc", + "description": "Ids to report on", "nullable": true }, - "title": { + "id": { "type": "string", - "description": "(RECOMMENDED) A short, human-readable summary of the problem type.", + "description": "Id to report on", "nullable": true }, - "traceId": { + "startDate": { "type": "string", - "description": "(REQUIRED) The Correlation ID provided by the Gateway. It is also a unique identifier for this particular occurrence of the problem." + "description": "Start date", + "format": "date-time" }, - "type": { - "enum": [ - "access-control", - "authentication", - "authorization", - "availability", - "deprecation", - "quota", - "validation" - ], + "endDate": { "type": "string", - "description": "Type should be: \"validation\", \"unavailable, \"violation\", \"permission\", ..." - } - }, - "description": "Error" - }, - "ReportRequest": { - "required": [ - "type", - "attributes" - ], - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ReportRequestAttributes" + "description": "End date", + "format": "date-time" }, - "type": { + "timezone": { "type": "string", - "description": "Always \"RetailMediaReportRequest\"" + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", + "nullable": true } }, - "description": "Report Request" + "description": "Line Items report body request" }, - "ReportStatusAttributes": { + "AsyncRevenueReport": { "required": [ - "status" + "endDate", + "startDate" ], "type": "object", "properties": { - "createdAt": { + "reportType": { + "enum": [ + "advertiser", + "environment", + "pageType", + "productCategory", + "brand" + ], "type": "string", - "description": "Timestamp when the report started to execute", - "format": "date-time", + "description": "Type of report", "nullable": true }, - "expiresAt": { + "revenueType": { + "enum": [ + "auction", + "preferred" + ], "type": "string", - "description": "Timestamp when the cached report will expire", - "format": "date-time", + "description": "Type of revenue", "nullable": true }, - "fileSizeBytes": { - "type": "integer", - "description": "Total size of file, only populated on success", - "format": "int64", + "ids": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of campaign Ids to filter", "nullable": true }, - "md5Checksum": { + "id": { "type": "string", - "description": "The MD5 checksum of the content, only populated on success", + "description": "List of campaign Id to filter", "nullable": true }, - "message": { - "type": "string", - "description": "Failure message, only populated on failure", + "metrics": { + "type": "array", + "items": { + "enum": [ + "clicks", + "spend", + "attributedOrders", + "attributedSales", + "attributedUnits", + "cpc", + "cpo", + "roas", + "openAuctionRevenue", + "preferredDealsRevenue", + "avgCpc", + "avgCpm" + ], + "type": "string" + }, + "description": "List of Metrics to report on", "nullable": true }, - "rowCount": { - "type": "integer", - "description": "Rows of data in report, only populated on success", - "format": "int64", + "dimensions": { + "type": "array", + "items": { + "enum": [ + "date", + "campaignId", + "campaignName", + "accountId", + "accountName", + "environment", + "advProductCategory", + "brandId", + "brandName", + "pageTypeName", + "advProductName", + "advProductGtin", + "advProductMpn", + "advProductId" + ], + "type": "string" + }, + "description": "List of dimensions to report on", "nullable": true }, - "status": { + "format": { "enum": [ - "pending", - "success", - "failure", - "expired" + "json", + "json-compact", + "json-newline", + "csv" ], "type": "string", - "description": "One of \"pending\", \"success\", \"failure\", or \"expired\"" - } - }, - "description": "Report Status Attributes" - }, - "MapString": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "(OPTIONAL) A machine-readable structure to reference to the exact location(s) causing the error(s)." - }, - "ReportRequestAttributes": { - "required": [ - "reportType", - "startDate", - "endDate" - ], - "type": "object", - "properties": { - "clickAttributionWindow": { + "description": "Format of the output", + "nullable": true + }, + "soldBy": { "enum": [ - "7D", - "14D", - "30D" + "directSold", + "indirectSold", + "privateMarket" ], "type": "string", - "description": "Defaults to value from campaign or one of \"7D\", \"14D\", or \"30D\". If specified, viewAttributionWindow must also be specified", + "description": "Filter on the seller: indirect, direct or private market", "nullable": true }, - "endDate": { - "type": "string", - "description": "YYYY-MM-DD, must not be before startDate and not more than 100 days later", - "format": "date" - }, - "format": { + "campaignSubType": { "enum": [ - "csv", - "json", - "json-compact", - "json-newline" + "auctionAndPreferred", + "lockout" ], "type": "string", - "description": "One of \"json\" (default),\"json-compact\",\"json-newline\" or \"csv\"", - "default": "json", + "description": "Filter on campaign subType : Auction and Preferred Deals or Lockout campaign", "nullable": true }, - "id": { + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], "type": "string", - "description": "The id of the campaign or line item. Either 'id' or 'ids' must be specified, but not both", + "description": "Click attribution window", + "default": "none", "nullable": true }, - "ids": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The ids of the campaigns or line items. Either 'id' or 'ids' must be specified, but not both", + "viewAttributionWindow": { + "enum": [ + "1D", + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "View attribution window", + "default": "none", "nullable": true }, - "reportType": { + "campaignType": { "enum": [ - "summary", - "keyword", - "pageType", - "productCategory", - "product", - "attributedTransactions" + "sponsoredProducts", + "onSiteDisplays" ], "type": "string", - "description": "One of \"summary\", \"keyword\", \"pageType\", \"productCategory\", \"product\", or \"attributedTransactions\"" + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", + "nullable": true }, - "revenueType": { + "salesChannel": { + "enum": [ + "offline", + "online" + ], "type": "string", + "description": "Filter on specific sales channel: offline or online", "nullable": true }, "startDate": { "type": "string", - "description": "YYYY-MM-DD", - "format": "date" + "description": "Start date", + "format": "date-time" }, - "timeZone": { + "endDate": { "type": "string", - "nullable": true + "description": "End date", + "format": "date-time" }, - "viewAttributionWindow": { - "enum": [ - "none", - "1D", - "7D", - "14D", - "30D" - ], + "timezone": { "type": "string", - "description": "Defaults to value from campaign or one of \"none\", \"1D\", \"7D\", \"14D\", or \"30D\". If specified, must be less than clickAttributionWindow, which must also be specified.", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", "nullable": true } }, - "description": "Report Request Attributes" + "description": "Async Revenue report body request" }, "Balance202110PagedListResponse": { "type": "object", @@ -5656,8 +8117,68 @@ "description": "Data model for a paged list of response resources", "x-nullable": false }, - "JsonApiPageResponseOfCampaign": { + "BalanceResponsePagedListResponse": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/PageMetadata" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceOfBalanceResponse" + }, + "x-nullable": false + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "readOnly": true, + "x-nullable": false + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "Data model for a paged list of response resources", + "x-nullable": false + }, + "BalanceResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ResourceOfBalanceResponse" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "readOnly": true, + "x-nullable": false + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "Data model for response resource", + "x-nullable": false + }, + "JsonApiPageResponseOfCampaignV202301": { "required": [ + "metadata", "data" ], "type": "object", @@ -5682,7 +8203,7 @@ "data": { "type": "array", "items": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndCampaignAndCampaign" + "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndCampaignV202301AndCampaignV202301" }, "x-nullable": false } @@ -5690,14 +8211,14 @@ "description": "A wrapper class to return a single page of with metadata", "x-nullable": false }, - "JsonApiSingleResponseOfCampaign": { + "JsonApiSingleResponseOfCampaignV202301": { "required": [ "data" ], "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndCampaignAndCampaign" + "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndCampaignV202301AndCampaignV202301" }, "errors": { "type": "array", @@ -5835,18 +8356,44 @@ "description": "Data model for a paged list of response resources", "x-nullable": false }, - "PreferredLineItem202110PagedListResponse": { + "PreferredLineItem202110PagedListResponse": { + "type": "object", + "properties": { + "metadata": { + "$ref": "#/components/schemas/PageMetadata" + }, + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResourceOfPreferredLineItem202110" + }, + "x-nullable": false + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "readOnly": true, + "x-nullable": false + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProblemDetails" + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "Data model for a paged list of response resources", + "x-nullable": false + }, + "PreferredLineItem202110Response": { "type": "object", "properties": { - "metadata": { - "$ref": "#/components/schemas/PageMetadata" - }, "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfPreferredLineItem202110" - }, - "x-nullable": false + "$ref": "#/components/schemas/ResourceOfPreferredLineItem202110" }, "warnings": { "type": "array", @@ -5865,14 +8412,14 @@ "x-nullable": false } }, - "description": "Data model for a paged list of response resources", + "description": "Data model for response resource", "x-nullable": false }, - "PreferredLineItem202110Response": { + "CommonLineItemResponse": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ResourceOfPreferredLineItem202110" + "$ref": "#/components/schemas/ResourceOfCommonLineItem" }, "warnings": { "type": "array", @@ -5894,11 +8441,38 @@ "description": "Data model for response resource", "x-nullable": false }, - "CommonLineItemResponse": { + "JsonApiSingleResponseOfLineItemBidMultipliers": { + "required": [ + "data" + ], "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ResourceOfCommonLineItem" + "$ref": "#/components/schemas/JsonApiBodyWithIdOfInt64AndLineItemBidMultipliersAndLineItemBidMultipliers" + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonError" + }, + "x-nullable": false + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonWarning" + }, + "x-nullable": false + } + }, + "description": "Data model for the response of a line item bid multiplier", + "x-nullable": false + }, + "LineItemBidMultipliersResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ResourceOfLineItemBidMultipliers" }, "warnings": { "type": "array", @@ -6031,11 +8605,51 @@ "description": "Data model for a value type resource outcome", "x-nullable": false }, - "ExternalPostCampaign": { + "CreateBalanceRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ResourceOfCreateBalance" + } + }, + "description": "Data model for an input resource", + "x-nullable": false + }, + "UpdateBalanceModelRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ResourceOfUpdateBalanceModel" + } + }, + "description": "Data model for an input resource", + "x-nullable": false + }, + "AddFundsToBalanceRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ResourceOfAddFundsToBalance" + } + }, + "description": "Data model for an input resource", + "x-nullable": false + }, + "ChangeDatesOfBalanceRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ResourceOfChangeDatesOfBalance" + } + }, + "description": "Data model for an input resource", + "x-nullable": false + }, + "PostCampaignV202301": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/JsonApiBodyWithoutIdOfCampaignAttributesAndCampaign" + "$ref": "#/components/schemas/JsonApiBodyWithoutIdOfCampaignAttributesV202301AndCampaignV202301" } }, "description": "An object that represents the available options to set when creating a Retail Media Campaign", @@ -6095,16 +8709,26 @@ "description": "Data model for a create input resource", "x-nullable": false }, - "ExternalPutCampaign": { + "PutCampaignV202301": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/JsonApiBodyWithExternalIdOfEditableCampaignAttributesAndCampaign" + "$ref": "#/components/schemas/JsonApiBodyWithExternalIdOfEditableCampaignAttributesV202301AndCampaignV202301" } }, "description": "An object that represents the available options to set when editing a Retail Media Campaign", "x-nullable": false }, + "LineItemBidMultipliersRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ResourceOfLineItemBidMultipliers" + } + }, + "description": "Data model for an input resource", + "x-nullable": false + }, "PromotedProduct202110ListRequest": { "type": "object", "properties": { @@ -6201,15 +8825,195 @@ "type": "string", "description": "Canonical type name of the entity", "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalBalance202110" + }, + "attributes": { + "$ref": "#/components/schemas/ExternalBalance202110" + } + }, + "description": "A class that represents an entity in a guild compliant way", + "x-nullable": false + }, + "ResourceOfCommonLineItem": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/ExternalCommonLineItem" + } + }, + "description": "Data model for a Resource", + "x-nullable": false + }, + "ResourceOfBalanceResponse": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/ExternalBalanceResponse" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true + } + }, + "description": "Data model for a Resource", + "x-nullable": false + }, + "JsonApiBodyWithIdOfInt64AndCampaignV202301AndCampaignV202301": { + "required": [ + "id", + "type" + ], + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "long-id", + "x-nullable": false + }, + "type": { + "type": "string", + "x-nullable": false + }, + "attributes": { + "$ref": "#/components/schemas/CampaignV202301" + } + }, + "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", + "x-nullable": false + }, + "ResourceOfAuctionLineItem": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/ExternalAuctionLineItem" + } + }, + "description": "Data model for a Resource", + "x-nullable": false + }, + "ValueTypeResourceOfKeywordTarget202110": { + "type": "object", + "properties": { + "type": { + "type": "string", + "x-nullable": false + }, + "attributes": { + "$ref": "#/components/schemas/ExternalKeywordTarget202110" + } + }, + "description": "Data model for a value type resource", + "x-nullable": false + }, + "ResourceOfBalanceCampaign202110": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/ExternalBalanceCampaign202110" + } + }, + "description": "A class that represents an entity in a guild compliant way", + "x-nullable": false + }, + "ResourceOfPreferredLineItem202110": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/ExternalPreferredLineItem202110" + } + }, + "description": "Data model for a Resource", + "x-nullable": false + }, + "JsonApiBodyWithIdOfInt64AndLineItemBidMultipliersAndLineItemBidMultipliers": { + "required": [ + "id", + "type" + ], + "type": "object", + "properties": { + "id": { + "type": "string", + "format": "long-id", + "x-nullable": false + }, + "type": { + "type": "string", + "x-nullable": false + }, + "attributes": { + "$ref": "#/components/schemas/LineItemBidMultipliers" + } + }, + "description": "Response object for line item bid multiplier calls", + "x-nullable": false + }, + "ResourceOfLineItemBidMultipliers": { + "type": "object", + "properties": { + "attributes": { + "$ref": "#/components/schemas/LineItemBidMultipliers" + }, + "id": { + "type": "string", + "description": "Id of the entity", + "nullable": true + }, + "type": { + "type": "string", + "description": "Canonical type name of the entity", + "nullable": true } }, - "description": "A class that represents an entity in a guild compliant way", + "description": "Data model for a Resource", "x-nullable": false }, - "ResourceOfCommonLineItem": { + "ResourceOfPromotedProduct202110": { "type": "object", "properties": { "id": { @@ -6223,56 +9027,41 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/ExternalCommonLineItem" + "$ref": "#/components/schemas/ExternalPromotedProduct202110" } }, "description": "Data model for a Resource", "x-nullable": false }, - "JsonApiBodyWithIdOfInt64AndCampaignAndCampaign": { - "required": [ - "id", - "type" - ], + "ValueTypeResourceOfAddToBasketTarget202110": { "type": "object", "properties": { - "id": { - "type": "string", - "format": "long-id", - "x-nullable": false - }, "type": { "type": "string", "x-nullable": false }, "attributes": { - "$ref": "#/components/schemas/ExternalCampaign" + "$ref": "#/components/schemas/ExternalAddToBasketTarget202110" } }, - "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", + "description": "Data model for a value type resource", "x-nullable": false }, - "ResourceOfAuctionLineItem": { + "ValueTypeResourceOfAudienceTarget202110": { "type": "object", "properties": { - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, "type": { "type": "string", - "description": "Canonical type name of the entity", - "nullable": true + "x-nullable": false }, "attributes": { - "$ref": "#/components/schemas/ExternalAuctionLineItem" + "$ref": "#/components/schemas/ExternalAudienceTarget202110" } }, - "description": "Data model for a Resource", + "description": "Data model for a value type resource", "x-nullable": false }, - "ValueTypeResourceOfKeywordTarget202110": { + "ValueTypeResourceOfStoreTarget202110": { "type": "object", "properties": { "type": { @@ -6280,15 +9069,18 @@ "x-nullable": false }, "attributes": { - "$ref": "#/components/schemas/ExternalKeywordTarget202110" + "$ref": "#/components/schemas/ExternalStoreTarget202110" } }, "description": "Data model for a value type resource", "x-nullable": false }, - "ResourceOfBalanceCampaign202110": { + "ResourceOfCreateBalance": { "type": "object", "properties": { + "attributes": { + "$ref": "#/components/schemas/ExternalCreateBalance" + }, "id": { "type": "string", "description": "Id of the entity", @@ -6298,17 +9090,17 @@ "type": "string", "description": "Canonical type name of the entity", "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalBalanceCampaign202110" } }, - "description": "A class that represents an entity in a guild compliant way", + "description": "Data model for a Resource", "x-nullable": false }, - "ResourceOfPreferredLineItem202110": { + "ResourceOfUpdateBalanceModel": { "type": "object", "properties": { + "attributes": { + "$ref": "#/components/schemas/ExternalUpdateBalanceModel" + }, "id": { "type": "string", "description": "Id of the entity", @@ -6318,17 +9110,17 @@ "type": "string", "description": "Canonical type name of the entity", "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalPreferredLineItem202110" } }, "description": "Data model for a Resource", "x-nullable": false }, - "ResourceOfPromotedProduct202110": { + "ResourceOfAddFundsToBalance": { "type": "object", "properties": { + "attributes": { + "$ref": "#/components/schemas/ExternalAddFundsToBalance" + }, "id": { "type": "string", "description": "Id of the entity", @@ -6338,57 +9130,32 @@ "type": "string", "description": "Canonical type name of the entity", "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/ExternalPromotedProduct202110" } }, "description": "Data model for a Resource", "x-nullable": false }, - "ValueTypeResourceOfAddToBasketTarget202110": { + "ResourceOfChangeDatesOfBalance": { "type": "object", "properties": { - "type": { - "type": "string", - "x-nullable": false - }, "attributes": { - "$ref": "#/components/schemas/ExternalAddToBasketTarget202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "ValueTypeResourceOfAudienceTarget202110": { - "type": "object", - "properties": { - "type": { + "$ref": "#/components/schemas/ExternalChangeDatesOfBalance" + }, + "id": { "type": "string", - "x-nullable": false + "description": "Id of the entity", + "nullable": true }, - "attributes": { - "$ref": "#/components/schemas/ExternalAudienceTarget202110" - } - }, - "description": "Data model for a value type resource", - "x-nullable": false - }, - "ValueTypeResourceOfStoreTarget202110": { - "type": "object", - "properties": { "type": { "type": "string", - "x-nullable": false - }, - "attributes": { - "$ref": "#/components/schemas/ExternalStoreTarget202110" + "description": "Canonical type name of the entity", + "nullable": true } }, - "description": "Data model for a value type resource", + "description": "Data model for a Resource", "x-nullable": false }, - "JsonApiBodyWithoutIdOfCampaignAttributesAndCampaign": { + "JsonApiBodyWithoutIdOfCampaignAttributesV202301AndCampaignV202301": { "required": [ "type" ], @@ -6399,7 +9166,7 @@ "x-nullable": false }, "attributes": { - "$ref": "#/components/schemas/ExternalCampaignAttributes" + "$ref": "#/components/schemas/CampaignAttributesV202301" } }, "description": "A JSON:API wrapper class to format a with Type, and\r\nAttributes properties", @@ -6453,7 +9220,7 @@ "description": "Data model for a Resource", "x-nullable": false }, - "JsonApiBodyWithExternalIdOfEditableCampaignAttributesAndCampaign": { + "JsonApiBodyWithExternalIdOfEditableCampaignAttributesV202301AndCampaignV202301": { "required": [ "id", "type" @@ -6470,7 +9237,7 @@ "x-nullable": false }, "attributes": { - "$ref": "#/components/schemas/ExternalEditableCampaignAttributes" + "$ref": "#/components/schemas/EditableCampaignAttributesV202301" } }, "description": "A JSON:API wrapper class to format a with external Id, Type, and\r\nAttributes properties", @@ -6547,7 +9314,6 @@ "spent", "remaining", "startDate", - "endDate", "status", "createdAt", "updatedAt" @@ -6599,12 +9365,15 @@ ], "type": "string", "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" + "format": "date", + "x-nullable": false }, "endDate": { "type": "string", "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" + "format": "date", + "nullable": true, + "x-nullable": true }, "status": { "enum": [ @@ -6734,7 +9503,131 @@ "description": "A common line item to hold line item information shared between preferred and auction line items", "x-nullable": false }, - "ExternalCampaign": { + "ExternalBalanceResponse": { + "required": [ + "name", + "poNumber", + "memo", + "deposited", + "spent", + "remaining", + "startDate", + "endDate", + "status", + "createdAt", + "updatedAt", + "balanceType", + "salesForceId", + "spendType" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the balance.", + "x-nullable": false + }, + "poNumber": { + "type": "string", + "description": "Purchase Order number.", + "x-nullable": false + }, + "memo": { + "type": "string", + "description": "Memo", + "x-nullable": false + }, + "deposited": { + "required": [ + "false" + ], + "type": "number", + "description": "Amount of billable funds allotted to the balance.", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "spent": { + "required": [ + "false" + ], + "type": "number", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "remaining": { + "required": [ + "false" + ], + "type": "number", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "startDate": { + "required": [ + "true" + ], + "type": "string", + "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", + "format": "date" + }, + "endDate": { + "type": "string", + "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", + "format": "date" + }, + "status": { + "enum": [ + "unknown", + "scheduled", + "active", + "ended" + ], + "type": "string", + "x-nullable": false + }, + "createdAt": { + "type": "string", + "format": "date-time", + "x-nullable": false + }, + "updatedAt": { + "type": "string", + "format": "date-time", + "x-nullable": false + }, + "balanceType": { + "enum": [ + "unknown", + "capped", + "uncapped" + ], + "type": "string", + "description": "Type of the balance", + "x-nullable": false + }, + "salesForceId": { + "type": "string", + "description": "SalesForceId the balance is linked to.", + "x-nullable": false + }, + "spendType": { + "enum": [ + "Onsite", + "Offsite", + "OffsiteAwareness" + ], + "type": "string", + "description": "Spend Type of the balance.", + "x-nullable": false + } + }, + "description": "A Retail Media Balance used to determine the funds available for any or all campaigns in an account", + "x-nullable": false + }, + "CampaignV202301": { "required": [ "accountId", "promotedBrandIds", @@ -6742,7 +9635,10 @@ "budgetRemaining", "createdAt", "updatedAt", - "name" + "name", + "isAutoDailyPacing", + "startDate", + "endDate" ], "type": "object", "properties": { @@ -6781,7 +9677,9 @@ "enum": [ "unknown", "active", - "inactive" + "inactive", + "scheduled", + "ended" ], "type": "string", "x-nullable": false @@ -6827,15 +9725,15 @@ }, "viewAttributionWindow": { "enum": [ - "none", - "1D", - "7D", - "14D", - "30D", - "unknown" + "None", + "Unknown", + "OneDay", + "SevenDays", + "FourteenDays", + "ThirtyDays" ], "type": "string", - "default": "none", + "default": "None", "x-nullable": false }, "name": { @@ -6853,6 +9751,40 @@ "nullable": true, "x-nullable": true }, + "monthlyPacing": { + "required": [ + "false" + ], + "type": "number", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "dailyPacing": { + "required": [ + "false" + ], + "type": "number", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "isAutoDailyPacing": { + "type": "boolean", + "x-nullable": false + }, + "startDate": { + "type": "string", + "format": "date-time", + "nullable": true, + "x-nullable": true + }, + "endDate": { + "type": "string", + "format": "date-time", + "nullable": true, + "x-nullable": true + }, "clickAttributionScope": { "enum": [ "unknown", @@ -7167,6 +10099,53 @@ "description": "A Retail Media Preferred Line Item used to hold bid settings for one or many promoted products on a single retailer", "x-nullable": false }, + "LineItemBidMultipliers": { + "type": "object", + "properties": { + "search": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "homepage": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "categories": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "productDetail": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "confirmation": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "merchandising": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "deals": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "checkout": { + "type": "number", + "format": "double", + "x-nullable": false + } + }, + "description": "Data model representing bid multipliers on a line item", + "x-nullable": false + }, "ExternalPromotedProduct202110": { "type": "object", "properties": { @@ -7281,9 +10260,174 @@ "description": "Identifies store targeting for a line item", "x-nullable": false }, - "ExternalCampaignAttributes": { + "ExternalCreateBalance": { "required": [ - "name" + "name", + "deposited", + "startDate", + "endDate", + "spendType", + "memo", + "salesForceId" + ], + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the balance.", + "x-nullable": false + }, + "poNumber": { + "type": "string", + "description": "Purchase Order number.", + "x-nullable": false + }, + "deposited": { + "required": [ + "false" + ], + "type": "number", + "description": "Amount of billable funds allotted to the balance.", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "startDate": { + "required": [ + "true" + ], + "type": "string", + "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", + "format": "date" + }, + "endDate": { + "type": "string", + "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", + "format": "date" + }, + "spendType": { + "enum": [ + "Onsite", + "Offsite", + "OffsiteAwareness" + ], + "type": "string", + "description": "Type of the balance spend.", + "x-nullable": false + }, + "memo": { + "type": "string", + "description": "Memo", + "x-nullable": false + }, + "salesForceId": { + "type": "string", + "description": "SalesForceId the balance is linked to.", + "x-nullable": false + } + }, + "description": "An object that represents the available options to set when creating a Retail Media Balance", + "x-nullable": false + }, + "ExternalUpdateBalanceModel": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the balance.", + "x-nullable": false + }, + "poNumber": { + "type": "string", + "description": "Purchase Order number.", + "x-nullable": false + }, + "salesForceId": { + "type": "string", + "description": "SalesForceId the balance is linked to.", + "x-nullable": false + }, + "startDate": { + "type": "string", + "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", + "format": "date", + "nullable": true + }, + "endDate": { + "type": "string", + "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", + "format": "date", + "nullable": true + }, + "memo": { + "type": "string", + "description": "Memo", + "x-nullable": false + } + }, + "description": "An object that represents the available options to set when updating a Retail Media Balance", + "x-nullable": false + }, + "ExternalAddFundsToBalance": { + "required": [ + "deltaAmount", + "memo" + ], + "type": "object", + "properties": { + "deltaAmount": { + "type": "number", + "description": "Amount of billable funds to be added / decreased allotted to the balance.", + "format": "double", + "x-nullable": false + }, + "poNumber": { + "type": "string", + "description": "Purchase Order number.", + "x-nullable": false + }, + "memo": { + "type": "string", + "description": "Memo", + "x-nullable": false + } + }, + "description": "An object that represents the available options of adding funds to a balance.", + "x-nullable": false + }, + "ExternalChangeDatesOfBalance": { + "required": [ + "startDate", + "endDate", + "memo" + ], + "type": "object", + "properties": { + "startDate": { + "type": "string", + "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", + "format": "date" + }, + "endDate": { + "type": "string", + "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", + "format": "date" + }, + "memo": { + "type": "string", + "description": "Memo", + "x-nullable": false + } + }, + "description": "An object that represents the available options to modify schedule of a balance.", + "x-nullable": false + }, + "CampaignAttributesV202301": { + "required": [ + "name", + "isAutoDailyPacing", + "startDate", + "endDate" ], "type": "object", "properties": { @@ -7318,15 +10462,15 @@ }, "viewAttributionWindow": { "enum": [ - "none", - "1D", - "7D", - "14D", - "30D", - "unknown" + "None", + "Unknown", + "OneDay", + "SevenDays", + "FourteenDays", + "ThirtyDays" ], "type": "string", - "default": "none", + "default": "None", "x-nullable": false }, "name": { @@ -7344,6 +10488,40 @@ "nullable": true, "x-nullable": true }, + "monthlyPacing": { + "required": [ + "false" + ], + "type": "number", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "dailyPacing": { + "required": [ + "false" + ], + "type": "number", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "isAutoDailyPacing": { + "type": "boolean", + "x-nullable": false + }, + "startDate": { + "type": "string", + "format": "date-time", + "nullable": true, + "x-nullable": true + }, + "endDate": { + "type": "string", + "format": "date-time", + "nullable": true, + "x-nullable": true + }, "clickAttributionScope": { "enum": [ "unknown", @@ -7676,9 +10854,12 @@ "description": "Model used to create a preferred line item", "x-nullable": false }, - "ExternalEditableCampaignAttributes": { + "EditableCampaignAttributesV202301": { "required": [ "name", + "isAutoDailyPacing", + "startDate", + "endDate", "clickAttributionWindow", "viewAttributionWindow" ], @@ -7699,6 +10880,40 @@ "nullable": true, "x-nullable": true }, + "monthlyPacing": { + "required": [ + "false" + ], + "type": "number", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "dailyPacing": { + "required": [ + "false" + ], + "type": "number", + "format": "decimal", + "nullable": true, + "x-nullable": true + }, + "isAutoDailyPacing": { + "type": "boolean", + "x-nullable": false + }, + "startDate": { + "type": "string", + "format": "date-time", + "nullable": true, + "x-nullable": true + }, + "endDate": { + "type": "string", + "format": "date-time", + "nullable": true, + "x-nullable": true + }, "clickAttributionWindow": { "enum": [ "7D", @@ -7711,12 +10926,12 @@ }, "viewAttributionWindow": { "enum": [ - "none", - "1D", - "7D", - "14D", - "30D", - "unknown" + "None", + "Unknown", + "OneDay", + "SevenDays", + "FourteenDays", + "ThirtyDays" ], "type": "string", "x-nullable": false diff --git a/api-specifications/retailmedia_preview.json b/api-specifications/retailmedia_preview.json index 4e687b4..f29bd16 100644 --- a/api-specifications/retailmedia_preview.json +++ b/api-specifications/retailmedia_preview.json @@ -3,7 +3,7 @@ "info": { "title": "Criteo API", "description": "Criteo API - RetailMedia", - "version": "preview" + "version": "Preview" }, "servers": [ { @@ -324,80 +324,6 @@ } } } - }, - "post": { - "tags": [ - "Audience" - ], - "description": "Create an audience for a given account ID", - "operationId": "AudienceApi_CreateAudience", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "ID of the account to which this audience belongs.", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int64" - }, - "x-example": 68004146450571264 - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceRequest" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "201": { - "description": "The audience that was just created.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceResponse" - } - } - } - }, - "400": { - "description": "Missing or invalid account ID. - OR - Missing or invalid retailerID field. - OR - Missing or invalid name field. Name should be less than 255 characters. - OR - Missing or invalid userType field. Valid values are: 'buy', 'view'. - OR - The retailerTaxonomyIds is not a valid list of IDs or may contain more than 100 elements. - OR - Missing or invalid lookbackDays field.  Valid values are: 7, 14,  30, 45, 60, 90, 120, 150 or 180. - OR - Exactly one of retailerTaxonomyIds or globalBrandIds must be specified, but not both. - OR - The retailer is invalid because it is not live - OR - The globalBrandIds is not a valid list of IDs or may contain more than 100 elements.", - "content": { - "application/json": { } - } - }, - "404": { - "description": "The audience was not found. - OR - You do not have permission to access these global brands.", - "content": { - "application/json": { } - } - }, - "406": { - "description": "The Accept header must contain application/json.", - "content": { - "application/json": { } - } - }, - "409": { - "description": "An audience name should be unique per account.", - "content": { - "application/json": { } - } - }, - "415": { - "description": "The Content-Type header must be application/json if present.", - "content": { - "application/json": { } - } - } - } } }, "/preview/retail-media/v2/accounts/{accountId}/audiences": { @@ -498,100 +424,6 @@ } } } - }, - "post": { - "tags": [ - "Audience" - ], - "description": "Create an audience for a given account ID", - "operationId": "CreateRetailMediaAudienceV2", - "parameters": [ - { - "name": "accountId", - "in": "path", - "description": "ID of the account to which this audience belongs.", - "required": true, - "style": "simple", - "schema": { - "type": "integer", - "format": "int64" - }, - "x-example": 68004146450571264 - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceV2Request" - } - } - }, - "required": true, - "x-bodyName": "body" - }, - "responses": { - "201": { - "description": "The audience that was just created.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/RetailMediaAudienceV2Response" - } - } - } - }, - "400": { - "description": "Missing or invalid retailerID field. - OR - Missing or invalid name field. Name should be less than 255 characters. - OR - Missing or invalid userType field. Valid values are: 'buyer', 'viewer'. - OR - The brandIds is not a valid list of IDs or may contain more than 100 elements. - OR - The categoryIds is not a valid list of IDs or may contain more than 100 elements. - OR - Missing or invalid lookbackWindow field. Valid values are: P7D, P14D, P30D, P45D, P60D, P90D, P120D, P150D or P180D. - OR - Exactly one of categoryIds or brandIds must be specified, but not both. - OR - The retailer is invalid because it is not live - OR - Missing or invalid userAction field. Valid values are: 'buy', 'view', 'addToCart'.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CommonStatusCodeResponse" - } - } - } - }, - "403": { - "description": "Missing or invalid account ID.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CommonStatusCodeResponse" - } - } - } - }, - "406": { - "description": "The Accept header must contain application/json.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CommonStatusCodeResponse" - } - } - } - }, - "409": { - "description": "An audience name should be unique per account.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CommonStatusCodeResponse" - } - } - } - }, - "415": { - "description": "The Content-Type header must be application/json if present.", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CommonStatusCodeResponse" - } - } - } - } - } } }, "/preview/retail-media/line-items/{id}/keywords": { @@ -1807,28 +1639,28 @@ "tags": [ "Analytics" ], - "description": "Return an async Campaign Report", - "operationId": "GenerateAsyncCampaignReport", + "description": "Return an asynchronous Campaigns Report", + "operationId": "GenerateAsyncCampaignsReport", "requestBody": { "content": { "application/json-patch+json": { "schema": { - "$ref": "#/components/schemas/AsyncCampaignReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } }, "application/json": { "schema": { - "$ref": "#/components/schemas/AsyncCampaignReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } }, "text/json": { "schema": { - "$ref": "#/components/schemas/AsyncCampaignReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } }, "application/*+json": { "schema": { - "$ref": "#/components/schemas/AsyncCampaignReportRequest" + "$ref": "#/components/schemas/AsyncCampaignsReportRequest" } } }, @@ -1904,28 +1736,28 @@ "tags": [ "Analytics" ], - "description": "Return an async Line Item Report", + "description": "Returns an asynchronous Line Items Report", "operationId": "GenerateAsyncLineItemsReport", "requestBody": { "content": { "application/json-patch+json": { "schema": { - "$ref": "#/components/schemas/AsyncLineItemReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } }, "application/json": { "schema": { - "$ref": "#/components/schemas/AsyncLineItemReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } }, "text/json": { "schema": { - "$ref": "#/components/schemas/AsyncLineItemReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } }, "application/*+json": { "schema": { - "$ref": "#/components/schemas/AsyncLineItemReportRequest" + "$ref": "#/components/schemas/AsyncLineItemsReportRequest" } } }, @@ -1996,125 +1828,33 @@ } } }, - "/preview/retail-media/reports/revenue": { + "/preview/retail-media/reports/sync/attributed-transactions": { "post": { "tags": [ "Analytics" ], - "description": "Return an async Revenue Report", - "operationId": "GenerateAsyncRevenueReport", + "description": "Returns a synchronous Attributed Transactions Report", + "operationId": "GenerateSyncAttributedTransactionsReport", "requestBody": { "content": { "application/json-patch+json": { "schema": { - "$ref": "#/components/schemas/AsyncRevenueReportRequest" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/AsyncRevenueReportRequest" + "$ref": "#/components/schemas/SyncAttributedTransactionsReportRequest" } }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/AsyncRevenueReportRequest" - } - }, - "application/*+json": { - "schema": { - "$ref": "#/components/schemas/AsyncRevenueReportRequest" - } - } - }, - "required": true, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/AsyncReportResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/AsyncReportResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/AsyncReportResponse" - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ReportOutcome" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReportOutcome" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ReportOutcome" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/ReportOutcome" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/ReportOutcome" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/ReportOutcome" - } - } - } - } - } - } - }, - "/preview/retail-media/reports/sync/attributed-transactions": { - "post": { - "tags": [ - "Analytics" - ], - "description": "Return an Attributed Transactions Report", - "operationId": "GenerateAttributedTransactionsReport", - "requestBody": { - "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AttributedTransactionReportRequest" + "$ref": "#/components/schemas/SyncAttributedTransactionsReportRequest" } }, "text/json": { "schema": { - "$ref": "#/components/schemas/AttributedTransactionReportRequest" + "$ref": "#/components/schemas/SyncAttributedTransactionsReportRequest" } }, "application/*+json": { "schema": { - "$ref": "#/components/schemas/AttributedTransactionReportRequest" + "$ref": "#/components/schemas/SyncAttributedTransactionsReportRequest" } } }, @@ -2190,23 +1930,28 @@ "tags": [ "Analytics" ], - "description": "Return a Campaign Report", - "operationId": "GenerateCampaignReports", + "description": "Returns a synchronous Campaigns Report", + "operationId": "GenerateSyncCampaignsReport", "requestBody": { "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/SyncCampaignsReportRequest" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/CampaignReportRequest" + "$ref": "#/components/schemas/SyncCampaignsReportRequest" } }, "text/json": { "schema": { - "$ref": "#/components/schemas/CampaignReportRequest" + "$ref": "#/components/schemas/SyncCampaignsReportRequest" } }, "application/*+json": { "schema": { - "$ref": "#/components/schemas/CampaignReportRequest" + "$ref": "#/components/schemas/SyncCampaignsReportRequest" } } }, @@ -2282,23 +2027,28 @@ "tags": [ "Analytics" ], - "description": "Return a Line Item Report", - "operationId": "GenerateLineItemsReports", + "description": "Returns a synchronous Line Items Report", + "operationId": "GenerateSyncLineItemsReport", "requestBody": { "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/SyncLineItemsReportRequest" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/LineItemReportRequest" + "$ref": "#/components/schemas/SyncLineItemsReportRequest" } }, "text/json": { "schema": { - "$ref": "#/components/schemas/LineItemReportRequest" + "$ref": "#/components/schemas/SyncLineItemsReportRequest" } }, "application/*+json": { "schema": { - "$ref": "#/components/schemas/LineItemReportRequest" + "$ref": "#/components/schemas/SyncLineItemsReportRequest" } } }, @@ -2374,7 +2124,7 @@ "tags": [ "Analytics" ], - "description": "Return the output of an async report", + "description": "Returns the output of an async report", "operationId": "GetAsyncExportOutput", "parameters": [ { @@ -2457,7 +2207,7 @@ "tags": [ "Analytics" ], - "description": "Return the status of an async report", + "description": "Returns the status of an async report", "operationId": "GetAsyncExportStatus", "parameters": [ { @@ -2567,23 +2317,81 @@ } } } - } - }, - "/preview/retail-media/catalogs/sku/search/accounts/{accountId}/retailers/{retailerId}/by-id": { - "post": { + }, + "put": { "tags": [ - "Analytics" + "Campaign" ], - "description": "Gets a list of SKUs based on a privided list of Product Ids", - "operationId": "GetSkuByProductId", + "description": "Update campaign budget overrides by given external campaign id and new campaign budget overrides settings.", + "operationId": "UpdateCampaignBudgetOverrides", "parameters": [ { - "name": "accountId", + "name": "campaignId", "in": "path", - "description": "account id", + "description": "External campaign id.", + "required": true, + "style": "simple", + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "requestBody": { + "description": "New campaign budget overrides settings value resource input.", + "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/ValueResourceInputOfCampaignBudgetOverrides" + } + }, + "application/json": { + "schema": { + "$ref": "#/components/schemas/ValueResourceInputOfCampaignBudgetOverrides" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ValueResourceInputOfCampaignBudgetOverrides" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/ValueResourceInputOfCampaignBudgetOverrides" + } + } + } + }, + "responses": { + "201": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ValueResourceOutcomeOfCampaignBudgetOverrides" + } + } + } + } + } + } + }, + "/preview/retail-media/catalogs/sku/search/accounts/{accountId}/retailers/{retailerId}/by-id": { + "post": { + "tags": [ + "Campaign" + ], + "description": "Gets a list of SKUs based on a privided list of Product Ids", + "operationId": "GetSkuByProductId", + "parameters": [ + { + "name": "accountId", + "in": "path", + "description": "account id", "required": true, "style": "simple", "schema": { + "pattern": "^\\d+$", "type": "string" } }, @@ -2594,6 +2402,8 @@ "required": true, "style": "simple", "schema": { + "maximum": 2147483647, + "minimum": 1, "type": "integer", "format": "int32" } @@ -2604,6 +2414,8 @@ "description": "skip a number of matches before retrning results, used with limit", "style": "form", "schema": { + "maximum": 2147483647, + "minimum": 0, "type": "integer", "format": "int32", "default": 0 @@ -2615,6 +2427,8 @@ "description": "max number of results to return", "style": "form", "schema": { + "maximum": 2147483647, + "minimum": 1, "type": "integer", "format": "int32", "default": 100 @@ -2666,7 +2480,7 @@ "Campaign" ], "description": "Retrieves a collection of recommended keywords for a line item", - "operationId": "GetSuggestedKeywords", + "operationId": "GetRecommendedKeywords", "parameters": [ { "name": "externalLineItemId", @@ -2685,7 +2499,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ValueResourceOutcomeOfSuggestedKeywordsResult" + "$ref": "#/components/schemas/ValueResourceOutcomeOfRecommendedKeywordsResult" } } } @@ -2693,61 +2507,23 @@ } } }, - "/preview/retail-media/accounts/{accountId}/balances": { + "/preview/retail-media/line-items/{lineItemId}/line-item-budget-overrides": { "get": { "tags": [ "Campaign" ], - "description": "Get page of balances for the given accountId.", - "operationId": "Balances_GetApiV1ExternalAccountBalancesByAccountId", + "description": "Gets a collection of monthly and daily budget overrides for the provided line item.", + "operationId": "GetLineItemBudgetOverrides", "parameters": [ { - "name": "accountId", + "name": "lineItemId", "in": "path", - "description": "The account to get page of balances for", + "description": "The line item id to get budget overrides for.", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false - }, - { - "name": "limitToId", - "in": "query", - "description": "The ids that you would like to limit your result set to", - "style": "form", - "schema": { - "type": "array", - "items": { - "type": "string" - } - }, - "x-nullable": false - }, - { - "name": "pageIndex", - "in": "query", - "description": "The 0 indexed page index you would like to receive given the page size", - "style": "form", - "schema": { - "type": "integer", - "format": "int32", - "default": 0 - }, - "x-nullable": false - }, - { - "name": "pageSize", - "in": "query", - "description": "The maximum number of items you would like to receive in this request", - "style": "form", - "schema": { - "type": "integer", - "format": "int32", - "default": 25 - }, - "x-nullable": false + } } ], "responses": { @@ -2756,42 +2532,55 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/BalanceResponsePagedListResponse" + "$ref": "#/components/schemas/ValueResourceOutcomeOfLineItemBudgetOverrides" } } } } } }, - "post": { + "put": { "tags": [ "Campaign" ], - "description": "Create balance for the given account id", - "operationId": "Balances_PostApiV1ExternalAccountBalancesByAccountId", + "description": "Update line item budget overrides by given external line item id and new line item budget overrides settings.", + "operationId": "UpdateLineItemBudgetOverrides", "parameters": [ { - "name": "accountId", + "name": "lineItemId", "in": "path", - "description": "The account to create balances for", + "description": "Line item external id.", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "requestBody": { + "description": "New line item budget overrides settings value resource input.", "content": { + "application/json-patch+json": { + "schema": { + "$ref": "#/components/schemas/ValueResourceInputOfLineItemBudgetOverrides" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/CreateBalanceRequest" + "$ref": "#/components/schemas/ValueResourceInputOfLineItemBudgetOverrides" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/ValueResourceInputOfLineItemBudgetOverrides" + } + }, + "application/*+json": { + "schema": { + "$ref": "#/components/schemas/ValueResourceInputOfLineItemBudgetOverrides" } } - }, - "x-nullable": false, - "x-bodyName": "createBalance" + } }, "responses": { "201": { @@ -2799,7 +2588,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/BalanceResponse" + "$ref": "#/components/schemas/ValueResourceOutcomeOfLineItemBudgetOverrides" } } } @@ -2807,98 +2596,94 @@ } } }, - "/preview/retail-media/accounts/{accountId}/balances/{balanceId}": { + "/preview/retail-media/line-items/{line-item-id}/bid-multipliers": { "get": { "tags": [ "Campaign" ], - "description": "Get a balance for the given account id and balance id", - "operationId": "Balances_GetApiV1ExternalAccountByAccountIdAndBalanceId", + "description": "Get bid multipliers by line item", + "operationId": "LineItems_GetApi202301ExternalLineItemBidMultipliersByLineItemId", "parameters": [ { - "name": "accountId", - "in": "path", - "description": "The account of the balance", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "balanceId", + "name": "line-item-id", "in": "path", - "description": "The balance id", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/BalanceResponse" + "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" } } } } } }, - "patch": { + "put": { "tags": [ "Campaign" ], - "description": "Modify a balance for the given account id", - "operationId": "Balances_PatchApiV1ExternalAccountByAccountIdAndBalanceId", + "description": "Replace bid multipliers on a line item", + "operationId": "LineItems_PutApi202301ExternalLineItemBidMultipliersByLineItemId", "parameters": [ { - "name": "accountId", - "in": "path", - "description": "The account of the balance", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "balanceId", + "name": "line-item-id", "in": "path", - "description": "The balance to change the dates", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { "type": "string" - }, - "x-nullable": false + } } ], "requestBody": { "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/UpdateBalanceModelRequest" + "$ref": "#/components/schemas/LineItemBidMultipliersRequest" } } }, "x-nullable": false, - "x-bodyName": "updateBalanceModel" + "x-bodyName": "request" }, "responses": { "200": { "description": "Success", "content": { + "text/plain": { + "schema": { + "$ref": "#/components/schemas/LineItemBidMultipliersResponse" + } + }, "application/json": { "schema": { - "$ref": "#/components/schemas/BalanceResponse" + "$ref": "#/components/schemas/LineItemBidMultipliersResponse" + } + }, + "text/json": { + "schema": { + "$ref": "#/components/schemas/LineItemBidMultipliersResponse" } } } @@ -2906,29 +2691,52 @@ } } }, - "/preview/retail-media/accounts/{accountId}/balances/{balanceId}/add-funds": { - "post": { + "/preview/retail-media/line-items/{line-item-id}/product-buttons": { + "get": { "tags": [ "Campaign" ], - "description": "Add funds to a balance for the given account id", - "operationId": "Balances_PostApiV1ExternalAccountAddFundsByAccountIdAndBalanceId", + "description": "Get all the product buttons associated with a line item", + "operationId": "ProductButtons_GetApi202210ExternalLineItemProductButtonsByLineItemId", "parameters": [ { - "name": "accountId", + "name": "line-item-id", "in": "path", - "description": "The account of the balance", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { "type": "string" }, "x-nullable": false - }, + } + ], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProductButtonListResponse" + } + } + } + } + } + } + }, + "/preview/retail-media/line-items/{line-item-id}/product-buttons/create": { + "post": { + "tags": [ + "Campaign" + ], + "description": "Append new product buttons to a line item", + "operationId": "ProductButtons_PostApi202210ExternalLineItemProductButtonsCreateByLineItemId", + "parameters": [ { - "name": "balanceId", + "name": "line-item-id", "in": "path", - "description": "The balance to add funds to", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { @@ -2938,15 +2746,16 @@ } ], "requestBody": { + "description": "List of product buttons to append to the specified line item", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/AddFundsToBalanceRequest" + "$ref": "#/components/schemas/ProductButtonListRequest" } } }, "x-nullable": false, - "x-bodyName": "addFundsToBalance" + "x-bodyName": "productButtons" }, "responses": { "200": { @@ -2954,7 +2763,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/BalanceResponse" + "$ref": "#/components/schemas/ProductButtonListResponse" } } } @@ -2962,18 +2771,18 @@ } } }, - "/preview/retail-media/accounts/{accountId}/balances/{balanceId}/change-dates": { - "post": { + "/preview/retail-media/line-items/{line-item-id}/product-buttons/{product-button-id}": { + "delete": { "tags": [ "Campaign" ], - "description": "Change dates of a balance for the given account id", - "operationId": "Balances_PostApiV1ExternalAccountChangeDatesByAccountIdAndBalanceId", + "description": "Delete a product button", + "operationId": "ProductButtons_DeleteApi202210ExternalLineItemProductButtonsByLineItemIdProductButtonId", "parameters": [ { - "name": "accountId", + "name": "line-item-id", "in": "path", - "description": "The account of the balance", + "description": "Long external id of the associated line item", "required": true, "style": "simple", "schema": { @@ -2982,9 +2791,9 @@ "x-nullable": false }, { - "name": "balanceId", + "name": "product-button-id", "in": "path", - "description": "The balance to change the dates", + "description": "Sequential id of the product button", "required": true, "style": "simple", "schema": { @@ -2993,249 +2802,18 @@ "x-nullable": false } ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ChangeDatesOfBalanceRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "changeDatesOfBalance" - }, "responses": { "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/BalanceResponse" - } - } - } + "description": "Success" } } - } - }, - "/preview/retail-media/line-items/{line-item-id}/bid-multipliers": { + }, "get": { "tags": [ "Campaign" ], - "description": "Get bid multipliers by line item", - "operationId": "LineItems_GetApi202301ExternalLineItemBidMultipliersByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "Long external id of the associated line item", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/JsonApiSingleResponseOfLineItemBidMultipliers" - } - } - } - } - } - }, - "put": { - "tags": [ - "Campaign" - ], - "description": "Replace bid multipliers on a line item", - "operationId": "LineItems_PutApi202301ExternalLineItemBidMultipliersByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "Long external id of the associated line item", - "required": true, - "style": "simple", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/LineItemBidMultipliersRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "request" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "text/plain": { - "schema": { - "$ref": "#/components/schemas/LineItemBidMultipliersResponse" - } - }, - "application/json": { - "schema": { - "$ref": "#/components/schemas/LineItemBidMultipliersResponse" - } - }, - "text/json": { - "schema": { - "$ref": "#/components/schemas/LineItemBidMultipliersResponse" - } - } - } - } - } - } - }, - "/preview/retail-media/line-items/{line-item-id}/product-buttons": { - "get": { - "tags": [ - "Campaign" - ], - "description": "Get all the product buttons associated with a line item", - "operationId": "ProductButtons_GetApi202210ExternalLineItemProductButtonsByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "Long external id of the associated line item", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProductButtonListResponse" - } - } - } - } - } - } - }, - "/preview/retail-media/line-items/{line-item-id}/product-buttons/create": { - "post": { - "tags": [ - "Campaign" - ], - "description": "Append new product buttons to a line item", - "operationId": "ProductButtons_PostApi202210ExternalLineItemProductButtonsCreateByLineItemId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "Long external id of the associated line item", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "requestBody": { - "description": "List of product buttons to append to the specified line item", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProductButtonListRequest" - } - } - }, - "x-nullable": false, - "x-bodyName": "productButtons" - }, - "responses": { - "200": { - "description": "Success", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProductButtonListResponse" - } - } - } - } - } - } - }, - "/preview/retail-media/line-items/{line-item-id}/product-buttons/{product-button-id}": { - "delete": { - "tags": [ - "Campaign" - ], - "description": "Delete a product button", - "operationId": "ProductButtons_DeleteApi202210ExternalLineItemProductButtonsByLineItemIdProductButtonId", - "parameters": [ - { - "name": "line-item-id", - "in": "path", - "description": "Long external id of the associated line item", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - }, - { - "name": "product-button-id", - "in": "path", - "description": "Sequential id of the product button", - "required": true, - "style": "simple", - "schema": { - "type": "string" - }, - "x-nullable": false - } - ], - "responses": { - "200": { - "description": "Success" - } - } - }, - "get": { - "tags": [ - "Campaign" - ], - "description": "Get a single product button", - "operationId": "ProductButtons_GetApi202210ExternalLineItemProductButtonsByLineItemIdProductButtonId", + "description": "Get a single product button", + "operationId": "ProductButtons_GetApi202210ExternalLineItemProductButtonsByLineItemIdProductButtonId", "parameters": [ { "name": "line-item-id", @@ -3266,7 +2844,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProductButtonResponse" + "$ref": "#/components/schemas/ProductButtonListResponse" } } } @@ -3321,7 +2899,7 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/ProductButtonResponse" + "$ref": "#/components/schemas/ProductButtonListResponse" } } } @@ -3942,33 +3520,6 @@ }, "description": "Response for page of audiences by given account" }, - "CreateRetailMediaAudienceResponse": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/CreateRetailMediaAudience" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonError" - }, - "description": "errors", - "nullable": true, - "readOnly": true - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonWarning" - }, - "description": "warnings", - "nullable": true, - "readOnly": true - } - }, - "description": "Response of CreateAudienceRequest" - }, "RetailMediaAudienceV2ListResponse": { "required": [ "data", @@ -4032,74 +3583,23 @@ }, "description": "Commonly Returned Problem Response" }, - "RetailMediaAudienceV2Response": { + "RetailMediaAudience": { + "required": [ + "attributes", + "audienceType", + "id", + "type" + ], "type": "object", "properties": { - "data": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceV2" - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "description": "errors", - "nullable": true, - "readOnly": true - }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "description": "warnings", - "nullable": true, - "readOnly": true - } - }, - "description": "Response of CreateAudienceRequestV2" - }, - "CreateRetailMediaAudienceRequest": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceBody" - } - }, - "description": "Request to create an audience" - }, - "CreateRetailMediaAudienceV2Request": { - "required": [ - "data" - ], - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceV2Data" - } - }, - "description": "Request to create an audience" - }, - "RetailMediaAudience": { - "required": [ - "attributes", - "audienceType", - "id", - "type" - ], - "type": "object", - "properties": { - "audienceType": { - "enum": [ - "customerList", - "userBehavior" - ], - "type": "string", - "description": "Type of the audience", - "example": "customerList" + "audienceType": { + "enum": [ + "customerList", + "userBehavior" + ], + "type": "string", + "description": "Type of the audience", + "example": "customerList" }, "id": { "type": "string", @@ -4117,31 +3617,6 @@ }, "description": "All the information about a retail media audience" }, - "CreateRetailMediaAudience": { - "required": [ - "attributes", - "id", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "RetailMediaAudience" - }, - "id": { - "type": "integer", - "description": "Unique ID of this audience.", - "format": "int64", - "example": 314159 - }, - "attributes": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceAttributes" - } - }, - "description": "Retail Media audience used in audience creation" - }, "RetailMediaAudienceV2": { "required": [ "attributes", @@ -4170,67 +3645,6 @@ }, "description": "Retail Media audience returned by the Get RetailMedia Audience" }, - "CreateRetailMediaAudienceV2": { - "required": [ - "attributes", - "id", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "RetailMediaAudience" - }, - "id": { - "type": "integer", - "description": "Unique ID of this audience.", - "format": "int64", - "example": 314159 - }, - "attributes": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceV2Attributes" - } - }, - "description": "Retail Media audience used in audience creation" - }, - "CreateRetailMediaAudienceBody": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "RetailMediaAudience" - }, - "attributes": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceAttributes" - } - }, - "description": "Request body of CreateRetailMediaAudienceRequest" - }, - "CreateRetailMediaAudienceV2Data": { - "required": [ - "attributes", - "type" - ], - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "the name of the entity type", - "example": "RetailMediaAudience" - }, - "attributes": { - "$ref": "#/components/schemas/CreateRetailMediaAudienceV2Attributes" - } - }, - "description": "Request body of CreateRetailMediaAudienceV2Request" - }, "RetailMediaAudienceAttributes": { "required": [ "name", @@ -4257,72 +3671,6 @@ }, "description": "Fields of a retail media audience" }, - "CreateRetailMediaAudienceAttributes": { - "required": [ - "lookbackWindow", - "name", - "retailerId", - "userType" - ], - "type": "object", - "properties": { - "userType": { - "enum": [ - "viewer", - "buyer" - ], - "type": "string", - "description": "Type of the user", - "example": "viewer" - }, - "lookbackWindow": { - "enum": [ - "P7D", - "P14D", - "P30D", - "P45D", - "P60D", - "P90D", - "P120D", - "P150D", - "P180D" - ], - "type": "string", - "description": "Length of lookback window", - "example": "P7D" - }, - "brandIds": { - "type": "array", - "items": { - "type": "integer", - "format": "int64" - }, - "description": "The brands to target", - "nullable": true - }, - "categoryIds": { - "type": "array", - "items": { - "type": "integer", - "format": "int32" - }, - "description": "The categories to target", - "nullable": true - }, - "retailerId": { - "type": "integer", - "description": "ID of the retailer associated with this audience", - "format": "int64", - "example": 6841 - }, - "name": { - "type": "string", - "description": "Name of the audience.", - "example": "Test audience" - } - }, - "description": "Parameters needed to create an audience" - }, "RetailMediaAudienceV2Attributes": { "required": [ "name", @@ -4350,31 +3698,6 @@ }, "description": "Properties of the returned Audience" }, - "CreateRetailMediaAudienceV2Attributes": { - "required": [ - "name", - "retailerId", - "userBehaviorDetails" - ], - "type": "object", - "properties": { - "retailerId": { - "type": "integer", - "description": "ID of the retailer associated with this audience", - "format": "int64", - "example": 6041 - }, - "userBehaviorDetails": { - "$ref": "#/components/schemas/UserBehaviorDetailsV2" - }, - "name": { - "type": "string", - "description": "Name of the audience.", - "example": "Test audience" - } - }, - "description": "Parameters needed to create an audience" - }, "UserBehaviorDetails": { "required": [ "lookbackWindow", @@ -7075,56 +6398,47 @@ }, "description": "Report response format" }, - "AsyncCampaignReportRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/AsyncCampaignReportResource" - } - }, - "description": "A top-level object that encapsulates a Criteo API request for a single value" - }, - "AsyncLineItemReportRequest": { + "AsyncCampaignsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/AsyncLineItemReportResource" + "$ref": "#/components/schemas/AsyncCampaignsReportResource" } }, "description": "A top-level object that encapsulates a Criteo API request for a single value" }, - "AsyncRevenueReportRequest": { + "AsyncLineItemsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/AsyncRevenueReportResource" + "$ref": "#/components/schemas/AsyncLineItemsReportResource" } }, "description": "A top-level object that encapsulates a Criteo API request for a single value" }, - "AttributedTransactionReportRequest": { + "SyncAttributedTransactionsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/AttributedTransactionReportResource" + "$ref": "#/components/schemas/SyncAttributedTransactionsReportResource" } }, "description": "A top-level object that encapsulates a Criteo API request for a single value" }, - "CampaignReportRequest": { + "SyncCampaignsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/CampaignReportResource" + "$ref": "#/components/schemas/SyncCampaignsReportResource" } }, "description": "A top-level object that encapsulates a Criteo API request for a single value" }, - "LineItemReportRequest": { + "SyncLineItemsReportRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/LineItemReportResource" + "$ref": "#/components/schemas/SyncLineItemsReportResource" } }, "description": "A top-level object that encapsulates a Criteo API request for a single value" @@ -7179,25 +6493,13 @@ "type": "object" } }, + "description": "Data response format", "nullable": true } }, "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "AsyncCampaignReportResource": { - "type": "object", - "properties": { - "type": { - "type": "string", - "nullable": true - }, - "attributes": { - "$ref": "#/components/schemas/AsyncCampaignReport" - } - }, - "description": "A top-level object that encapsulates a Criteo API response for a single value" - }, - "AsyncLineItemReportResource": { + "AsyncCampaignsReportResource": { "type": "object", "properties": { "type": { @@ -7205,12 +6507,12 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/AsyncLineItemReport" + "$ref": "#/components/schemas/AsyncCampaignsReport" } }, "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "AsyncRevenueReportResource": { + "AsyncLineItemsReportResource": { "type": "object", "properties": { "type": { @@ -7218,12 +6520,12 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/AsyncRevenueReport" + "$ref": "#/components/schemas/AsyncLineItemsReport" } }, "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "AttributedTransactionReportResource": { + "SyncAttributedTransactionsReportResource": { "type": "object", "properties": { "type": { @@ -7231,12 +6533,12 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/AttributedTransactionsReport" + "$ref": "#/components/schemas/SyncAttributedTransactionsReport" } }, "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "CampaignReportResource": { + "SyncCampaignsReportResource": { "type": "object", "properties": { "type": { @@ -7244,12 +6546,12 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/CampaignReport" + "$ref": "#/components/schemas/SyncCampaignsReport" } }, "description": "A top-level object that encapsulates a Criteo API response for a single value" }, - "LineItemReportResource": { + "SyncLineItemsReportResource": { "type": "object", "properties": { "type": { @@ -7257,7 +6559,7 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/LineItemReport" + "$ref": "#/components/schemas/SyncLineItemsReport" } }, "description": "A top-level object that encapsulates a Criteo API response for a single value" @@ -7380,7 +6682,7 @@ }, "description": "Description of a column from an async report request" }, - "AsyncCampaignReport": { + "AsyncCampaignsReport": { "required": [ "endDate", "startDate" @@ -7403,10 +6705,13 @@ "cpm", "roas", "uniqueVisitors", - "frequency" + "frequency", + "assistedUnits", + "assistedSales" ], "type": "string" }, + "description": "List of metrics to report on", "nullable": true }, "dimensions": { @@ -7414,6 +6719,7 @@ "items": { "enum": [ "date", + "hour", "campaignId", "campaignName", "campaignTypeName", @@ -7423,44 +6729,15 @@ "brandId", "brandName", "pageTypeName", + "environment", "keyword", - "salesChannel" + "salesChannel", + "retailerId", + "retailerName" ], "type": "string" }, - "nullable": true - }, - "clickAttributionWindow": { - "enum": [ - "7D", - "14D", - "30D", - "none" - ], - "type": "string", - "nullable": true - }, - "viewAttributionWindow": { - "enum": [ - "1D", - "7D", - "14D", - "30D", - "none" - ], - "type": "string", - "nullable": true - }, - "startDate": { - "type": "string", - "format": "date-time" - }, - "endDate": { - "type": "string", - "format": "date-time" - }, - "timezone": { - "type": "string", + "description": "List of dimensions to report on", "nullable": true }, "campaignType": { @@ -7469,6 +6746,7 @@ "onSiteDisplays" ], "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", "nullable": true }, "salesChannel": { @@ -7477,6 +6755,7 @@ "online" ], "type": "string", + "description": "Filter on specific sales channel: offline or online", "nullable": true }, "format": { @@ -7487,6 +6766,8 @@ "csv" ], "type": "string", + "description": "Format of the output", + "default": "json-compact", "nullable": true }, "reportType": { @@ -7496,26 +6777,73 @@ "keyword", "productCategory", "product", - "attributedTransactions" + "attributedTransactions", + "environment", + "servedCategory" ], "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", "nullable": true }, - "ids": { + "clickAttributionWindow": { + "enum": [ + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "Click attribution window", + "default": "none", + "nullable": true + }, + "viewAttributionWindow": { + "enum": [ + "1D", + "7D", + "14D", + "30D", + "none" + ], + "type": "string", + "description": "View attribution window", + "default": "none", + "nullable": true + }, + "ids": { "type": "array", "items": { "type": "string" }, + "description": "Ids to report on", "nullable": true }, "id": { "type": "string", + "description": "Id to report on", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", "nullable": true } }, "description": "Campaign report body request" }, - "AsyncLineItemReport": { + "AsyncLineItemsReport": { "required": [ "endDate", "startDate" @@ -7543,6 +6871,7 @@ ], "type": "string" }, + "description": "List of metrics to report on", "nullable": true }, "dimensions": { @@ -7550,6 +6879,7 @@ "items": { "enum": [ "date", + "hour", "campaignId", "campaignName", "campaignTypeName", @@ -7564,43 +6894,12 @@ "retailerName", "keyword", "pageTypeName", - "salesChannel" + "salesChannel", + "environment" ], "type": "string" }, - "nullable": true - }, - "clickAttributionWindow": { - "enum": [ - "7D", - "14D", - "30D", - "none" - ], - "type": "string", - "nullable": true - }, - "viewAttributionWindow": { - "enum": [ - "1D", - "7D", - "14D", - "30D", - "none" - ], - "type": "string", - "nullable": true - }, - "startDate": { - "type": "string", - "format": "date-time" - }, - "endDate": { - "type": "string", - "format": "date-time" - }, - "timezone": { - "type": "string", + "description": "List of dimensions to report on", "nullable": true }, "campaignType": { @@ -7609,6 +6908,7 @@ "onSiteDisplays" ], "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", "nullable": true }, "salesChannel": { @@ -7617,6 +6917,7 @@ "online" ], "type": "string", + "description": "Filter on specific sales channel: offline or online", "nullable": true }, "format": { @@ -7627,6 +6928,8 @@ "csv" ], "type": "string", + "description": "Format of the output", + "default": "json-compact", "nullable": true }, "reportType": { @@ -7636,49 +6939,38 @@ "keyword", "productCategory", "product", - "attributedTransactions" + "attributedTransactions", + "environment", + "servedCategory" ], "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", "nullable": true }, - "ids": { - "type": "array", - "items": { - "type": "string" - }, - "nullable": true - }, - "id": { - "type": "string", - "nullable": true - } - }, - "description": "Line Item report body request" - }, - "AsyncRevenueReport": { - "required": [ - "endDate", - "startDate" - ], - "type": "object", - "properties": { - "reportType": { + "clickAttributionWindow": { "enum": [ - "advertiser", - "environment", - "pageType", - "pageCategory", - "brand" + "7D", + "14D", + "30D", + "none" ], "type": "string", + "description": "Click attribution window", + "default": "none", "nullable": true }, - "revenueType": { + "viewAttributionWindow": { "enum": [ - "auction", - "preferred" + "1D", + "7D", + "14D", + "30D", + "none" ], "type": "string", + "description": "View attribution window", + "default": "none", "nullable": true }, "ids": { @@ -7686,111 +6978,34 @@ "items": { "type": "string" }, + "description": "Ids to report on", "nullable": true }, "id": { "type": "string", - "nullable": true - }, - "metrics": { - "type": "array", - "items": { - "enum": [ - "clicks", - "spend", - "attributedOrders", - "attributedSales", - "attributedUnits", - "cpc", - "cpo", - "roas", - "openAuctionRevenue", - "preferredDealsRevenue", - "avgCpc", - "avgCpm" - ], - "type": "string" - }, - "nullable": true - }, - "dimensions": { - "type": "array", - "items": { - "enum": [ - "date", - "accountId", - "accountName", - "environment", - "advProductCategory", - "brandId", - "brandName", - "pageTypeName" - ], - "type": "string" - }, - "nullable": true - }, - "format": { - "enum": [ - "json", - "json-compact", - "json-newline", - "csv" - ], - "type": "string", + "description": "Id to report on", "nullable": true }, "startDate": { "type": "string", + "description": "Start date", "format": "date-time" }, "endDate": { "type": "string", + "description": "End date", "format": "date-time" }, "timezone": { "type": "string", - "nullable": true - }, - "campaignType": { - "enum": [ - "sponsoredProducts", - "onSiteDisplays" - ], - "type": "string", - "nullable": true - }, - "salesChannel": { - "enum": [ - "offline", - "online" - ], - "type": "string", - "nullable": true - }, - "soldBy": { - "enum": [ - "directSold", - "indirectSold", - "privateMarket" - ], - "type": "string", - "description": "Filter on the type of seller", - "nullable": true - }, - "campaignSubType": { - "enum": [ - "auctionAndPreferred", - "lockout" - ], - "type": "string", - "description": "Filter on the campaign sub type", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", "nullable": true } }, - "description": "Async Revenue report body request" + "description": "Line Items report body request" }, - "AttributedTransactionsReport": { + "SyncAttributedTransactionsReport": { "required": [ "accountId", "endDate", @@ -7866,31 +7081,16 @@ "type": "string", "description": "Account id to report on" }, - "startDate": { - "type": "string", - "description": "Start date", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End Date", - "format": "date-time" - }, - "timezone": { - "type": "string", - "description": "Time zone : see criteo developer portal for supported time zones", - "default": "UTC", - "nullable": true - }, "clickAttributionWindow": { "enum": [ "7D", "14D", - "30D" + "30D", + "none" ], "type": "string", - "description": "Click Attribution Window", - "default": "7D", + "description": "Click attribution window", + "default": "none", "nullable": true }, "viewAttributionWindow": { @@ -7902,14 +7102,48 @@ "none" ], "type": "string", - "description": "View Attribution window", + "description": "View attribution window", "default": "none", "nullable": true + }, + "campaignType": { + "enum": [ + "sponsoredProducts", + "onSiteDisplays" + ], + "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", + "nullable": true + }, + "salesChannel": { + "enum": [ + "offline", + "online" + ], + "type": "string", + "description": "Filter on specific sales channel: offline or online", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", + "nullable": true } }, "description": "Attributed transactions report body request" }, - "CampaignReport": { + "SyncCampaignsReport": { "required": [ "accountId", "endDate", @@ -7923,9 +7157,13 @@ "pageType", "keyword", "productCategory", - "product" + "product", + "environment", + "servedCategory" ], "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", "nullable": true }, "campaignIds": { @@ -7952,7 +7190,9 @@ "cpm", "roas", "uniqueVisitors", - "frequency" + "frequency", + "assistedUnits", + "assistedSales" ], "type": "string" }, @@ -7964,6 +7204,7 @@ "items": { "enum": [ "date", + "hour", "campaignId", "campaignName", "campaignTypeName", @@ -7973,8 +7214,11 @@ "brandId", "brandName", "pageTypeName", + "environment", "keyword", - "salesChannel" + "salesChannel", + "retailerId", + "retailerName" ], "type": "string" }, @@ -7985,31 +7229,16 @@ "type": "string", "description": "Account id to report on" }, - "startDate": { - "type": "string", - "description": "Start date", - "format": "date-time" - }, - "endDate": { - "type": "string", - "description": "End Date", - "format": "date-time" - }, - "timezone": { - "type": "string", - "description": "Time zone : see criteo developer portal for supported time zones", - "default": "UTC", - "nullable": true - }, "clickAttributionWindow": { "enum": [ "7D", "14D", - "30D" + "30D", + "none" ], "type": "string", - "description": "Click Attribution Window", - "default": "7D", + "description": "Click attribution window", + "default": "none", "nullable": true }, "viewAttributionWindow": { @@ -8021,7 +7250,7 @@ "none" ], "type": "string", - "description": "View Attribution window", + "description": "View attribution window", "default": "none", "nullable": true }, @@ -8031,7 +7260,7 @@ "onSiteDisplays" ], "type": "string", - "description": "Filter the type of campaign to report on", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", "nullable": true }, "salesChannel": { @@ -8040,13 +7269,29 @@ "online" ], "type": "string", - "description": "Filter on the channel of sales", + "description": "Filter on specific sales channel: offline or online", "nullable": true - } + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", + "nullable": true + } }, "description": "Campaign report body request" }, - "LineItemReport": { + "SyncLineItemsReport": { "required": [ "accountId", "endDate", @@ -8060,9 +7305,13 @@ "pageType", "keyword", "productCategory", - "product" + "product", + "environment", + "servedCategory" ], "type": "string", + "description": "Type of report, if no dimensions/metrics are provided, falls back to summary reportType", + "default": "summary", "nullable": true }, "lineItemIds": { @@ -8070,6 +7319,7 @@ "items": { "type": "string" }, + "description": "Line item ids to report on", "nullable": true }, "campaignIds": { @@ -8077,6 +7327,7 @@ "items": { "type": "string" }, + "description": "Campaign ids to report on", "nullable": true }, "metrics": { @@ -8100,6 +7351,7 @@ ], "type": "string" }, + "description": "List of metrics to report on", "nullable": true }, "dimensions": { @@ -8107,6 +7359,7 @@ "items": { "enum": [ "date", + "hour", "campaignId", "campaignName", "campaignTypeName", @@ -8121,7 +7374,8 @@ "retailerName", "keyword", "pageTypeName", - "salesChannel" + "salesChannel", + "environment" ], "type": "string" }, @@ -8129,19 +7383,8 @@ "nullable": true }, "accountId": { - "type": "string" - }, - "startDate": { - "type": "string", - "format": "date-time" - }, - "endDate": { - "type": "string", - "format": "date-time" - }, - "timezone": { "type": "string", - "nullable": true + "description": "Account id to report on" }, "clickAttributionWindow": { "enum": [ @@ -8151,6 +7394,8 @@ "none" ], "type": "string", + "description": "Click attribution window", + "default": "none", "nullable": true }, "viewAttributionWindow": { @@ -8162,6 +7407,8 @@ "none" ], "type": "string", + "description": "View attribution window", + "default": "none", "nullable": true }, "campaignType": { @@ -8170,6 +7417,7 @@ "onSiteDisplays" ], "type": "string", + "description": "Filter the type of campaigns to report on: sponsoredProducts or onSiteDisplays", "nullable": true }, "salesChannel": { @@ -8178,10 +7426,27 @@ "online" ], "type": "string", + "description": "Filter on specific sales channel: offline or online", + "nullable": true + }, + "startDate": { + "type": "string", + "description": "Start date", + "format": "date-time" + }, + "endDate": { + "type": "string", + "description": "End date", + "format": "date-time" + }, + "timezone": { + "type": "string", + "description": "Time zone : see criteo developer portal for supported time zones", + "default": "UTC", "nullable": true } }, - "description": "Line item report body request" + "description": "Line Items report body request" }, "ValueResourceOutcomeOfCampaignBudgetOverrides": { "type": "object", @@ -8239,11 +7504,37 @@ "additionalProperties": false, "description": "A top-level object that encapsulates a Criteo API response for several entities." }, - "ValueResourceOutcomeOfSuggestedKeywordsResult": { + "ValueResourceOutcomeOfRecommendedKeywordsResult": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ValueResourceOfRecommendedKeywordsResult" + }, + "warnings": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommonProblem" + }, + "nullable": true, + "readOnly": true + } + }, + "additionalProperties": false, + "description": "A top-level object that encapsulates a Criteo API response for a single value." + }, + "ValueResourceOutcomeOfLineItemBudgetOverrides": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ValueResourceOfSuggestedKeywordsResult" + "$ref": "#/components/schemas/ValueResourceOfLineItemBudgetOverrides" }, "warnings": { "type": "array", @@ -8265,6 +7556,16 @@ "additionalProperties": false, "description": "A top-level object that encapsulates a Criteo API response for a single value." }, + "ValueResourceInputOfCampaignBudgetOverrides": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ValueResourceOfCampaignBudgetOverrides" + } + }, + "additionalProperties": false, + "description": "A top-level object that encapsulates a Criteo API request for a single value." + }, "SkuSearchRequest": { "required": [ "data" @@ -8278,6 +7579,16 @@ "additionalProperties": false, "description": "A top-level object that encapsulates a Criteo API request for a single entity." }, + "ValueResourceInputOfLineItemBudgetOverrides": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ValueResourceOfLineItemBudgetOverrides" + } + }, + "additionalProperties": false, + "description": "A top-level object that encapsulates a Criteo API request for a single value." + }, "ValueResourceOfCampaignBudgetOverrides": { "type": "object", "properties": { @@ -8311,7 +7622,21 @@ "additionalProperties": false, "description": "A class that represents a domain entity exposed by an API." }, - "ValueResourceOfSuggestedKeywordsResult": { + "ValueResourceOfRecommendedKeywordsResult": { + "type": "object", + "properties": { + "type": { + "type": "string", + "nullable": true + }, + "attributes": { + "$ref": "#/components/schemas/RecommendedKeywordsResult" + } + }, + "additionalProperties": false, + "description": "A top-level object that encapsulates a Criteo API response for a single value." + }, + "ValueResourceOfLineItemBudgetOverrides": { "type": "object", "properties": { "type": { @@ -8319,7 +7644,7 @@ "nullable": true }, "attributes": { - "$ref": "#/components/schemas/SuggestedKeywordsResult" + "$ref": "#/components/schemas/LineItemBudgetOverrides" } }, "additionalProperties": false, @@ -8464,7 +7789,7 @@ "additionalProperties": false, "description": "Data model for response resource" }, - "SuggestedKeywordsResult": { + "RecommendedKeywordsResult": { "type": "object", "properties": { "keywords": { @@ -8485,7 +7810,32 @@ } }, "additionalProperties": false, - "description": "Response model for suggested keywords" + "description": "Response model for recommended keywords" + }, + "LineItemBudgetOverrides": { + "required": [ + "dailyLineItemBudgetOverrides", + "monthlyLineItemBudgetOverrides" + ], + "type": "object", + "properties": { + "monthlyLineItemBudgetOverrides": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MonthlyLineItemBudegetOverride" + }, + "description": "Line item budget override monthly part, chronological order restricted." + }, + "dailyLineItemBudgetOverrides": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DailyLineItemBudgetOverride" + }, + "description": "Line item budget override daily part, chronological order restricted." + } + }, + "additionalProperties": false, + "description": "Line item budget overrides including Monthly and Daily budget overrides." }, "CampaignMonthlyBudgetOverride": { "required": [ @@ -8502,7 +7852,7 @@ }, "duration": { "type": "string", - "description": "Monthly budget override duration, e.g. \"1M\". Must be ending with \"M\"." + "description": "The number of MONTHs that the override is active from StartMonth, e.g. \"1M\". Must end with 'M' or 'm'." }, "maxMonthlySpend": { "type": "number", @@ -8538,7 +7888,7 @@ }, "duration": { "type": "string", - "description": "Daily budget override duration, e.g. \"1D\". Must be ending with D." + "description": "The number of DAYs that the override is active from StartDate, e.g. \"1D\". Must end with 'D' or 'd'." }, "maxDailySpend": { "type": "number", @@ -8612,95 +7962,108 @@ "additionalProperties": false, "description": "Data associated with a normalized keyword phrase" }, - "InputKeywords": { + "MonthlyLineItemBudegetOverride": { + "required": [ + "duration", + "maxMonthlySpend" + ], "type": "object", "properties": { - "negativeBroad": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of supplied negative broad phrased", + "startMonth": { + "type": "string", + "description": "Monthly budget override start month, format \"yyyy-MM\". If it is null, the StartMonth would be the following month of the last item in the override sequence.", + "format": "date-time", "nullable": true }, - "negativeExact": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of supplied negative exact phrase", - "nullable": true + "duration": { + "type": "string", + "description": "The number of MONTHs that the override is active from StartMonth, e.g. \"1M\". Must end with 'M' or 'm'." }, - "positiveExact": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of supplied positive exact phrases", + "maxMonthlySpend": { + "type": "number", + "description": "Monthly budget override maximum monthly spend amount.", + "format": "double" + }, + "status": { + "enum": [ + "Expired", + "Active", + "Upcoming" + ], + "type": "string", + "description": "Monthly budget override computed status.", "nullable": true } }, "additionalProperties": false, - "description": "Keywords submitted by the user binned by type after some cleanup has been performed" + "description": "The details for a monthly budget override" }, - "BalanceResponsePagedListResponse": { + "DailyLineItemBudgetOverride": { + "required": [ + "duration" + ], "type": "object", "properties": { - "metadata": { - "$ref": "#/components/schemas/PageMetadata" + "startDate": { + "type": "string", + "description": "Daily budget override start date, format \"yyyy-MM-dd\". If it is null, the StartDate would be the following date of the last item in the override sequence.", + "format": "date-time", + "nullable": true }, - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfBalanceResponse" - }, - "x-nullable": false + "duration": { + "type": "string", + "description": "The number of DAYs that the override is active from StartDate, e.g. \"1D\". Must end with 'D' or 'd'." }, - "warnings": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "readOnly": true, - "x-nullable": false + "maxDailySpend": { + "type": "number", + "description": "Daily budget override maximum daily spend amount.", + "format": "double", + "nullable": true }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommonProblem" - }, - "readOnly": true, - "x-nullable": false + "status": { + "enum": [ + "Expired", + "Active", + "Upcoming" + ], + "type": "string", + "description": "Daily budget override computed status.", + "nullable": true } }, - "description": "Data model for a paged list of response resources", - "x-nullable": false + "additionalProperties": false, + "description": "The details for a daily budget override" }, - "BalanceResponse": { + "InputKeywords": { "type": "object", "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfBalanceResponse" + "negativeBroad": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of supplied negative broad phrased", + "nullable": true }, - "warnings": { + "negativeExact": { "type": "array", "items": { - "$ref": "#/components/schemas/CommonProblem" + "type": "string" }, - "readOnly": true, - "x-nullable": false + "description": "The collection of supplied negative exact phrase", + "nullable": true }, - "errors": { + "positiveExact": { "type": "array", "items": { - "$ref": "#/components/schemas/CommonProblem" + "type": "string" }, - "readOnly": true, - "x-nullable": false + "description": "The collection of supplied positive exact phrases", + "nullable": true } }, - "description": "Data model for response resource", - "x-nullable": false + "additionalProperties": false, + "description": "Keywords submitted by the user binned by type after some cleanup has been performed" }, "JsonApiSingleResponseOfLineItemBidMultipliers": { "required": [ @@ -8785,89 +8148,23 @@ "description": "Data model for a list of response resources", "x-nullable": false }, - "ProductButtonResponse": { + "LineItemBidMultipliersRequest": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/ResourceOfLineItemBidMultipliers" + } + }, + "description": "Data model for an input resource", + "x-nullable": false + }, + "ProductButtonListRequest": { "type": "object", "properties": { "data": { - "$ref": "#/components/schemas/ResourceOfProductButtonResponse" - }, - "warnings": { "type": "array", "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - }, - "errors": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProblemDetails" - }, - "readOnly": true, - "x-nullable": false - } - }, - "description": "Data model for response resource", - "x-nullable": false - }, - "CreateBalanceRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfCreateBalance" - } - }, - "description": "Data model for an input resource", - "x-nullable": false - }, - "UpdateBalanceModelRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfUpdateBalanceModel" - } - }, - "description": "Data model for an input resource", - "x-nullable": false - }, - "AddFundsToBalanceRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfAddFundsToBalance" - } - }, - "description": "Data model for an input resource", - "x-nullable": false - }, - "ChangeDatesOfBalanceRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfChangeDatesOfBalance" - } - }, - "description": "Data model for an input resource", - "x-nullable": false - }, - "LineItemBidMultipliersRequest": { - "type": "object", - "properties": { - "data": { - "$ref": "#/components/schemas/ResourceOfLineItemBidMultipliers" - } - }, - "description": "Data model for an input resource", - "x-nullable": false - }, - "ProductButtonListRequest": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResourceOfProductButtonRequest" + "$ref": "#/components/schemas/ResourceOfProductButtonRequest" }, "x-nullable": false } @@ -8885,26 +8182,6 @@ "description": "Data model for an input resource", "x-nullable": false }, - "ResourceOfBalanceResponse": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ExternalBalanceResponse" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, "JsonApiBodyWithIdOfInt64AndLineItemBidMultipliersAndLineItemBidMultipliers": { "required": [ "id", @@ -8968,86 +8245,6 @@ "description": "Data model for an output resource", "x-nullable": false }, - "ResourceOfCreateBalance": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ExternalCreateBalance" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ResourceOfUpdateBalanceModel": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ExternalUpdateBalanceModel" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ResourceOfAddFundsToBalance": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ExternalAddFundsToBalance" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, - "ResourceOfChangeDatesOfBalance": { - "type": "object", - "properties": { - "attributes": { - "$ref": "#/components/schemas/ExternalChangeDatesOfBalance" - }, - "id": { - "type": "string", - "description": "Id of the entity", - "nullable": true - }, - "type": { - "type": "string", - "description": "Canonical type name of the entity", - "nullable": true - } - }, - "description": "Data model for a Resource", - "x-nullable": false - }, "ResourceOfProductButtonRequest": { "type": "object", "properties": { @@ -9068,130 +8265,6 @@ "description": "Data model for a Resource", "x-nullable": false }, - "ExternalBalanceResponse": { - "required": [ - "name", - "poNumber", - "memo", - "deposited", - "spent", - "remaining", - "startDate", - "endDate", - "status", - "createdAt", - "updatedAt", - "balanceType", - "salesForceId", - "spendType" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the balance.", - "x-nullable": false - }, - "poNumber": { - "type": "string", - "description": "Purchase Order number.", - "x-nullable": false - }, - "memo": { - "type": "string", - "description": "Memo", - "x-nullable": false - }, - "deposited": { - "required": [ - "false" - ], - "type": "number", - "description": "Amount of billable funds allotted to the balance.", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "spent": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "remaining": { - "required": [ - "false" - ], - "type": "number", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "status": { - "enum": [ - "unknown", - "scheduled", - "active", - "ended" - ], - "type": "string", - "x-nullable": false - }, - "createdAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "updatedAt": { - "type": "string", - "format": "date-time", - "x-nullable": false - }, - "balanceType": { - "enum": [ - "unknown", - "capped", - "uncapped" - ], - "type": "string", - "description": "Type of the balance", - "x-nullable": false - }, - "salesForceId": { - "type": "string", - "description": "SalesForceId the balance is linked to.", - "x-nullable": false - }, - "spendType": { - "enum": [ - "Onsite", - "Offsite", - "OffsiteAwareness" - ], - "type": "string", - "description": "Spend Type of the balance.", - "x-nullable": false - } - }, - "description": "A Retail Media Balance used to determine the funds available for any or all campaigns in an account", - "x-nullable": false - }, "LineItemBidMultipliers": { "type": "object", "properties": { @@ -9284,168 +8357,6 @@ "description": "The Product Button entity used for output", "x-nullable": false }, - "ExternalCreateBalance": { - "required": [ - "name", - "deposited", - "startDate", - "endDate", - "spendType", - "memo", - "salesForceId" - ], - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the balance.", - "x-nullable": false - }, - "poNumber": { - "type": "string", - "description": "Purchase Order number.", - "x-nullable": false - }, - "deposited": { - "required": [ - "false" - ], - "type": "number", - "description": "Amount of billable funds allotted to the balance.", - "format": "decimal", - "nullable": true, - "x-nullable": true - }, - "startDate": { - "required": [ - "true" - ], - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "spendType": { - "enum": [ - "Onsite", - "Offsite", - "OffsiteAwareness" - ], - "type": "string", - "description": "Type of the balance spend.", - "x-nullable": false - }, - "memo": { - "type": "string", - "description": "Memo", - "x-nullable": false - }, - "salesForceId": { - "type": "string", - "description": "SalesForceId the balance is linked to.", - "x-nullable": false - } - }, - "description": "An object that represents the available options to set when creating a Retail Media Balance", - "x-nullable": false - }, - "ExternalUpdateBalanceModel": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the balance.", - "x-nullable": false - }, - "poNumber": { - "type": "string", - "description": "Purchase Order number.", - "x-nullable": false - }, - "salesForceId": { - "type": "string", - "description": "SalesForceId the balance is linked to.", - "x-nullable": false - }, - "startDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date", - "nullable": true - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date", - "nullable": true - }, - "memo": { - "type": "string", - "description": "Memo", - "x-nullable": false - } - }, - "description": "An object that represents the available options to set when updating a Retail Media Balance", - "x-nullable": false - }, - "ExternalAddFundsToBalance": { - "required": [ - "deltaAmount", - "memo" - ], - "type": "object", - "properties": { - "deltaAmount": { - "type": "number", - "description": "Amount of billable funds to be added / decreased allotted to the balance.", - "format": "double", - "x-nullable": false - }, - "poNumber": { - "type": "string", - "description": "Purchase Order number.", - "x-nullable": false - }, - "memo": { - "type": "string", - "description": "Memo", - "x-nullable": false - } - }, - "description": "An object that represents the available options of adding funds to a balance.", - "x-nullable": false - }, - "ExternalChangeDatesOfBalance": { - "required": [ - "startDate", - "endDate", - "memo" - ], - "type": "object", - "properties": { - "startDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "endDate": { - "type": "string", - "description": "Represents the Date as a year, month, and day in the format YYYY-MM-DD", - "format": "date" - }, - "memo": { - "type": "string", - "description": "Memo", - "x-nullable": false - } - }, - "description": "An object that represents the available options to modify schedule of a balance.", - "x-nullable": false - }, "ExternalProductButtonRequest": { "required": [ "name",