https://github.com/bryand1/python-pinterest-api
Python Pinterest API
https://github.com/bryand1/python-pinterest-api
pinterest pinterest-api pinterest-client python python3
Last synced: 6 months ago
JSON representation
Python Pinterest API
- Host: GitHub
- URL: https://github.com/bryand1/python-pinterest-api
- Owner: bryand1
- License: mit
- Created: 2018-09-16T01:21:25.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2022-03-10T03:35:46.000Z (about 4 years ago)
- Last Synced: 2025-09-25T10:58:28.668Z (9 months ago)
- Topics: pinterest, pinterest-api, pinterest-client, python, python3
- Language: Python
- Size: 21.5 KB
- Stars: 29
- Watchers: 4
- Forks: 11
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Python Pinterest API


## Getting Started
```bash
pip install pinterest-api
```
## Usage
```python
import pinterest
# Generate OAuth2 authorization link
link = pinterest.oauth2.authorization_url(app_id, redirect_uri)
# Initialize API by passing OAuth2 token
api = pinterest.Pinterest(token="ApFF9WBrjug_xhJPsETri2jp9pxgFVQfZNayykxFOjJQhWAw")
# Fetch authenticated user's data
api.me()
# Fetch authenticated user's boards
api.boards()
# Create board
api.board().create("Halloween", description="Fun Costumes")
# Fetch board
api.board("695665542379607495").fetch()
api.board("username/halloween").fetch()
# Fetch pins on board
api.board("username/halloween").pins()
# Edit board
api.board("username/halloween").edit(new_name="Costumes", new_description="Halloween Costume Ideas")
# Delete board
api.board("username/halloween").delete()
# Fetch board suggestions
api.suggest_boards(pin=162129655315312286)
# Fetch authenticated user's pins
api.pins()
# Create a pin
api.pin().create(board, note, link, image_url=image_url)
# Fetch a pin
api.pin(162129655315312286).fetch()
# Edit a pin
api.pin(162129655315312286).edit(board, note, link)
# Delete a pin
api.pin(162129655315312286).delete()
# Search boards (Optional cursor)
api.search_boards(query, cursor=None)
# Search pins (Optional cursor)
api.search_pins(query, cursor=None)
# Follow a board
api.follow_board(board)
# Follow a user
api.follow_user(username)
# Return the users who follow the authenticated user
api.followers(cursor=None)
# Return the boards that the authenticated user follows
api.following_boards(cursor=None)
# Return the topics the authenticated user follows
api.following_interests(cursor=None)
# Return the users the authenticated user follows
api.following_users(cursor=None)
# Unfollow board
api.unfollow_board(board)
# Make authenticated user unfollow user
api.unfollow_user(username)
# Fetch another user's info
api.user(username)
# Fetch board sections
api.board("695665542379586148").sections()
# Create board section
api.board("695665542379586148").section("Section Title").create()
# Delete board section
api.board("695665542379586148").section("4989415010584246390").delete()
# Fetch pins in board section
api.board("695665542379586148").section("4989343507360527350").pins()
```
## Responses
The Pinterest API responses are in JSON format.
```python
api.me() # By default, retry http request up to 3 times
```
```javascript
{
"data": {
"first_name": "Bryan",
"id": "695665611098925391",
"last_name": "Andrade",
"url': "https://www.pinterest.com/bandrade1815/"
},
"ratelimit": {
"limit": 10,
"remaining": 9
}
}
```
## Resources
[Pinterest Developer API](https://developers.pinterest.com/docs/getting-started/introduction/)
[Pinterest API Explorer](https://developers.pinterest.com/tools/api-explorer/)