> ## Documentation Index
> Fetch the complete documentation index at: https://docs.markifact.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom Pinterest Ads App

> Connect Pinterest Ads through your own Pinterest app (white-label) by pasting your app ID, app secret, and a refresh token.

Markifact supports two ways to connect Pinterest Ads: using the built-in **Markifact app** (Quick Connect) or connecting through your own **Pinterest app** (Custom App). With a custom app, every request Markifact makes runs under your app in the ad account's activity, so your clients never see Markifact.

<Note>
  Custom app connections are available on the **Team** plan. See [White-label Connections](/core-concepts/white-label-connections) for the overview.
</Note>

***

## What You Need

| Item                             | Value                                                                                             |
| :------------------------------- | :------------------------------------------------------------------------------------------------ |
| **App ID and App Secret**        | From your app's page in the Pinterest developer portal                                            |
| **Refresh Token**                | Minted against that app with the scopes below                                                     |
| **Scopes**                       | `ads:read`, `ads:write`, `user_accounts:read` (plus the pins and boards scopes for pin-based ads) |
| **Pinterest user for the token** | a Pinterest user with access to the ad accounts you want to manage                                |

<Card title="Create the app and mint the refresh token" icon="pinterest" href="/core-concepts/custom-pinterest-app">
  The Pinterest setup (app, standard access, authorization URL, code exchange) is the same for both Pinterest channels and lives on one page.
</Card>

***

## Connect to Markifact

<Steps>
  <Step title="Open the Custom App tab">
    Go to the [Connections](https://app.markifact.com/connections) page, click **Connect** on **Pinterest Ads**, and select the **Custom App (White-label)** tab.
  </Step>

  <Step title="Name the connection">
    Enter a **Connection Name** (for example "Acme Agency Pinterest Ads"). This is how the connection appears in nodes, agents, and MCP.
  </Step>

  <Step title="Paste your credentials">
    Paste the **App ID**, **App Secret**, and **Refresh Token** from your Pinterest app.
  </Step>

  <Step title="Verify & Connect">
    Markifact refreshes the token once with your app, then makes one call that lists the ad accounts the token can reach. Nothing is saved unless both succeed.
  </Step>
</Steps>

Custom app connections show a **Custom app** badge on the Connections page and work everywhere a Quick Connect connection works.

***

## Rotating or Replacing the Token

Add the connection again with the **same connection name** and the new refresh token. Markifact replaces the stored credentials in place, so workflows and agents bound to the connection keep working.

***

## Troubleshooting

<Accordion title="This Pinterest user has no ad accounts">
  The user who minted the token has no access to any ad account. Grant access under Ads Manager > Business access, then mint a new token.
</Accordion>

<Accordion title="App, token or scope errors">
  See the shared [Custom Pinterest App](/core-concepts/custom-pinterest-app#troubleshooting) troubleshooting for authentication failures, missing scopes and trial access limits.
</Accordion>

***

## Related

<CardGroup cols={2}>
  <Card title="Custom Pinterest App" icon="pinterest" href="/core-concepts/custom-pinterest-app">
    Create the app and mint a refresh token
  </Card>

  <Card title="Get Report" icon="chart-line" href="/nodes/pinterest_ads/pinterest_ads_get_report">
    Pull Pinterest Ads performance data
  </Card>
</CardGroup>
