{"components":{"callbacks":{},"examples":{},"headers":{},"links":{},"parameters":{},"requestBodies":{},"responses":{},"schemas":{"DspBadRequestExceptionResponseContent":{"properties":{"errors":{"items":{"$ref":"#/components/schemas/DspSubError"},"maxItems":100,"minItems":1,"type":"array"},"requestId":{"type":"string"}},"type":"object"},"DspBatchError":{"properties":{"index":{"description":"The position of the product in the request body.","type":"integer"},"subErrors":{"items":{"$ref":"#/components/schemas/DspSubError"},"type":"array"}},"required":["index","subErrors"],"type":"object"},"DspBatchSuccess":{"description":"Success response","properties":{"index":{"description":"The position of the product in the request body.","type":"integer"}},"required":["index"],"type":"object"},"DspConflictExceptionResponseContent":{"properties":{"errors":{"items":{"$ref":"#/components/schemas/DspSubError"},"maxItems":100,"minItems":1,"type":"array"},"requestId":{"type":"string"}},"type":"object"},"DspDeleteProductConversionTrackingV1ResponseContent":{"description":"The update or delete operation response. If everything is successful, the errors array is omitted. If everything fails, the success array is omitted.","properties":{"errors":{"description":"The list of errors.","items":{"$ref":"#/components/schemas/DspBatchError"},"maxItems":2000,"minItems":1,"type":"array"},"requestId":{"type":"string"},"success":{"description":"The list of success.","items":{"$ref":"#/components/schemas/DspBatchSuccess"},"maxItems":2000,"minItems":1,"type":"array"}},"type":"object"},"DspForbiddenExceptionResponseContent":{"properties":{"errors":{"items":{"$ref":"#/components/schemas/DspSubError"},"maxItems":100,"minItems":1,"type":"array"},"requestId":{"type":"string"}},"type":"object"},"DspGetCampaignConversionTrackingProductsV1ResponseContent":{"properties":{"nextToken":{"description":"Operations that return paginated results include a pagination token in this field. To retrieve the next page of results, call the same operation and specify this token in the request. If the nextToken field is empty, there are no further results.","type":"string"},"productTrackingList":{"description":"A list of products","items":{"$ref":"#/components/schemas/ProductTrackingItemGet"},"type":"array"}},"type":"object"},"DspInternalServerExceptionResponseContent":{"properties":{"errors":{"items":{"$ref":"#/components/schemas/DspSubError"},"maxItems":100,"minItems":1,"type":"array"},"requestId":{"type":"string"}},"type":"object"},"DspNotFoundExceptionResponseContent":{"properties":{"errors":{"items":{"$ref":"#/components/schemas/DspSubError"},"maxItems":100,"minItems":1,"type":"array"},"requestId":{"type":"string"}},"type":"object"},"DspPostProductConversionTrackingV1ResponseContent":{"description":"The update or delete operation response. If everything is successful, the errors array is omitted. If everything fails, the success array is omitted.","properties":{"errors":{"description":"The list of errors.","items":{"$ref":"#/components/schemas/DspBatchError"},"maxItems":2000,"minItems":1,"type":"array"},"requestId":{"type":"string"},"success":{"description":"The list of success.","items":{"$ref":"#/components/schemas/DspBatchSuccess"},"maxItems":2000,"minItems":1,"type":"array"}},"type":"object"},"DspProductConversionTrackingRequestContent":{"properties":{"productTrackingList":{"description":"A list of products","items":{"$ref":"#/components/schemas/ProductTrackingItemUpdate"},"maxItems":2000,"minItems":1,"type":"array"}},"required":["productTrackingList"],"type":"object"},"DspSubError":{"properties":{"errorCode":{"type":"string"},"errorId":{"type":"string"},"errorMessage":{"type":"string"}},"required":["errorCode","errorMessage"],"type":"object"},"DspTooManyRequestsExceptionResponseContent":{"properties":{"errors":{"items":{"$ref":"#/components/schemas/DspSubError"},"maxItems":100,"minItems":1,"type":"array"},"requestId":{"type":"string"}},"type":"object"},"DspUnauthorizedExceptionResponseContent":{"properties":{"errors":{"items":{"$ref":"#/components/schemas/DspSubError"},"maxItems":100,"minItems":1,"type":"array"},"requestId":{"type":"string"}},"type":"object"},"DspUnsupportedMediaTypeExceptionResponseContent":{"properties":{"errors":{"items":{"$ref":"#/components/schemas/DspSubError"},"maxItems":100,"minItems":1,"type":"array"},"requestId":{"type":"string"}},"type":"object"},"ProductAssociationType":{"description":"A featured ASIN is a specific product that’s promoted in creatives within this campaign. Tracking non-featured ASINs or variations, in addition to featured and parent ASINs, will ensure proper conversion metrics and prevent data loss that is not recoverable once a campaign starts.","enum":["FEATURED","FEATURED_WITH_VARIATION","NOT_FEATURED"],"type":"string"},"ProductDomainGet":{"description":"The Amazon domain where the ASIN is sold. This should be where you are running your campaign.\n\nTo track ASINs across multiple geographies, each ASIN must be added once per domain. For example, if you want to run a campaign across Amazon.com and Amazon.ca, you must add the same ASIN for each of these domains.","enum":["AMAZON_AE","AMAZON_AU","AMAZON_BE","AMAZON_BR","AMAZON_CA","AMAZON_DE","AMAZON_EG","AMAZON_ES","AMAZON_FR","AMAZON_IE","AMAZON_IN","AMAZON_IT","AMAZON_JP","AMAZON_MX","AMAZON_NL","AMAZON_PL","AMAZON_SA","AMAZON_SE","AMAZON_SG","AMAZON_TR","AMAZON_UK","AMAZON_US","AMAZON_ZA","FRESH_STORES_US","OTHER","PRIME_NOW_CA","PRIME_NOW_DE","PRIME_NOW_ES","PRIME_NOW_FR","PRIME_NOW_IT","PRIME_NOW_JP","PRIME_NOW_UK","PRIME_NOW_US","PRIME_VIDEO_ROW_NA","WHOLE_FOODS_MARKET_US"],"type":"string"},"ProductDomainUpdate":{"description":"The Amazon domain where the ASIN is sold. This should be where you are running your campaign.\n\nTo track ASINs across multiple geographies, each ASIN must be added once per domain. For example, if you want to run a campaign across Amazon.com and Amazon.ca, you must add the same ASIN for each of these domains.","enum":["AMAZON_AE","AMAZON_AU","AMAZON_BE","AMAZON_BR","AMAZON_CA","AMAZON_DE","AMAZON_EG","AMAZON_ES","AMAZON_FR","AMAZON_IE","AMAZON_IN","AMAZON_IT","AMAZON_JP","AMAZON_MX","AMAZON_NL","AMAZON_PL","AMAZON_SA","AMAZON_SE","AMAZON_SG","AMAZON_TR","AMAZON_UK","AMAZON_US","AMAZON_ZA","FRESH_STORES_US","WHOLE_FOODS_MARKET_US"],"type":"string"},"ProductTrackingItemGet":{"properties":{"domain":{"$ref":"#/components/schemas/ProductDomainGet"},"productAssociation":{"$ref":"#/components/schemas/ProductAssociationType"},"productId":{"description":"The Amazon Standard Identification Number (ASIN).","maxLength":10,"minLength":10,"type":"string"}},"required":["domain","productAssociation","productId"],"type":"object"},"ProductTrackingItemUpdate":{"properties":{"domain":{"$ref":"#/components/schemas/ProductDomainUpdate"},"productAssociation":{"$ref":"#/components/schemas/ProductAssociationType"},"productId":{"description":"The Amazon Standard Identification Number (ASIN).","maxLength":10,"minLength":10,"type":"string"}},"required":["domain","productAssociation","productId"],"type":"object"}},"securitySchemes":{}},"info":{"description":"Gets or updates products associated to a campaign to enable product-related conversion metrics.","title":"Campaign Conversion Tracking - Products - V1","version":"3.0"},"openapi":"3.0.1","paths":{"/dsp/v1/campaigns/{campaignId}/conversionTracking/products":{"get":{"description":"Gets the conversion tracking products for a given campaign.\n\n**Authorized resource type**:\nDSP Rodeo Entity ID, DSP Advertiser Account ID\n\n**Parameter name**:\nAmazon-Ads-AccountId\n\n**Parameter in**:\nheader\n\n**Requires one of these permissions**:\n[\"campaign_view\"]","operationId":"DspGetCampaignConversionTrackingProductsV1","parameters":[{"description":"The campaign identifier.","in":"path","name":"campaignId","required":true,"schema":{"description":"The campaign identifier.","type":"string"}},{"description":"Operations that return paginated results include a pagination token in this field. To retrieve the next page of results, call the same operation and specify this token in the request. If the nextToken field is empty, there are no further results. Token expires 59 seconds after last call.","in":"query","name":"nextToken","schema":{"description":"Operations that return paginated results include a pagination token in this field. To retrieve the next page of results, call the same operation and specify this token in the request. If the nextToken field is empty, there are no further results. Token expires 59 seconds after last call.","type":"string"}},{"description":"Sets the maximum number of objects in the returned array. Use in conjunction with the nextToken parameter to control pagination. For example, supplying maxResults\u003d20 with a previously returned token will fetch up to the next 20 items. In some cases, fewer items may be returned.\u003cbr/\u003eDefault: 10000","in":"query","name":"maxResults","schema":{"description":"Sets the maximum number of objects in the returned array. Use in conjunction with the nextToken parameter to control pagination. For example, supplying maxResults\u003d20 with a previously returned token will fetch up to the next 20 items. In some cases, fewer items may be returned.\u003cbr/\u003eDefault: 10000","maximum":10000,"minimum":1,"type":"integer"}},{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","in":"header","name":"Amazon-Ads-AccountId","required":true,"schema":{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","type":"string"}},{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","in":"header","name":"Amazon-Advertising-API-ClientId","required":true,"schema":{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","type":"string"}},{"description":"The identifier of a profile associated with the advertiser account. Use GET method on Profiles resource to list profiles associated with the access token passed in the HTTP Authorization header.","in":"header","name":"Amazon-Advertising-API-Scope","schema":{"description":"The identifier of a profile associated with the advertiser account. Use GET method on Profiles resource to list profiles associated with the access token passed in the HTTP Authorization header.","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspGetCampaignConversionTrackingProductsV1ResponseContent"}}},"description":"Successful operation."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspBadRequestExceptionResponseContent"}}},"description":"Bad Request or request body is not matching with input model."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnauthorizedExceptionResponseContent"}}},"description":"Unauthenticated request."},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspForbiddenExceptionResponseContent"}}},"description":"Forbidden - Request failed because user is not authorized to access a resource."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspNotFoundExceptionResponseContent"}}},"description":"Not Found - Requested resource does not exist or is not visible for the authenticated user."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspConflictExceptionResponseContent"}}},"description":"Conflict detected. A change has been made to the line items data since these draft changes were started. Create a new draft set and retry the commit with the new set."},"415":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnsupportedMediaTypeExceptionResponseContent"}}},"description":"Unsupported Media Type - Version not supported."},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspTooManyRequestsExceptionResponseContent"}}},"description":"Too Many Requests - Request was rate-limited. Retry later."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspInternalServerExceptionResponseContent"}}},"description":"Internal Server Error."}},"tags":["Product Conversion Tracking"]},"post":{"description":"Adds products to a campaign to enable product-related conversion metrics. Newly added products will be appended to an existing list. Products may be added in batches of 2,000 and a campaign can track a maximum of 500,000 products.\n\n**Authorized resource type**:\nDSP Rodeo Entity ID, DSP Advertiser Account ID\n\n**Parameter name**:\nAmazon-Ads-AccountId\n\n**Parameter in**:\nheader\n\n**Requires one of these permissions**:\n[\"campaign_edit\"]","operationId":"DspPostProductConversionTrackingV1","parameters":[{"description":"The campaign identifier.","in":"path","name":"campaignId","required":true,"schema":{"description":"The campaign identifier.","type":"string"}},{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","in":"header","name":"Amazon-Ads-AccountId","required":true,"schema":{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","type":"string"}},{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","in":"header","name":"Amazon-Advertising-API-ClientId","required":true,"schema":{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","type":"string"}},{"description":"The identifier of a profile associated with the advertiser account. Use GET method on Profiles resource to list profiles associated with the access token passed in the HTTP Authorization header.","in":"header","name":"Amazon-Advertising-API-Scope","schema":{"description":"The identifier of a profile associated with the advertiser account. Use GET method on Profiles resource to list profiles associated with the access token passed in the HTTP Authorization header.","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspProductConversionTrackingRequestContent"}}},"required":true},"responses":{"207":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspPostProductConversionTrackingV1ResponseContent"}}},"description":"Multi-status. This holds arrays of items which represent success or failure."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspBadRequestExceptionResponseContent"}}},"description":"Bad Request or request body is not matching with input model."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnauthorizedExceptionResponseContent"}}},"description":"Unauthenticated request."},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspForbiddenExceptionResponseContent"}}},"description":"Forbidden - Request failed because user is not authorized to access a resource."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspNotFoundExceptionResponseContent"}}},"description":"Not Found - Requested resource does not exist or is not visible for the authenticated user."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspConflictExceptionResponseContent"}}},"description":"Conflict detected. A change has been made to the line items data since these draft changes were started. Create a new draft set and retry the commit with the new set."},"415":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnsupportedMediaTypeExceptionResponseContent"}}},"description":"Unsupported Media Type - Version not supported."},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspTooManyRequestsExceptionResponseContent"}}},"description":"Too Many Requests - Request was rate-limited. Retry later."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspInternalServerExceptionResponseContent"}}},"description":"Internal Server Error."}},"tags":["Product Conversion Tracking"]}},"/dsp/v1/campaigns/{campaignId}/conversionTracking/products/delete":{"post":{"description":"Removes one or more products from campaign conversion tracking.\n\n**Authorized resource type**:\nDSP Rodeo Entity ID, DSP Advertiser Account ID\n\n**Parameter name**:\nAmazon-Ads-AccountId\n\n**Parameter in**:\nheader\n\n**Requires one of these permissions**:\n[\"campaign_edit\"]","operationId":"DspDeleteProductConversionTrackingV1","parameters":[{"description":"The campaign identifier.","in":"path","name":"campaignId","required":true,"schema":{"description":"The campaign identifier.","type":"string"}},{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","in":"header","name":"Amazon-Ads-AccountId","required":true,"schema":{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","type":"string"}},{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","in":"header","name":"Amazon-Advertising-API-ClientId","required":true,"schema":{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","type":"string"}},{"description":"The identifier of a profile associated with the advertiser account. Use GET method on Profiles resource to list profiles associated with the access token passed in the HTTP Authorization header.","in":"header","name":"Amazon-Advertising-API-Scope","schema":{"description":"The identifier of a profile associated with the advertiser account. Use GET method on Profiles resource to list profiles associated with the access token passed in the HTTP Authorization header.","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspProductConversionTrackingRequestContent"}}},"required":true},"responses":{"207":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspDeleteProductConversionTrackingV1ResponseContent"}}},"description":"Multi-status. This holds arrays of items which represent success or failure."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspBadRequestExceptionResponseContent"}}},"description":"Bad Request or request body is not matching with input model."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnauthorizedExceptionResponseContent"}}},"description":"Unauthenticated request."},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspForbiddenExceptionResponseContent"}}},"description":"Forbidden - Request failed because user is not authorized to access a resource."},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspNotFoundExceptionResponseContent"}}},"description":"Not Found - Requested resource does not exist or is not visible for the authenticated user."},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspConflictExceptionResponseContent"}}},"description":"Conflict detected. A change has been made to the line items data since these draft changes were started. Create a new draft set and retry the commit with the new set."},"415":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnsupportedMediaTypeExceptionResponseContent"}}},"description":"Unsupported Media Type - Version not supported."},"429":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspTooManyRequestsExceptionResponseContent"}}},"description":"Too Many Requests - Request was rate-limited. Retry later."},"500":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspInternalServerExceptionResponseContent"}}},"description":"Internal Server Error."}},"tags":["Product Conversion Tracking"]}}}}