---
title: "Get user account top pins analytics"
method: GET
path: "/user_account/analytics/top_pins"
tags: ["user_account"]
---

# Get user account top pins analytics

`GET /user_account/analytics/top_pins`

Gets analytics data about a user's top pins (limited to the top 50).
- By default, the "operation user_account" is the token user_account.

Optional: Business Access: Specify an ad_account_id to use the owner of that ad_account as the "operation user_account".

## Query parameters

- `start_date` string, date, required
- `end_date` string, date, required
- `sort_by` 'ENGAGEMENT' | 'SAVE' | 'IMPRESSION' | 'OUTBOUND_CLICK' | 'PIN_CLICK', required — Sort metric for top pins analytics.
- `from_claimed_content` 'OTHER' | 'CLAIMED' | 'BOTH'
- `pin_format` 'ALL' | 'ORGANIC_IMAGE' | 'ORGANIC_PRODUCT' | 'ORGANIC_VIDEO' | 'ADS_STANDARD' | 'ADS_PRODUCT' | 'ADS_VIDEO' | 'ADS_IDEA'
- `app_types` 'ALL' | 'MOBILE' | 'TABLET' | 'WEB'
- `content_type` 'ALL' | 'PAID' | 'ORGANIC'
- `source` 'ALL' | 'YOUR_PINS' | 'OTHER_PINS'
- `metric_types` QuerymetrictypesItems[]
- `num_of_pins` integer
- `created_in_last_n_days` 30
- `ad_account_id` string

## Response `200`

The request has succeeded.

- TopPinsAnalyticsResponse
  - `date_availability` TopPinsAnalyticsResponseDateAvailability
    - `is_realtime` boolean
    - `latest_available_timestamp` number
  - `pins` TopPinsAnalyticsResponsePinsItems[]
    - `data_status` object
    - `metrics` object
    - `pin_id` string — The pin id
  - `sort_by` 'ENGAGEMENT' | 'SAVE' | 'IMPRESSION' | 'OUTBOUND_CLICK' | 'PIN_CLICK' — Sort metric for top pins analytics.

## Other responses

- `400` — The request could not be understood by the server due to unexpected data.
- `401` — Authentication is required and has either failed or not been provided.
- `403` — The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource.
- `404` — The requested resource could not be found on this server.
- `429` — The user has sent too many requests in a given amount of time and is being rate limited.
- `default` — An unexpected error response.

## Changes

- **2026-06-04** (v5) `b698c180678a` — 5 info
  - for the `query` request parameter `created_in_last_n_days`, the type was generalized from `integer` to `number`
  - added the non-success response with the status `400`
  - added the non-success response with the status `401`
  - added the non-success response with the status `404`
  - …1 more
- **2024-08-14** (v5) `89c27ed39cfd` — 3 breaking, 1 info
  - removed the enum value `PRODUCT` from the `query` request parameter `pin_format`
  - removed the enum value `REGULAR` from the `query` request parameter `pin_format`
  - removed the enum value `VIDEO` from the `query` request parameter `pin_format`
  - the endpoint scheme security `client_credentials` was added to the API
- **2024-02-08** (v5) `7529b464d5cb` — 7 info
  - added the new enum value `ADS_IDEA` to the `query` request parameter `pin_format`
  - added the new enum value `ADS_PRODUCT` to the `query` request parameter `pin_format`
  - added the new enum value `ADS_STANDARD` to the `query` request parameter `pin_format`
  - added the new enum value `ADS_VIDEO` to the `query` request parameter `pin_format`
  - …3 more
- **2023-07-14** (v5) `52586a274771` — 2 info
  - added the new optional `query` request parameter `content_type`
  - added the new optional `query` request parameter `source`
- **2022-11-14** (v5) `e041d7b0cef0` — 1 warning
  - for the `query` request parameter `ad_account_id`, the maxLength was set to `18`

[Full history](https://skmtc.dev/pinterest/apis/pinterest-rest-api/changes/user_account/analytics/top_pins/get.md)

---

[API](https://skmtc.dev/pinterest/apis/pinterest-rest-api.md) · [All operations](https://skmtc.dev/pinterest/apis/pinterest-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/pinterest/pinterest-rest-api/revisions/b698c180678a/schema)
