.png)
Pinterest Integration Guide
Connect Pinterest API v5 with enterprise systems through OAuth 2.0, REST workflows, selective webhooks, catalog synchronization, content publishing, and analytics automation.
Pinterest integration options at a glance
Pinterest integrations use Pinterest API v5, an HTTPS REST API that exposes Pins, Boards, Board sections, user accounts, advertising resources, catalogs, products, and supported analytics. OAuth 2.0 scopes control delegated access, while JSON payloads support resource and reporting workflows. Pinterest also provides webhook-style notifications for selected resources and event types, although coverage is not universal. Martini can consume these APIs, receive supported webhook requests through an exposed API, schedule bookmark-based synchronization, transform data, and write results to databases or adjacent applications. Media-oriented Pin creation and selected asynchronous advertising, catalog, or reporting operations require resource-specific validation.
| Integration point | Supported by Pinterest? | Common use cases | How Martini supports it |
|---|---|---|---|
| REST APIs | Yes | Pinterest API v5 supports Pins, Boards, Board sections, user accounts, advertising resources, catalogs, products, and supported analytics. It is the primary interface for current integrations. | Martini can consume Pinterest HTTPS REST endpoints, manage request configuration, transform JSON payloads, orchestrate workflows, and persist results. |
| Webhooks / outbound callbacks | Limited | Pinterest provides webhook-style notifications for selected resources and event types. Coverage is not universal across Pinterest objects or changes. | Martini can expose a REST API endpoint, validate and persist notifications, deduplicate deliveries, and retrieve the current resource when required. |
| Bulk / async / batch APIs | Limited | Selected advertising, catalog, and reporting functionality may use asynchronous or specialized operations. Support must be verified per resource. | Martini can orchestrate submission and status-polling workflows, store operation identifiers, and retry transient status requests. |
| File / attachment APIs | Limited | Pin creation supports media-oriented image and video workflows where permitted by the relevant endpoint, but Pinterest is not a general-purpose attachment repository. | Martini can validate media metadata and URLs, transform content, coordinate multi-step operations, and handle processing or validation responses. |
| Analytics API access | Yes | Pinterest exposes analytics for supported user, Pin, and advertising resources through API endpoints. | Martini can schedule retrieval, normalize JSON results, apply reporting-period rules, and write data to SQL databases or reporting applications. |
| Authentication | Yes | Pinterest uses OAuth 2.0 authorization, access tokens, refresh-token behavior, and scopes such as pins:read, pins:write, boards:read, and ads:read. | Martini can use protected configuration and secrets for OAuth client credentials and tokens, while workflows apply the required authorization configuration. |
| JSON payloads | Yes | Pinterest API v5 uses JSON request and response payloads for resource, publishing, catalog, advertising, and analytics operations. | Martini can parse, validate, map, transform, and generate JSON within API workflows. |
| Database access | No | Pinterest does not provide direct database access for external integrations; data is accessed through its APIs. | Martini can use Pinterest APIs as the source and write normalized results to a supported enterprise database. |
How Pinterest exposes data and business events
Pinterest REST APIs
Pinterest API v5 is the primary integration interface for Pins, Boards, Board sections, user accounts, advertising resources, catalogs, products, and supported analytics. Requests and responses use JSON over HTTPS and require OAuth 2.0 access.
Martini implementation pattern
Martini implementation pattern: a workflow retrieves input from an application or schedule, calls the appropriate Pinterest REST endpoint, transforms the JSON response, applies business rules, and writes the outcome to a target system or persistence layer.
Implementation sequence
Pinterest webhooks
Pinterest provides webhook-style notifications for selected resources and event types. Notifications should not be assumed to cover every change to every Pin, Board, catalog, or advertising object.
Martini implementation pattern
Martini implementation pattern: expose a controlled REST API endpoint, validate and persist each notification, deduplicate it, and retrieve the current Pinterest resource when an event needs enrichment. Scheduled polling covers unsupported changes.
Implementation sequence
Pinterest scheduled synchronization
For resources or events without webhook coverage, Pinterest REST collections can be synchronized using bookmark-based pagination. Analytics and catalog processes may also require scheduled or asynchronous orchestration.
Martini implementation pattern
Martini implementation pattern: a scheduler starts a bounded workflow, retrieves pages from Pinterest, transforms each result, writes successful changes, and stores the bookmark only after the page has been processed successfully.
Implementation sequence
Pinterest media and asynchronous operations
Pin creation can involve image or video-oriented media requirements, and selected advertising, catalog, or reporting functionality may use asynchronous operations. These behaviors must be verified for the specific resource.
Martini implementation pattern
Martini implementation pattern: validate media and source content, submit the Pinterest operation, store any operation identifier, poll where required, and publish a final status to the source or reporting system.
Implementation sequence
Common Pinterest integration patterns
Pattern 1: Synchronize product catalogs to Pinterest
When to use this pattern
Use this pattern when product and inventory data is managed in a commerce or ERP platform and Pinterest catalog or shopping workflows require a controlled product feed. It supports incremental processing, identifier mapping, and reconciliation.
Integration direction
Example Mapping
| Pinterest Field | Canonical Field | Target Field |
|---|---|---|
| product.id | sourceProductId | external_id |
| product.title | productName | title |
| product.image_url | primaryMediaUrl | media_link |
| product.price | salePrice | price |
Martini implementation pattern
A Martini workflow retrieves changed products, validates required attributes and media URLs, maps them to Pinterest catalog structures, submits supported operations, and stores Pinterest identifiers and response status. Rate-limit responses use controlled backoff, while validation failures are routed to review.
Martini capabilities used
- workflows
- API consumption
- data mapping
- business rules
- scheduled execution
- error handling
Pattern 2: Publish approved content as Pins
When to use this pattern
Use this pattern when a CMS or marketing platform approves content and Pinterest should become a publishing channel. It is useful for enforcing Board, media, consent, and content-quality rules before publication.
Integration direction
Example Mapping
| Pinterest Field | Canonical Field | Target Field |
|---|---|---|
| content.title | pinTitle | title |
| content.description | pinDescription | description |
| content.destination_url | destinationUrl | link |
| content.media_url | mediaUrl | media_source |
Martini implementation pattern
Martini receives approved content through an API or workflow trigger, verifies the destination Board and media requirements, transforms the payload, and calls the Pinterest Pin endpoint with OAuth 2.0. It returns the Pin ID and URL, while duplicate source keys and transient failures are handled defensively.
Martini capabilities used
- API exposure
- workflows
- data mapping
- validation
- business rules
- retry handling
Pattern 3: Consolidate Pinterest analytics
When to use this pattern
Use this pattern when organizations need Pinterest user, Pin, or advertising analytics in a common reporting model alongside commerce or campaign data. Reporting periods and processing delays should remain explicit.
Integration direction
Example Mapping
| Pinterest Field | Canonical Field | Target Field |
|---|---|---|
| pin_id | contentId | pinterest_pin_id |
| metric_value | metricValue | metric_value |
| start_date | reportStartDate | period_start |
| end_date | reportEndDate | period_end |
Martini implementation pattern
A scheduled Martini workflow requests supported analytics, normalizes JSON responses and reporting periods, enriches rows with source and query metadata, and writes them to a SQL database or reporting platform. Partial results and API errors are recorded separately from finalized reporting data.
Martini capabilities used
- scheduler triggers
- API consumption
- JSON handling
- data transformation
- SQL database integration
- monitoring
Pattern 4: Process Pinterest webhook notifications
When to use this pattern
Use this pattern for selected Pinterest resources and event types where webhook coverage is available. It provides lower-latency processing while preserving polling for unsupported changes.
Integration direction
Example Mapping
| Pinterest Field | Canonical Field | Target Field |
|---|---|---|
| event_id | eventId | source_event_id |
| resource_id | pinterestResourceId | pinterest_id |
| event_type | changeType | event_type |
| created_at | eventTimestamp | received_at |
Martini implementation pattern
A Martini API receives the notification, validates and persists it, checks a deduplication key, retrieves the current Pinterest resource when necessary, and updates the downstream application. Duplicate, out-of-order, and failed deliveries are handled with persistence, reconciliation, and controlled retries.
Martini capabilities used
- API exposure
- webhook consumption
- workflows
- deduplication
- API consumption
- error handling
Applications commonly integrated with Pinterest
Pinterest is commonly connected with commerce, marketing, advertising, and reporting applications. The exact Pinterest permissions, endpoint support, and capabilities of each adjacent product should be verified for the implementation.
| Application | Scenario | Direction | Martini Pattern |
|---|---|---|---|
| Shopify | Publish product catalogs and shopping content to Pinterest and return Pinterest catalog or campaign status to commerce and reporting processes. | Shopify → Martini → Pinterest | A Martini workflow retrieves product and inventory data, maps it to Pinterest catalog structures, applies field and eligibility rules, submits the data through Pinterest API v5, and stores Pinterest identifiers and synchronization status. |
| Adobe Commerce | Synchronize product data, inventory-related attributes, and promotional content for Pinterest catalog and campaign workflows. | Adobe Commerce → Martini → Pinterest | Martini retrieves changed products, validates required media and attributes, transforms the payload, submits catalog operations, and routes validation or throttling failures for retry or review. |
| Salesforce | Coordinate campaign, lead, customer, advertising, or audience-related processes where the applicable Pinterest and Salesforce permissions are available. | Salesforce → Martini → Pinterest | Martini orchestrates Salesforce API calls and Pinterest advertising workflows, normalizes identifiers and statuses, applies consent and ownership rules, and records outcomes for reconciliation. |
| NetSuite | Use item and product data from NetSuite for Pinterest catalog processes and consolidate Pinterest results for operational or financial reporting. | NetSuite → Martini → Pinterest | A scheduled Martini workflow retrieves NetSuite items, maps product fields and media references, submits supported Pinterest operations, and persists Pinterest IDs and response status. |
| WooCommerce | Publish store products and product media to Pinterest catalog or shopping workflows. | WooCommerce → Martini → Pinterest | Martini consumes WooCommerce product data, validates URLs and media requirements, transforms products into Pinterest structures, and retries transient API failures without duplicating successful submissions. |
| Hootsuite | Coordinate Pinterest content publishing and reporting within a broader social-media operating model. | Hootsuite → Martini → Pinterest | Martini exchanges approved content and publishing status between the platforms where their current APIs and permissions allow, using reusable mappings and explicit status reconciliation. |
| Sprout Social | Consolidate Pinterest publishing, monitoring, and reporting with other social channels where the current product integration supports the required use case. | Sprout Social → Martini → Pinterest | A Martini workflow normalizes publishing or engagement data, applies channel-specific rules, and forwards results between Sprout Social and Pinterest through their confirmed endpoints. |
| Google Analytics | Correlate Pinterest referral and campaign activity with website analytics and conversion reporting. | Pinterest → Martini → Google Analytics | Martini retrieves supported Pinterest analytics, normalizes reporting periods and campaign identifiers, enriches the results, and sends them to a reporting workflow or analytics destination. |
How to build a Pinterest integration in Martini
Objective
Establish Pinterest OAuth 2.0 access with only the scopes required by the workflows.
Instructions in Martini
- Create or configure the Pinterest application credentials
- Store client credentials, access tokens, and refresh credentials as Martini secrets
- Configure the Pinterest REST API request authentication
- Separate development, test, and production credentials where practical
Objective
Select the execution model that matches the Pinterest use case and its event coverage.
Instructions in Martini
- Use an API or source-system request for content publishing
- Use supported Pinterest webhook notifications for selected events
- Use a scheduler for analytics, catalog, or unsupported-event synchronization
- Define a bounded processing window and checkpoint strategy
Objective
Receive Pinterest notifications or retrieve current resources through Pinterest API v5.
Instructions in Martini
- Validate inbound webhook requests before processing
- Call the relevant Pinterest REST endpoint
- Follow bookmark-based pagination for collection endpoints
- Persist checkpoints only after successful page processing
Objective
Coordinate calls, transformations, persistence, and downstream actions in a maintainable Martini workflow.
Instructions in Martini
- Separate Pinterest request logic from business rules
- Route Pins, Boards, catalogs, advertising, and analytics to the appropriate processing path
- Persist event, resource, and operation identifiers
- Use reusable workflow logic for common response handling
Objective
Transform Pinterest JSON and source-system payloads into a canonical model with explicit validation.
Instructions in Martini
- Map vendor fields to internal and target fields
- Validate required scopes, identifiers, media, URLs, and reporting periods
- Handle optional Pinterest fields defensively
- Apply consent, ownership, Board, and content eligibility rules
Objective
Persist Pinterest results or update downstream applications after successful processing.
Instructions in Martini
- Write normalized data to a database, warehouse, CMS, commerce platform, or reporting application
- Store Pinterest IDs and source-to-Pinterest mappings
- Return publishing status and identifiers to the initiating system
- Keep failed writes distinguishable from failed Pinterest calls
Common Pinterest data objects used in integrations
| Object | Typical Use | Common target systems | Martini handling |
|---|---|---|---|
| Pins | Publish visual content containing media, titles, descriptions, links, and Board placement information; retrieve Pin status or analytics. | CMS, Shopify, Adobe Commerce, WooCommerce, reporting platforms | Martini maps approved content and media references to Pin fields, validates requirements, calls the REST API, and stores the Pinterest Pin ID and status. |
| Boards | Organize Pins into Pinterest collections and select destinations for content publishing. | CMS, marketing platforms, commerce platforms | Martini retrieves or validates Board identifiers, applies publishing rules, and routes content to the permitted Board. |
| Board sections | Further organize Pins within a Board for structured content or product collections. | CMS, commerce platforms, content operations systems | Martini resolves Board section identifiers and includes them in publishing or synchronization mappings where supported. |
| User accounts | Read Pinterest account information and support delegated-account context for authorized workflows. | Identity stores, CRM platforms, administration systems | Martini retrieves scoped account data, normalizes identifiers, and applies authorization and tenant-routing rules. |
| Ad accounts | Manage or report on Pinterest advertising resources and supported campaign analytics. | Salesforce, marketing platforms, data warehouses | Martini retrieves or submits supported advertising data, tracks asynchronous operations where applicable, and normalizes reporting results. |
| Catalogs and products | Support commerce and shopping scenarios by synchronizing product data and catalog structures. | Shopify, Adobe Commerce, NetSuite, WooCommerce, data warehouses | Martini maps item attributes, media, and identifiers, submits supported catalog operations, and records synchronization outcomes. |
Authentication and security considerations
OAuth 2.0 and scopes
Pinterest uses OAuth 2.0 delegated authorization and scoped access tokens. Request only the scopes required for each workflow, such as pins:read, pins:write, boards:read, user_accounts:read, or advertising scopes where applicable.
Secrets and environments
Store Pinterest client credentials, access tokens, and refresh credentials as protected Martini secrets rather than embedding them in workflows or mappings. Separate credentials for development, testing, and production where practical.
Data protection
- Do not expose access tokens in logs or error payloads.
- Apply least-privilege scopes and restrict inbound API endpoints.
- Plan for token expiration, revocation, and reauthorization.
Operational considerations for Pinterest integrations
Rate limits and retries
Pinterest may return throttling responses. Recognize 429 responses, apply controlled backoff, and avoid aggressive retry loops.
Pagination and checkpoints
Use Pinterest bookmark-based pagination for collections. Store a bookmark only after the corresponding page has been processed successfully, and do not assume that a bookmark remains valid indefinitely.
Idempotency
Webhook deliveries may be duplicated or arrive out of order. Persist event identifiers, resource identifiers, or composite business keys, and maintain source-to-Pinterest mappings for Pins and catalog synchronization.
Media and schema changes
Validate media type, size, URL accessibility, and processing status before Pin creation. Isolate Pinterest mappings in reusable assets, handle optional fields defensively, and monitor API version, scope, and deprecation changes.
Testing and observability
Test representative publishing, catalog, webhook, pagination, and analytics cases. Capture response bodies and correlation information without secrets, and route persistent validation failures to a review or dead-letter process.
Why use Martini instead of scripts or point-to-point integrations?
Reusable orchestration
Martini coordinates Pinterest API calls, source applications, databases, and reporting destinations in workflows rather than embedding integration logic in isolated scripts.
Controlled transformation
Mappings, validation, and business rules can be maintained separately from Pinterest request configuration, making catalog, content, and analytics flows easier to adapt.
Operational resilience
Workflows can implement checkpoints, pagination, deduplication, backoff, classified error handling, and monitoring for Pinterest's rate limits and selective webhook coverage.
API-led integration
Martini can consume Pinterest REST APIs and expose controlled APIs for source systems or webhook delivery, creating reusable integration assets without requiring a dedicated vendor connector.
Frequently asked questions
Pinterest can be integrated through Pinterest API v5, an OAuth 2.0-protected HTTPS REST API using JSON. The API supports Pins, Boards, Board sections, user accounts, advertising resources, catalogs, products, and selected analytics. Pinterest also provides webhook-style notifications for selected resources, while scheduled REST synchronization can cover unsupported event scenarios.
Yes. Martini can consume Pinterest REST APIs, use OAuth 2.0 credentials stored as secrets, expose an API endpoint for supported Pinterest webhook notifications, transform JSON payloads, and orchestrate synchronization with databases, commerce platforms, CMSs, and reporting systems.
No. A dedicated Pinterest connector is not required. Martini can integrate using Pinterest's confirmed native mechanisms, including API v5 REST endpoints, OAuth 2.0, supported webhook notifications, JSON payloads, and scheduled synchronization.
Lonti does not charge an additional per-connector or per-vendor fee to integrate Pinterest. The integration is subject to the provisioned capacity of the Martini environment. Separate costs may apply from Pinterest, cloud infrastructure, databases, or other third-party systems depending on subscriptions, usage, and deployment model.
Pinterest API v5 REST endpoints are the primary method for Pins, Boards, Board sections, accounts, advertising, catalogs, products, and supported analytics. OAuth 2.0 is required for delegated access. Use selected webhooks where the required resource and event are covered, and scheduled bookmark-based synchronization elsewhere.
Pinterest provides webhook-style notifications for selected resources and event types, but coverage is not universal. Martini can expose a REST endpoint to receive, validate, deduplicate, and process supported notifications. Scheduled API polling should be used for changes without webhook coverage.
Martini can run event-driven workflows for supported notifications or scheduled workflows for API polling. Collection endpoints commonly use bookmark-based pagination; checkpoints should be stored only after successful processing. Source-to-Pinterest identifiers, reporting periods, and synchronization status can be persisted for reconciliation.
Martini maps Pinterest JSON into canonical and target models, validates media and required fields, applies business rules, and writes results to downstream systems. Workflows can distinguish authentication, permission, validation, throttling, transient, and missing-resource errors, use controlled backoff for retryable failures, and deduplicate webhook or publishing operations.
Related Martini documentation
Martini APIs
Workflows
Connect Pinterest with Martini
Use Martini to build maintainable Pinterest integrations for content publishing, catalog synchronization, webhook processing, and analytics workflows across enterprise systems.