Contents

Get Ad-Level Reports

Fetches ad performance data within a campaign.

URL

POST https://api.searchads.apple.com/api/v5/reports/campaigns/{campaignId}/ads

Path Parameters

NameTypeDescription
campaignId Requiredint64

The unique identifier for the campaign.

Response Codes

StatusReasonTypeDescription
200OK
Content-Type: application/json
ReportingResponseBody

If the call succeeds, the API returns the ReportingResponse object in the response payload with an HTTP status code of 200 (OK). If unsuccessful, the HTTP status code indicates the error with details in the error message.

400Bad Request
Content-Type: application/json
ApiErrorResponse

An invalid query or missing required parameters.

401Unauthorized
Content-Type: application/json
ApiErrorResponse

An unauthenticated call fails to get the requested response.

403Forbidden
Content-Type: application/json
ApiErrorResponse

Insufficient rights to the resource.

404Not Found
Content-Type: application/json
ApiErrorResponse

The API can’t locate the resource.

429
Content-Type: application/json
ApiErrorResponse

The API calls exceed rate-limit thresholds. See the Rate Limits subsection of Calling the Apple Ads API.

500Internal Server Error
Content-Type: application/json
ApiErrorResponse

The Apple Ads server is temporarily down or unreachable. The request may be valid, but you need to retry it later.

Mentioned in

Discussion

Use this endpoint to return performance data for ads within your campaigns. The orderBy Selector is required in ad-level report requests. See ReportingAd to identify fields you can use with orderBy. To filter results, use selector Condition operators and field values that the ReportingAd object specifies. You can only perform GroupBy on the CountryOrRegion field. See ReportingRequest.

Historical ad-level metrics for the APPSTORE_SEARCH_TAB placement from before API version 5.2 release are reported against adId=-1. For APPSTORE_SEARCH_TAB ad-level metrics after API version 5.2 release, all default product page ads are reported against a new, real adId in reporting payloads.

You can map your campaign installations by adId through the AdServices attribution framework.

Payload example: Get ad-level reports

HTTP Body

The report request body consisting of metrics and dimensions to use as filters.

See Also

Reports Endpoints