{"info": {"description":"These APIs are part of the Amazon DSP Campaign Management API closed beta and only accessible to closed beta participants at this time. Because these APIs are in closed beta, they don’t follow our normal versioning standards and are subject to change. If you are interested in joining the closed beta, please [submit a support ticket](https://amzn-clicks.atlassian.net/servicedesk/customer/portal/2/group/2/create/5) and we’ll follow up with additional information. <br><br> Target users based on country, state, DMA, county, city, and/or postal code. The maximum number of total geoLocations on an ad group is 20,000.","title":"Ad Group Targeting - Geo Locations","version":"3.0"},"paths": {"/dsp/adGroups/{adGroupId}/targetingTypes/geoLocation/targets":{"post":{"requestBody":{"content":{"application/vnd.dspAdGroupGeoLocationTargets.v1+json":{"schema":{"$ref":"#/components/schemas/DspCreateAdGroupGeoLocationTargetsRequestContentV1"}}},"required":true},"description":"Create one or more geo location targets to include or exclude it from targeting. Users in each location can be included or excluded from targeting. You can specify the signals used to determine a users location in the `userLocationSignal` field in the /dsp/adGroups resource.\n\n**Requires one of these permissions**:\n[]","operationId":"DspCreateAdGroupGeoLocationTargets","responses":{"400":{"description":"Bad Request or request body is not matching with input model.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspBadRequestExceptionV1ResponseContent"}}}},"401":{"description":"Unauthenticated request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnauthorizedExceptionV1ResponseContent"}}}},"500":{"description":"Internal Server Error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspInternalServerExceptionV1ResponseContent"}}}},"204":{"description":"Success with no body content."},"403":{"description":"Forbidden - Request failed because user is not authorized to access a resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspForbiddenExceptionV1ResponseContent"}}}},"404":{"description":"Not Found - Requested resource does not exist or is not visible for the authenticated user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspNotFoundExceptionV1ResponseContent"}}}},"415":{"description":"Unsupported Media Type - Version not supported.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnsupportedMediaTypeExceptionV1ResponseContent"}}}},"429":{"description":"Too Many Requests - Request was rate-limited. Retry later.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspTooManyRequestsExceptionV1ResponseContent"}}}},"409":{"description":"DspConflictExceptionV1 409 response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspConflictExceptionV1ResponseContent"}}}}},"parameters":[{"schema":{"description":"The ad group identifier.","type":"string"},"in":"path","name":"adGroupId","description":"The ad group identifier.","required":true},{"schema":{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","type":"string"},"in":"header","name":"Amazon-Ads-AccountId","description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","required":true},{"schema":{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","type":"string"},"in":"header","name":"Amazon-Advertising-API-ClientId","description":"The identifier of a client associated with a \"Login with Amazon\" account.","required":true},{"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"},"in":"header","name":"Amazon-Advertising-API-Scope","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.","required":true}],"tags":["Ad Group Targeting - Geo Locations"]},"get":{"description":"Gets a list of geo location targets associated to an ad group.\n\n**Requires one of these permissions**:\n[]","operationId":"DspGetAdGroupGeoLocationTargets","responses":{"200":{"description":"Successful operation.","content":{"application/vnd.dspAdGroupGeoLocationTargets.v1+json":{"schema":{"$ref":"#/components/schemas/DspGetAdGroupGeoLocationTargetsResponseContent"}}}},"400":{"description":"Bad Request or request body is not matching with input model.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspBadRequestExceptionV1ResponseContent"}}}},"401":{"description":"Unauthenticated request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnauthorizedExceptionV1ResponseContent"}}}},"500":{"description":"Internal Server Error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspInternalServerExceptionV1ResponseContent"}}}},"403":{"description":"Forbidden - Request failed because user is not authorized to access a resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspForbiddenExceptionV1ResponseContent"}}}},"404":{"description":"Not Found - Requested resource does not exist or is not visible for the authenticated user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspNotFoundExceptionV1ResponseContent"}}}},"415":{"description":"Unsupported Media Type - Version not supported.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnsupportedMediaTypeExceptionV1ResponseContent"}}}},"429":{"description":"Too Many Requests - Request was rate-limited. Retry later.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspTooManyRequestsExceptionV1ResponseContent"}}}},"409":{"description":"DspConflictExceptionV1 409 response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspConflictExceptionV1ResponseContent"}}}}},"parameters":[{"schema":{"description":"The ad group identifier.","type":"string"},"in":"path","name":"adGroupId","description":"The ad group identifier.","required":true},{"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.","type":"string"},"in":"query","name":"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."},{"schema":{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","type":"string"},"in":"header","name":"Amazon-Ads-AccountId","description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","required":true},{"schema":{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","type":"string"},"in":"header","name":"Amazon-Advertising-API-ClientId","description":"The identifier of a client associated with a \"Login with Amazon\" account.","required":true},{"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"},"in":"header","name":"Amazon-Advertising-API-Scope","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.","required":true}],"tags":["Ad Group Targeting - Geo Locations"]}},"/dsp/adGroups/{adGroupId}/targetingTypes/geoLocation/targets/delete":{"post":{"requestBody":{"content":{"application/vnd.dspAdGroupGeoLocationTargets.v1+json":{"schema":{"$ref":"#/components/schemas/DspDeleteAdGroupGeoLocationTargetsRequestContentV1"}}},"required":true},"description":"Remove one or more geo locations from an ad group.\n\n**Requires one of these permissions**:\n[]","operationId":"DspDeleteAdGroupGeoLocationTargets","responses":{"400":{"description":"Bad Request or request body is not matching with input model.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspBadRequestExceptionV1ResponseContent"}}}},"401":{"description":"Unauthenticated request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnauthorizedExceptionV1ResponseContent"}}}},"500":{"description":"Internal Server Error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspInternalServerExceptionV1ResponseContent"}}}},"204":{"description":"Success with no body content."},"403":{"description":"Forbidden - Request failed because user is not authorized to access a resource.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspForbiddenExceptionV1ResponseContent"}}}},"404":{"description":"Not Found - Requested resource does not exist or is not visible for the authenticated user.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspNotFoundExceptionV1ResponseContent"}}}},"415":{"description":"Unsupported Media Type - Version not supported.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspUnsupportedMediaTypeExceptionV1ResponseContent"}}}},"429":{"description":"Too Many Requests - Request was rate-limited. Retry later.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspTooManyRequestsExceptionV1ResponseContent"}}}},"409":{"description":"DspConflictExceptionV1 409 response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DspConflictExceptionV1ResponseContent"}}}}},"parameters":[{"schema":{"description":"The ad group identifier.","type":"string"},"in":"path","name":"adGroupId","description":"The ad group identifier.","required":true},{"schema":{"description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","type":"string"},"in":"header","name":"Amazon-Ads-AccountId","description":"Account identifier you use to access the DSP. This is your Amazon DSP Advertiser ID.","required":true},{"schema":{"description":"The identifier of a client associated with a \"Login with Amazon\" account.","type":"string"},"in":"header","name":"Amazon-Advertising-API-ClientId","description":"The identifier of a client associated with a \"Login with Amazon\" account.","required":true},{"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"},"in":"header","name":"Amazon-Advertising-API-Scope","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.","required":true}],"tags":["Ad Group Targeting - Geo Locations"]}}},"components": {"headers":{},"examples":{},"schemas":{"DspGetAdGroupGeoLocationTargetsResponseContent":{"type":"object","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"},"geoLocationTargets":{"minItems":0,"maxItems":20000,"description":"A list of targets.","type":"array","items":{"$ref":"#/components/schemas/DspAdGroupGeoLocationTargetsV1"}}},"required":["geoLocationTargets"]},"DspSubErrorV1":{"type":"object","properties":{"fieldName":{"type":"string"},"errorType":{"type":"string"},"message":{"type":"string"}},"required":["errorType","message"]},"DspCreateAdGroupGeoLocationTargetsRequestContentV1":{"type":"object","properties":{"geoLocationTargets":{"minItems":1,"maxItems":1000,"description":"A list of targets.","type":"array","items":{"$ref":"#/components/schemas/DspAdGroupGeoLocationTargetsV1"}}},"required":["geoLocationTargets"]},"DspUnsupportedMediaTypeExceptionV1ResponseContent":{"type":"object","properties":{"requestId":{"type":"string"},"message":{"type":"string"},"errors":{"minItems":1,"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/DspSubErrorV1"}}}},"DspConflictExceptionV1ResponseContent":{"type":"object","properties":{"requestId":{"type":"string"},"message":{"type":"string"},"errors":{"minItems":1,"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/DspSubErrorV1"}}}},"DspAdGroupGeoLocationTargetsV1":{"type":"object","properties":{"negative":{"description":"Whether to include (false) or exclude (true) users who match the given target when serving an ad.","type":"boolean"},"geoLocationId":{"description":"The unique identifier for the location. Use the [geoLocations](https://advertising.amazon.com/API/docs/en-us/dsp-campaigns/#/Discovery/getGeoLocations) discovery resource to look up geoLocation identifiers.","type":"string"}},"required":["geoLocationId","negative"]},"DspBadRequestExceptionV1ResponseContent":{"type":"object","properties":{"requestId":{"type":"string"},"message":{"type":"string"},"errors":{"minItems":1,"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/DspSubErrorV1"}}}},"DspDeleteAdGroupGeoLocationTargetsRequestContentV1":{"type":"object","properties":{"geoLocationTargets":{"minItems":1,"maxItems":1000,"description":"A list of targets.","type":"array","items":{"$ref":"#/components/schemas/DspAdGroupGeoLocationTargetsV1"}}},"required":["geoLocationTargets"]},"DspInternalServerExceptionV1ResponseContent":{"type":"object","properties":{"requestId":{"type":"string"},"message":{"type":"string"},"errors":{"minItems":1,"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/DspSubErrorV1"}}}},"DspTooManyRequestsExceptionV1ResponseContent":{"type":"object","properties":{"requestId":{"type":"string"},"message":{"type":"string"},"errors":{"minItems":1,"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/DspSubErrorV1"}}}},"DspForbiddenExceptionV1ResponseContent":{"type":"object","properties":{"requestId":{"type":"string"},"message":{"type":"string"},"errors":{"minItems":1,"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/DspSubErrorV1"}}}},"DspUnauthorizedExceptionV1ResponseContent":{"type":"object","properties":{"requestId":{"type":"string"},"message":{"type":"string"},"errors":{"minItems":1,"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/DspSubErrorV1"}}}},"DspNotFoundExceptionV1ResponseContent":{"type":"object","properties":{"requestId":{"type":"string"},"message":{"type":"string"},"errors":{"minItems":1,"maxItems":100,"type":"array","items":{"$ref":"#/components/schemas/DspSubErrorV1"}}}}},"requestBodies":{},"responses":{},"callbacks":{},"links":{},"securitySchemes":{},"parameters":{}},"openapi": "3.0.1"}