Pinterest API

Pinterest API

Social

The world's catalog of ideas. Help millions of people discover, save and do things they love. The Pinterest Developers Platform is a suite of tools that help you reach Pinners in new ways. Right now, there are 3 ways to use the platform to increase your reach: through the API, add-ons and Rich Pins.

Visit API

📚 Documentation & Examples

Everything you need to integrate with Pinterest API

🚀 Quick Start Examples

Pinterest API Javascript Examplejavascript
// Pinterest API API Example
const response = await fetch('https://developers.pinterest.com/', {
    method: 'GET',
    headers: {
        'Content-Type': 'application/json'
    }
});

const data = await response.json();
console.log(data);

Exploring Pinterest's Public API Docs

Pinterest's public API has a variety of endpoints that allow developers to access different types of data, such as boards, pins, users, and more. In this article, we'll explore some of the most popular endpoints and provide example code in JavaScript.

Authentication

Before we dive into the API endpoints, let's first talk about authentication. To use Pinterest's API, you'll need to generate an access token. You can do this by creating a new app on the Pinterest developer portal. Once you've created an app, you can use the provided client ID and secret key to generate an access token.

Here's an example of how to generate an access token using the axios library:

const axios = require('axios');

const authUrl = `https://api.pinterest.com/oauth/token?grant_type=authorization_code&client_id=YOUR_CLIENT_ID&client_secret=YOUR_SECRET_KEY&code=CODE`;

axios.post(authUrl)
  .then(response => {
    const accessToken = response.data.access_token;
    console.log(accessToken);
  })
  .catch(error => {
    console.log(error);
  });

Replace YOUR_CLIENT_ID, YOUR_SECRET_KEY, and CODE with your own values.

Boards

Get Board by Name

To get a board by name, you can use the /v1/boards/{username}/{board} endpoint. Here's an example of how to use this endpoint:

const axios = require('axios');

const boardUrl = `https://api.pinterest.com/v1/boards/USERNAME/BOARD_NAME/?access_token=ACCESS_TOKEN`;

axios.get(boardUrl)
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.log(error);
  });

Replace USERNAME, BOARD_NAME, and ACCESS_TOKEN with your own values.

Get Board Pins

To get a list of all pins on a board, you can use the /v1/boards/{username}/{board}/pins endpoint. Here's an example of how to use this endpoint:

const axios = require('axios');

const pinsUrl = `https://api.pinterest.com/v1/boards/USERNAME/BOARD_NAME/pins/?access_token=ACCESS_TOKEN`;

axios.get(pinsUrl)
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.log(error);
  });

Replace USERNAME, BOARD_NAME, and ACCESS_TOKEN with your own values.

Pins

Get Pin by ID

To get a pin by ID, you can use the /v1/pins/{id} endpoint. Here's an example of how to use this endpoint:

const axios = require('axios');

const pinUrl = `https://api.pinterest.com/v1/pins/PIN_ID/?access_token=ACCESS_TOKEN`;

axios.get(pinUrl)
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.log(error);
  });

Replace PIN_ID and ACCESS_TOKEN with your own values.

Create Pin

To create a new pin, you can use the /v1/pins endpoint. Here's an example of how to use this endpoint:

const axios = require('axios');

const createPinUrl = `https://api.pinterest.com/v1/pins/?access_token=ACCESS_TOKEN`;
const data = {
  board: 'BOARD_NAME',
  note: 'PIN_DESCRIPTION',
  link: 'PIN_URL',
  image_url: 'IMAGE_URL',
};

axios.post(createPinUrl, data)
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.log(error);
  });

Replace ACCESS_TOKEN, BOARD_NAME, PIN_DESCRIPTION, PIN_URL, and IMAGE_URL with your own values.

Conclusion

Pinterest's public API provides a variety of endpoints to access different types of data. In this article, we covered some of the most popular endpoints for boards and pins, and provided example code in JavaScript. Remember to generate an access token before using any of the API endpoints!

📊 30-Day Uptime History

Daily uptime tracking showing online vs offline minutes

Jun 4Jun 6Jun 8Jun 10Jun 12Jun 14Jun 16Jun 18Jun 20Jun 22Jun 24Jun 26Jun 28Jun 30Jul 304008001440Minutes
Online
Offline

Related APIs in Social