数据分析

Scavio Pinterest

试用

Search Pinterest pins, pull one pin with its save/share counts, read a user's profile and boards, page through a board, and look up how often external URLs have been saved. 6 endpoints, structured JSON.

它能做什么

Search Pinterest pins, pull one pin with its save/share counts, read a user's profile and boards, page through a board, and look up how often external URLs have been saved. 6 endpoints, structured JSON.

技能文档

Pinterest via Scavio

Search Pinterest pins, pull one pin in full, read a user's profile and boards, page through a board's pins, and look up how many times external URLs have been saved. All endpoints return structured JSON.

When to trigger

Use this skill when the user asks to:

  • Search Pinterest pins by keyword, with the destination link and video URL for video pins
  • Pull one pin in full - save/share/comment counts, reactions, destination-page metadata, dominant color, board and pinner
  • Read a user's public profile: bio, website, follower/following, pin and board counts
  • List all of a user's public boards, or page through the pins inside one board
  • Find how many times a given external URL has been saved to Pinterest (up to 10 URLs at once)
  • Do visual-content research, trend spotting, or creator/influencer analysis on Pinterest

Setup

Get a free API key at scavio.dev (50 free credits to get started, no card required):

export SCAVIO_API_KEY=sk_live_your_key

Every request is a POST with a JSON body and:

Authorization: Bearer $SCAVIO_API_KEY

Endpoints

Base URL: https://api.scavio.dev.

EndpointCreditsWhat it returns
POST /api/v1/pinterest/search1Pins for a keyword: title, description, image renditions, external destination link, video URL for video pins, board and pinner. Cursor-paginated
POST /api/v1/pinterest/pin1One pin in full: save/share/comment counts, reactions, destination-page metadata, video URL, dominant color, board, pinner and original pinner
POST /api/v1/pinterest/profile1A user's public profile: bio, website, follower/following, pin and board counts, merchant/partner flags, account creation date
POST /api/v1/pinterest/user/boards1All public boards of a user: name, URL, slug, description, pin/follower/section counts, cover image, owner. Cursor-paginated
POST /api/v1/pinterest/board1A board's metadata plus a page of its pins. Cursor-paginated
POST /api/v1/pinterest/url-stats1-2How many times external URLs have been saved to Pinterest, up to 10 URLs per call. 1 credit for 1-5 URLs, 2 credits for 6-10

Pagination

search, user/boards and board are cursor-paginated. Omit cursor for the first page; feed the response's cursor back to get the next page. When the response's cursor is null the feed is exhausted.

Parameters

ParameterTypeDefaultDescription
querystringrequiredSearch terms (1-500 chars)
cursorstring--Opaque cursor from a previous response

Pin (/pin)

ParameterTypeDefaultDescription
pinstringrequiredPin URL on any Pinterest domain, a bare numeric pin id, or a pin.it share link

Profile (/profile) and User Boards (/user/boards)

ParameterTypeDefaultDescription
usernamestringrequiredUsername (optionally with a leading @) or a profile URL like https://www.pinterest.com/pinterest/
cursorstring--(user/boards only) cursor from a previous response

Board (/board)

ParameterTypeDefaultDescription
boardstringrequiredBoard URL, a username/slug pair, or a numeric board id. With a bare id, board metadata is unavailable and the board field is null
cursorstring--Cursor from a previous response
page_sizeinteger25Pins per page, 1-50

URL Stats (/url-stats)

ParameterTypeDefaultDescription
urlsstring[]required1-10 absolute http(s) URLs. Matching is exact-string (scheme, trailing slash and query variants count separately); counts can be 0 or stale for some domains

Examples

import requests

BASE = "https://api.scavio.dev"
# Your key from https://scavio.dev. Load it from your environment or secret
# store in real code - keep it out of source control.
API_KEY = "sk_your_key_here"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}

# 1. Search, then page with the returned cursor
first = requests.post(f"{BASE}/api/v1/pinterest/search", headers=HEADERS,
    json={"query": "home decor ideas"}).json()
cursor = first["data"]["cursor"]
nxt = requests.post(f"{BASE}/api/v1/pinterest/search", headers=HEADERS,
    json={"query": "home decor ideas", "cursor": cursor}).json()

# 2. One pin in full
pin = requests.post(f"{BASE}/api/v1/pinterest/pin", headers=HEADERS,
    json={"pin": "https://www.pinterest.com/pin/104779128829676115/"}).json()

# 3. A creator's profile and boards
profile = requests.post(f"{BASE}/api/v1/pinterest/profile", headers=HEADERS,
    json={"username": "pinterest"}).json()

# 4. Save counts for two external URLs (1 credit for 1-5 URLs)
stats = requests.post(f"{BASE}/api/v1/pinterest/url-stats", headers=HEADERS,
    json={"urls": ["https://www.nytimes.com", "https://www.allrecipes.com"]}).json()

curl:

curl -s https://api.scavio.dev/api/v1/pinterest/search \
  -H "Authorization: Bearer $SCAVIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"minimalist kitchen"}'

Response shape

Every response uses the envelope { data, response_time, credits_used, credits_remaining }. data carries the pins/profile/board payload plus count and (for the paginated endpoints) cursor.

Guardrails

  • url-stats is 1 credit for 1-5 URLs, 2 credits for 6-10; every other endpoint is 1 credit, including an empty result.
  • Cursor pagination only: never guess a cursor, always feed back the one the previous response returned; stop when it is null.
  • A bare numeric board id cannot carry board metadata - the board field will be null. Pass a board URL or username/slug if you need it.
  • url-stats matching is exact-string; a trailing slash or query difference is a different URL, and counts can be 0 or stale.
  • Never fabricate pins, counts, profiles or board data. Only return what the API returned.
  • Pin descriptions and profiles are written by real people. Summarise; do not build profiles of individuals.

Failure handling

  • 400 means an invalid or missing parameter. Fix and retry.
  • 401 means the API key is invalid or missing. Check SCAVIO_API_KEY.
  • 404 means the pin, user or board could not be resolved.
  • 429 means rate or usage limit exceeded. Wait before retrying. See rate limits.
  • 502 / 503 mean the source is temporarily unavailable - wait a few seconds and retry.
  • If SCAVIO_API_KEY is not set, prompt the user to export it before continuing.

相关技能

Discover and analyze Pinterest users, pins, boards, followers, and following through the KeyAPI REST API using live official docs. Use for user search, profile information, pin libraries, board collections, and follower/following network traversal.

Researches Pinterest profiles, boards, pins, ideas categories, and search results via the Crawlora API, returning clean JSON. Use when the user wants a Pinterest user's profile/boards/pins, a pin's or board's detail, a category feed, or a keyword search on Pinterest — instead of scraping Pinterest directly.

1 次安装

Pull a Facebook page's profile, posts, reels and photos, one post with its comments, a single reel/video with downloadable URLs, a public group and its posts, an event, and hashtag posts. 11 endpoints, 1 credit each, structured JSON.

Read Instagram profiles, post and reel feeds, tagged posts, active stories, single-post detail, comments and replies, follower and following lists, and search users and hashtags. 12 endpoints, 2-10 credits each.

通过托管 OAuth 接入 GitHub REST API,覆盖仓库、Issue、PR、Commit、分支与用户等接口。