Pinterest API for developers and AI agents

Pinterest publishing without rebuilding OAuth, board selection, media publishing, queues, and webhook status handling.

No credit card required

import { KavenioClient } from "@kavenio/sdk";

const kavenio = new KavenioClient({
  authToken: process.env.KAVENIO_API_KEY,
});

// Send your user to this URL to connect their Pinterest account.
const { authorizationUrl } = await kavenio.connect.begin({
  platform: "pinterest",
});

// Publish a Pin to the selected board.
await kavenio.posts.create({
  content: "New product guide is live.",
  publishNow: true,
  mediaItems: [
    {
      type: "image",
      url: "https://cdn.example.com/pin.jpg",
      altText: "Product guide cover",
    },
  ],
  platforms: [
    {
      platform: "pinterest",
      accountId: "acct_pin_123",
      platformSpecificData: {
        boardId: "board_123",
        title: "Product guide",
        link: "https://example.com/guide",
      },
    },
  ],
});

How it works

Connect the account, publish to a selected Pinterest board, and run the workflow with REST, the CLI, or the SDK.
  1. kavenio.connect.begin(...)

    Create a Pinterest connect URL and send the user through OAuth for the account they want to publish from.

  2. kavenio.posts.create(...)

    Publish now or schedule a Pin for the selected Pinterest account, board, media, and destination link.

  3. kavenio.webhooks.create(...)

    Trigger your automation when a Pin publishes, fails, or needs attention instead of polling for state.

Formats

Publish the Pinterest Pin formats your product needs

Let customers choose the Pin shape, board, and destination link without building a separate Pinterest-only publishing flow.
Image Pins
Video Pins
Board selection
Destination links
Pin titles
Alt text
Developer workflow

Build Pinterest publishing without board and media plumbing

Keep your product focused on the customer workflow while the API handles account connection, board targeting, and Pin publishing.

OAuth and board access

Send users through Pinterest OAuth once and work with the boards their connected account can publish to.

Board targeting

Publish to a specific board in the request, or use the default board selected during account setup.

Image and video Pins

Create Pins from public image or video URLs without building separate upload flows in your product.

Queue and webhooks

Schedule Pins, publish now, and trigger automation from status events instead of polling provider APIs.

App keys

Bring your own Pinterest app when you need control

Use the Kavenio-managed Pinterest app to get started, or connect through your own Pinterest app when your team owns approvals, branding, and policy setup.

Use the Kavenio-managed Pinterest app

Start testing Pinterest connection, board access, and Pin publishing without configuring your own Pinterest app first.

Bring your own Pinterest app

Use your Pinterest app credentials when your team owns approvals, branding, and policy setup.

Build the Pinterest publishing workflow once

Stop rebuilding Pinterest OAuth, board selection, media publishing, retries, and status handling for every product surface.

Reuse the same connect and publishing workflow for the next supported platform.

Pinterest API questions

Practical details for building Pinterest publishing into your product.

Can I publish Pinterest Pins through Kavenio?

Yes. Connect a Pinterest account, pass the media URL, and publish a Pin through the same posts API used for other platforms.

How do I choose the Pinterest board?

Pass a board ID in the request, or rely on the default board selected for the connected Pinterest account.

Can I publish video Pins?

Yes. Send a public video URL and the publish workflow can create a Pinterest video Pin.

Can I use destination links?

Yes. Use HTTPS destination links. Shortened URLs should be expanded before publishing.