Pinterest Resources API

The Resources API from Pinterest — 6 operation(s) for resources.

Business capability
Digital Marketing Management BC-400.60

Operations 6

GET /resources/ad_account_countries Get ad accounts countries #
GET /resources/delivery_metrics Get available metrics' definitions #
GET /resources/lead_form_questions Get lead form questions #
GET /resources/metrics_ready_state Get metrics ready state #
GET /resources/targeting/interests/{interest_id} Get interest details #
GET /resources/targeting/{targeting_type} Get targeting options #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/pinterest-resources-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

pinterest-resources-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 5.13.0
  title: Pinterest Resources API
  description: This is the description of your API.
  contact:
    name: Pinterest, Inc.
    url: https://developers.pinterest.com/
  license:
    name: MIT
    url: https://spdx.org/licenses/MIT
  termsOfService: https://developers.pinterest.com/terms/
servers:
- url: https://api.pinterest.com/v5
tags:
- name: Resources
paths:
  /resources/ad_account_countries:
    get:
      summary: Get ad accounts countries
      description: Get Ad Accounts countries
      operationId: ad_account_countries/get
      security:
      - pinterest_oauth2:
        - ads:read
      x-ratelimit-category: ads_read
      x-sandbox: enabled
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdAccountsCountryResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Unexpected error
      tags:
      - Resources
  /resources/delivery_metrics:
    get:
      summary: Get available metrics' definitions
      description: 'Get the definitions for ads and organic metrics available across both synchronous and asynchronous report endpoints.

        The `display_name` attribute will match how the metric is named in our native tools like Ads Manager.

        See Organic Analytics and Ads Analytics for more information.'
      operationId: delivery_metrics/get
      security:
      - pinterest_oauth2:
        - ads:read
        - pins:read
        - user_accounts:read
      x-ratelimit-category: ads_read
      x-sandbox: enabled
      parameters:
      - $ref: '#/components/parameters/query_report_type'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeliveryMetricsResponse'
          description: Success
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Resources
  /resources/lead_form_questions:
    get:
      summary: Get lead form questions
      description: 'Get a list of all lead form question type names. Some questions might not be used.


        This endpoint is currently in beta and not available to all apps. Learn more.'
      operationId: lead_form_questions/get
      security:
      - pinterest_oauth2:
        - ads:read
      x-ratelimit-category: ads_read
      x-sandbox: enabled
      responses:
        '200':
          description: Success
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Resources
  /resources/metrics_ready_state:
    get:
      summary: Get metrics ready state
      description: Learn whether conversion or non-conversion metrics are finalized and ready to query.
      operationId: metrics_ready_state/get
      security:
      - pinterest_oauth2:
        - ads:read
      x-ratelimit-category: ads_analytics
      x-sandbox: enabled
      parameters:
      - name: date
        description: 'Analytics reports request date (UTC). Format: YYYY-MM-DD'
        in: query
        required: true
        style: form
        schema:
          type: string
          pattern: ^(\d{4})-(\d{2})-(\d{2})$
          example: '2022-07-13'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BookClosedResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Unexpected error
      tags:
      - Resources
  /resources/targeting/interests/{interest_id}:
    get:
      summary: Get interest details
      description: 'Get details of a specific interest given interest ID.


        Click here for a spreadsheet listing interests and their IDs.'
      operationId: interest_targeting_options/get
      security:
      - pinterest_oauth2:
        - ads:read
      x-ratelimit-category: ads_read
      x-sandbox: enabled
      parameters:
      - $ref: '#/components/parameters/path_interest_id'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SingleInterestTargetingOptionResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Unexpected error
      tags:
      - Resources
  /resources/targeting/{targeting_type}:
    get:
      summary: Get targeting options
      description: 'You can use targeting values in ads placement to define your intended audience.


        Targeting metrics are organized around targeting specifications.


        For more information on ads targeting, see Audience targeting.


        Sample return:


        [{"36313": "Australia: Moreton Bay - North", "124735": "Canada: North Battleford", "36109": "Australia: Murray", "36108": "Australia: Mid North Coast", "36101": "Australia: Capital Region", "811": "U.S.: Reno", "36103": "Australia: Central West", "36102": "Australia: Central Coast", "36105": "Australia: Far West and Orana", "36104": "Australia: Coffs Harbour - Grafton", "36107": "Australia: Illawarra", "36106": "Australia: Hunter Valley Exc Newcastle", "554017": "New Zealand: Wanganui", "554016": "New Zealand: Marlborough", "554015": "New Zealand: Gisborne", "554014": "New Zealand: Tararua", "554013": "New Zealand: Invercargill", "GR": "Greece", "554011": "New Zealand: Whangarei", "554010": "New Zealand: Far North", "717": "U.S.: Quincy-Hannibal-Keokuk", "716": "U.S.: Baton Rouge",...}]'
      operationId: targeting_options/get
      security:
      - pinterest_oauth2:
        - ads:read
      x-ratelimit-category: ads_read
      x-sandbox: enabled
      parameters:
      - $ref: '#/components/parameters/path_targeting_type'
      - $ref: '#/components/parameters/query_client_id'
      - $ref: '#/components/parameters/query_oauth_signature'
      - $ref: '#/components/parameters/query_timestamp'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TargetingOptionResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Unexpected error
      tags:
      - Resources
