# Pinterest

## Pinterest – Connector Configuration

### Step 1: Create a Pinterest Business Account & Access Developer Portal

* Create or upgrade to a Pinterest Business account at [Pinterest Business](https://business.pinterest.com/)
* Navigate to the [Pinterest Developers Portal](https://developers.pinterest.com/)
* Sign in with your Pinterest Business account credentials

> ⚠️ **Note**: You need a Pinterest Business account to access the Pinterest API. Personal accounts cannot create apps.

***

### Step 2: Create Your App

1. **Create a new app**:
   * Go to [My Apps](https://developers.pinterest.com/apps/) in the developer portal
   * Click **"Create app"**
   * Fill in the application details:
     * **App name** (e.g., "My Pinterest Integration")
     * **App description** - Describe what your integration does
     * **Website URL** - Your application's website
     * **Platform** - Select "Web" for most integrations
2. **App Configuration**:
   * **App type**: Choose between "Public" or "Internal"
   * **Linked Business Account**: Link to your Pinterest Business account
   * **App Purpose**: Specify how you'll use Pinterest data

***

### Step 3: Configure OAuth Settings

1. **Navigate to App Settings**:
   * In your app dashboard, go to **"OAuth"** or **"Settings"** section
   * Configure OAuth redirect URIs
2. **Set Redirect URIs**:
   * Add your callback URL in the **"Redirect URIs"** field
   * For Appmixer, set the redirect URI to:

```http
https://[YOUR_API_BASE]/auth/pinterest/callback
```

Example:

```http
https://api.appmixer.com/auth/pinterest/callback
```

3. **Configure Scopes**:
   * Select the permissions your app needs:
     * `read_public` - Read public boards and pins
     * `write_public` - Create public boards and pins
     * `read_secret` - Read secret boards and pins (if authorized)
     * `write_secret` - Create secret boards and pins (if authorized)
     * `read_users` - Read user profile information
     * `write_users` - Update user profile information

***

### Step 4: Copy Your Credentials

After configuring your app, you'll find your API credentials:

* **App ID** (Client ID) - Your application's unique identifier
* **App secret** (Client Secret) - Your application's secret key

⚠️ **Important**: Keep your App Secret secure and never expose it in client-side code!

***

### Step 5: App Review Process

**For Public Apps**:

1. **Submit for Review**:
   * Public apps require Pinterest review before going live
   * Provide detailed use case description
   * Include screenshots and flow documentation
   * Specify which scopes you need and why
2. **Review Requirements**:
   * Your app must comply with Pinterest's API policies
   * Demonstrate legitimate use of requested permissions
   * Show how user data will be handled responsibly

***

### Step 6: Connector Configuration

1. Go to the Appmixer BackOffice -> Configuration.
2. Add new configuration: `acme:pinterest`.
3. Add your `clientId` (App ID) and `clientSecret` (App Secret) keys with values.

   ![alt text](https://802996127-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIAGKHlIqVKJe9agnFr14%2Fuploads%2Fgit-blob-30714c79c71f71ba3ea12371b896dc6c3f1f9467%2FpinterestImage-1.png?alt=media) ![alt text](https://802996127-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIAGKHlIqVKJe9agnFr14%2Fuploads%2Fgit-blob-5188f14eed433dce2a00373d33dafc84ccb1ad3c%2FpinterestImage-2.png?alt=media)

***

### Step 7: Rate Limits

**Rate Limits**:

* Pinterest implements rate limiting per user and per app
* Specific limits depend on your app's approval status and usage
* Rate limit information is included in API response headers

***

### Important Notes

⚠️ **Business Account Required**:

* Only Pinterest Business accounts can create and manage apps
* Personal accounts cannot access the Pinterest API
* Convert your personal account to business if needed

⚠️ **Content Policy**:

* Pinterest has strict content policies and community guidelines
* All programmatically created content must comply with these rules
* Violations can result in API access suspension

⚠️ **Token Management**:

* Access tokens have expiration times
* Implement proper token refresh logic
* Store tokens securely and never expose them

⚠️ **Attribution**:

* Display appropriate Pinterest branding when required
* Follow Pinterest's brand guidelines
* Include proper attribution for Pinterest content

***

### Useful Links

* [Pinterest Developers Documentation](https://developers.pinterest.com/)
* [API Reference](https://developers.pinterest.com/docs/api/v5/)
* [OAuth Guide](https://developers.pinterest.com/docs/getting-started/authentication/)
* [Rate Limits](https://developers.pinterest.com/docs/getting-started/rate-limits/)
* [Pinterest Business](https://business.pinterest.com/)
* [Community Guidelines](https://policy.pinterest.com/community-guidelines)
* [Brand Guidelines](https://business.pinterest.com/brand-guidelines/)

***
