postproxy-dev Pinterest API

Create and delete Pinterest boards

Operations 2

POST /api/profiles/{profile_id}/pinterest/create_board Create board #
DELETE /api/profiles/{profile_id}/pinterest/delete_board Delete board #

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/postproxy-dev:postproxy-dev-pinterest-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

postproxy-dev-pinterest-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Postproxy Social Media Pinterest API
  version: '2026-09-21'
  summary: Unified social media API for publishing, comments, direct messages, and reviews.
  description: 'The Postproxy API lets you programmatically create and manage social media posts across Facebook, Instagram, TikTok, LinkedIn, YouTube, X (Twitter), Threads, Pinterest, Bluesky, Telegram, and Google Business. Beyond publishing you can read and reply to comments, read and send direct messages, and reply to Google Business reviews and Facebook Page recommendations.


    Send one payload; Postproxy maps it to each platform''s rules and returns a per-platform outcome. Sandbox mode is included on all plans for development without real accounts.


    Human-readable reference: https://postproxy.dev/reference/overview/


    ## Versioning and deprecation


    The API has a single stable version served at https://api.postproxy.dev/api. Releases are identified by this document''s date-based `info.version`. Changes are additive: new endpoints, new optional parameters, and new response fields may appear, and clients should ignore fields they do not recognize. Existing fields, parameters, and status codes are not changed or removed without a deprecation cycle.


    When an endpoint or field is deprecated it is marked `deprecated: true` in this specification and announced in the changelog (https://postproxy.dev/getting-started/changelog/) at least 90 days before removal.'
  termsOfService: https://postproxy.dev/terms-conditions/
  contact:
    name: Postproxy Support
    url: https://postproxy.dev/developers/
    email: support@postproxy.dev
  x-versioning:
    strategy: stable-single-version
    spec-version-format: date (YYYY-MM-DD)
    compatibility: additive-only; breaking changes go through a deprecation cycle
    deprecation-signal: 'deprecated: true in this spec, plus a changelog announcement at least 90 days before removal'
    changelog: https://postproxy.dev/getting-started/changelog/
servers:
- url: https://api.postproxy.dev
  description: Production
security:
- bearerAuth: []
tags:
- name: Pinterest
  description: Create and delete Pinterest boards
  externalDocs:
    url: https://postproxy.dev/reference/platforms/pinterest/#board-management
paths:
  /api/profiles/{profile_id}/pinterest/create_board:
    post:
      operationId: pinterest_board_create
      summary: Create board
      description: Creates a board on the connected Pinterest account. The board becomes a placement of the profile right away; its id is the board_id you publish to. Pinterest rejects duplicate board names with a 422.
      tags:
      - Pinterest
      externalDocs:
        url: https://postproxy.dev/reference/platforms/pinterest/#create-board
      parameters:
      - name: profile_id
        in: path
        required: true
        description: Profile id (must be a pinterest profile)
        schema:
          type: string
      - $ref: '#/components/parameters/ProfileGroupId'
      - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - name
              properties:
                name:
                  type: string
                  description: Board name. Must be unique among the account's boards
                description:
                  type: string
                  description: Board description
                privacy:
                  type: string
                  enum:
                  - PUBLIC
                  - PROTECTED
                  default: PUBLIC
                  description: Board visibility
      responses:
        '200':
          description: The new board, as a placement
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProfilePlacement'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          description: The connection lacks permission to manage boards
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/ValidationError'
        '429':
          $ref: '#/components/responses/RateLimited'
        '502':
          description: Pinterest could not be reached
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /api/profiles/{profile_id}/pinterest/delete_board:
    delete:
      operationId: pinterest_board_delete
      summary: Delete board
      description: Deletes a board on Pinterest, along with every Pin on it, and removes it from the profile's placements. This cannot be undone.
      tags:
      - Pinterest
      externalDocs:
        url: https://postproxy.dev/reference/platforms/pinterest/#delete-board
      parameters:
      - name: profile_id
        in: path
        required: true
        description: Profile id (must be a pinterest profile)
        schema:
          type: string
      - name: board_id
        in: query
        required: true
        description: Placement ID of the board to delete
        schema:
          type: string
      - $ref: '#/components/parameters/ProfileGroupId'
      responses:
        '200':
          description: The board was deleted
          content:
            application/json:
              schema:
                type: object
                properties:
                  deleted:
                    type: boolean
                  board_id:
                    type: string
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          description: The connection lacks permission to manage boards
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/ValidationError'
        '429':
          $ref: '#/components/responses/RateLimited'
        '502':
          description: Pinterest could not be reached
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  responses:
    ValidationError:
      description: Validation failed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ValidationErrors'
    NotFound:
      description: Resource does not exist or is not accessible.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            notFound:
              value:
                error: Not found
    BadRequest:
      description: Missing required parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BadRequestError'
    Unauthorized:
      description: Invalid, missing, or insufficient API key permissions.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            invalidKey:
              value:
                error: Invalid API key
    RateLimited:
      description: Posting rate limit reached.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    ProfilePlacement:
      type: object
      description: A placement a profile can publish to (Facebook Page, LinkedIn organization or personal profile, Pinterest board, Telegram channel, Google Business location).
      properties:
        id:
          type:
          - string
          - 'null'
          description: Platform-specific placement ID. null for personal profile (LinkedIn).
        name:
          type: string
          description: Display name of the placement.
        avatar_url:
          type:
          - string
          - 'null'
          description: Stable Postproxy storage URL of the placement's picture, resized to 256x256 (Facebook Pages). null until it has been mirrored and for networks without one.
        metadata:
          type: object
          description: Extra per-placement data Postproxy stores. For Google Business this carries the location's place_id (Google Maps Place ID). {} when there's nothing extra.
          additionalProperties: true
    ValidationErrors:
      type: object
      properties:
        errors:
          type: array
          items:
            type: string
      required:
      - errors
    Error:
      type: object
      properties:
        error:
          type: string
      required:
      - error
    BadRequestError:
      type: object
      properties:
        status:
          type: integer
          const: 400
        error:
          type: string
        message:
          type: string
  parameters:
    ProfileGroupId:
      name: profile_group_id
      in: query
      required: false
      description: Profile group context for the request. Optional when the API key is scoped to a profile group (that group is used automatically); with a full-access key, defaults to the first profile group in the account.
      schema:
        type: string
    IdempotencyKey:
      name: Idempotency-Key
      in: header
      required: false
      description: 'Optional idempotency key (up to 255 characters; a UUID is ideal). Retrying a successful write with the same key replays the original response (with an Idempotent-Replay: true header) instead of executing again. Stored responses are kept for 24 hours; only 2xx responses are stored.'
      schema:
        type: string
        maxLength: 255
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key sent as a Bearer token in the Authorization header. Keys are either full-access (entire account) or scoped to a single profile group. Create keys at https://app.postproxy.dev under Settings → API Keys.
externalDocs:
  description: Full API reference
  url: https://postproxy.dev/reference/overview/