components:
  parameters:
    query_oauth_signature:
      name: oauth_signature
      description: Oauth signature
      in: query
      required: false
      schema:
        type: string
        example: 8209f
      style: form
    path_interest_id:
      name: interest_id
      description: Unique identifier of an interest.
      in: path
      required: true
      schema:
        type: string
        pattern: ^\d+$
        maxLength: 18
    query_report_type:
      name: report_type
      description: Report type.
      in: query
      required: false
      schema:
        type: string
        enum:
        - SYNC
        - ASYNC
    query_client_id:
      name: client_id
      description: Client ID.
      in: query
      required: false
      schema:
        type: string
        pattern: ^\d+$
        maxLength: 18
        example: '1094834'
      style: form
    query_timestamp:
      name: timestamp
      description: Timestamp
      in: query
      required: false
      schema:
        type: string
        example: '1618338184277'
        pattern: \d+
      style: form
    path_targeting_type:
      name: targeting_type
      description: Public targeting type.
      in: path
      required: true
      style: simple
      schema:
        title: PublicTargetingType
        description: Public ad targeting type with external names
        type: string
        example: APPTYPE
        enum:
        - APPTYPE
        - GENDER
        - LOCALE
        - AGE_BUCKET
        - LOCATION
        - GEO
        - INTEREST
        - KEYWORD
        - AUDIENCE_INCLUDE
        - AUDIENCE_EXCLUDE
  schemas:
    TargetingOptionResponse:
      title: TargetingOptionResponse
      type:
      - array
      - 'null'
      items:
        type: object
        example:
          '36313': 'Australia: Moreton Bay - North'
          '124735': 'Canada: North Battleford'
    BookClosedResponse:
      title: BookClosed
      description: Creation fields
      type: object
      properties:
        conversion_metrics_ready:
          title: conversion_metrics_ready
          description: Are conversion metrics ready?
          type: boolean
          example: false
        non_conversion_metrics_ready:
          title: non_conversion_metrics_ready
          description: Are non-conversion metrics ready?
          type: boolean
          example: false
    AdCountry:
      type: string
      description: Country ID from ISO 3166-1 alpha-2.
      example: US
      enum:
      - AD
      - AE
      - AF
      - AG
      - AI
      - AL
      - AM
      - AO
      - AQ
      - AR
      - AS
      - AT
      - AU
      - AW
      - AX
      - AZ
      - BA
      - BB
      - BD
      - BE
      - BF
      - BG
      - BH
      - BI
      - BJ
      - BL
      - BM
      - BN
      - BO
      - BQ
      - BR
      - BS
      - BT
      - BV
      - BW
      - BY
      - BZ
      - CA
      - CC
      - CD
      - CF
      - CG
      - CH
      - CI
      - CK
      - CL
      - CM
      - CN
      - CO
      - CR
      - CU
      - CV
      - CW
      - CX
      - CY
      - CZ
      - DE
      - DJ
      - DK
      - DM
      - DO
      - DZ
      - EC
      - EE
      - EG
      - EH
      - ER
      - ES
      - ET
      - FI
      - FJ
      - FK
      - FM
      - FO
      - FR
      - GA
      - GB
      - GD
      - GE
      - GF
      - GG
      - GH
      - GI
      - GL
      - GM
      - GN
      - GP
      - GQ
      - GR
      - GS
      - GT
      - GU
      - GW
      - GY
      - HK
      - HM
      - HN
      - HR
      - HT
      - HU
      - ID
      - IE
      - IL
      - IM
      - IN
      - IO
      - IQ
      - IR
      - IS
      - IT
      - JE
      - JM
      - JO
      - JP
      - KE
      - KG
      - KH
      - KI
      - KM
      - KN
      - KR
      - KW
      - KY
      - KZ
      - LA
      - LB
      - LC
      - LI
      - LK
      - LR
      - LS
      - LT
      - LU
      - LV
      - LY
      - MA
      - MC
      - MD
      - ME
      - MF
      - MG
      - MH
      - MK
      - ML
      - MM
      - MN
      - MO
      - MP
      - MQ
      - MR
      - MS
      - MT
      - MU
      - MV
      - MW
      - MX
      - MY
      - MZ
      - NA
      - NC
      - NE
      - NF
      - NG
      - NI
      - NL
      - 'NO'
      - NP
      - NR
      - NU
      - NZ
      - OM
      - PA
      - PE
      - PF
      - PG
      - PH
      - PK
      - PL
      - PM
      - PN
      - PR
      - PS
      - PT
      - PW
      - PY
      - QA
      - RE
      - RO
      - RS
      - RU
      - RW
      - SA
      - SB
      - SC
      - SD
      - SE
      - SG
      - SH
      - SI
      - SJ
      - SK
      - SL
      - SM
      - SN
      - SO
      - SR
      - SS
      - ST
      - SV
      - SX
      - SY
      - SZ
      - TC
      - TD
      - TF
      - TG
      - TH
      - TJ
      - TK
      - TL
      - TM
      - TN
      - TO
      - TR
      - TT
      - TV
      - TW
      - TZ
      - UA
      - UG
      - UM
      - US
      - UY
      - UZ
      - VA
      - VC
      - VE
      - VG
      - VI
      - VN
      - VU
      - WF
      - WS
      - YE
      - YT
      - ZA
      - ZM
      - ZW
    SingleInterestTargetingOptionResponse:
      title: SingleInterestTargetingOptionData
      type: object
      properties:
        id:
          type: string
          title: id
          pattern: \d+
          example: '945391946569'
        name:
          type: string
          title: name
          example: Dress
        child_interests:
          type: array
          title: child_interests
          items:
            type: string
        level:
          type: integer
          title: level
          example: 2
    Error:
      title: Error
      type: object
      properties:
        code:
          type: integer
        message:
          type: string
      required:
      - code
      - message
    AdAccountsCountryResponseData:
      type: object
      properties:
        code:
          $ref: '#/components/schemas/AdCountry'
          type: string
        currency:
          description: Country currency.
          example: Dollars
          type: string
        index:
          type: number
          description: Country index
          example: 1
        name:
          type: string
          description: Country name
          example: United States of America
    DeliveryMetricsResponse:
      type: object
      properties:
        items:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
                description: Metric's name.
                example: AD_GROUP_ID
              category:
                enum:
                - ADS
                - ORGANIC
                description: Category name
                example: ADS
              definition:
                type: string
                description: How the metric is defined.
                example: Unique ID for your ad group
              display_name:
                type: string
                description: Display name, when available. If unavaible it will not be returned. Matches how the metric is named in our native tools like Pinterest Ads Manager.
                example: Ad group ID
    AdAccountsCountryResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/AdAccountsCountryResponseData'
  securitySchemes:
    pinterest_oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://www.pinterest.com/oauth/
          tokenUrl: https://api.pinterest.com/v5/oauth/token
          scopes:
            ads:read: See all of your advertising data, including ads, ad groups, campaigns etc.
            ads:write: Create, update, or delete ads, ad groups, campaigns etc.
            billing:read: See all of your billing data, billing profile, etc.
            billing:write: Create, update, or delete billing data, billing profiles, etc.
            biz_access:read: See business access data
            biz_access:write: Create, update, or delete business access data
            boards:read: See your public boards, including group boards you join
            boards:read_secret: See your secret boards
            boards:write: Create, update, or delete your public boards
            boards:write_secret: Create, update, or delete your secret boards
            catalogs:read: See all of your catalogs data
            catalogs:write: Create, update, or delete your catalogs data
            pins:read: See your public Pins
            pins:read_secret: See your secret Pins
            pins:write: Create, update, or delete your public Pins
            pins:write_secret: Create, update, or delete your secret Pins
            user_accounts:read: See your user accounts and followers
            user_accounts:write: Update your user accounts and followers
    conversion_token:
      type: http
      scheme: bearer
      description: This security scheme only applies to the conversion events endpoint (POST /ad_accounts/{ad_account_id}/events). This endpoint requires a bearer token generated via Ads Manager (ads.pinterest.com).
    basic:
      type: http
      scheme: basic
x-tagGroups:
- name: Pin and Boards
  tags:
  - pins
  - boards
  - media
  - aggregated_comments
  - aggregated_pin_data
  - user_account
- name: Campaign Management
  tags:
  - ad_accounts
  - campaigns
  - ad_groups
  - ads
  - product_group_promotions
  - bulk
- name: Targeting
  tags:
  - audiences
  - customer_lists
  - keywords
  - targeting_template
  - audience_insights
  - audience_sharing
- name: Ad Formats
  tags:
  - lead_forms
  - lead_ads
  - leads_export
- name: Billing
  tags:
  - billing
  - order_lines
  - terms_of_service
- name: Business Access
  tags:
  - business_access_assets
  - business_access_invite
  - business_access_relationships
- name: Conversions
  tags:
  - conversion_events
  - conversion_tags
- name: Others
  tags:
  - integrations
  - oauth
  - resources
  - search
  - terms
- name: Shopping
  tags:
  - catalogs
- name: Deprecated
  tags:
  - product_groups