Appbricx
Docs
FeaturesPricingStart free

Get started

OverviewWhat Appbricx isQuickstart with a coding agentQuickstart with the builderCore concepts

Guides

Data and tablesAccess and rolesBusiness rulesSign-inCustom screensRealtime and topicsWorkflows, schedules and webhooksServer functionsAI in your appPaymentsFilesMessagesIntegrationsVerifyPublishing, domains and rollbackOperating your appExport and self-hostSelf-host install

Tutorials

Build a booking app with Claude CodeMulti-user todo listClient portalSlack on new sign-upTemplates

Reference

Reference homeFrontend SDKHTTP APIMCP toolsCLIIntegrations catalogContract formatAI key resolutionRun Appbricx locally

Pinterest

Create pins, manage boards, and browse your Pinterest content.

Social mediaOAuth6 actionsAll integrations

On this page
  1. Connect
  2. Call it from a workflow
  3. Actions (6)
  4. createPin
  5. createBoard
  6. deletePin
  7. findBoardByName
  8. findPin
  9. updateBoard
  10. Details

Connect

Auth type: OAuth (oauth2). Click Connect and approve access on the provider's page. Appbricx runs the OAuth flow (signed single-use state, PKCE where the provider supports it), stores the tokens encrypted and refreshes them before they expire.

OAuth needs an OAuth app: the platform's when the operator configured one, or your own (admin panel, Integrations, Configure). You can also bring your own credentials.

  • In the editor: Backend panel, Integrations tab, then Connect. This connects it for the project.
  • For every project in a workspace: Workspace settings, Integrations.
  • Owners and admins choose which integrations members may connect in the admin panel (Integrations tab), and can attach their own OAuth app there.

Call it from a workflow

Pass the action name and its input. The call resolves with { success, output, error? }; a missing connection resolves with success false and the reason. See ctx.integrations.invoke and ctx.integrations.call.

Native workflow
// .workflow.js (native ctx)
export async function run(ctx) {
  const res = await ctx.integrations.invoke("pinterest", "createPin", {
    "board_id": "<board_id>",
    "title": "<title>",
    "media_source_type": "image_url",
    "media_url": "<media url>"
  });
  if (!res.success) throw new Error(res.error);
  ctx.log.info("Pinterest answered", { output: res.output });
}
defineWorkflow module
// defineWorkflow module (@app/sdk ctx)
import { defineWorkflow } from "@app/sdk";

export default defineWorkflow({
  id: "pinterest-createpin",
  name: "Pinterest: Create Pin",
  description: "Calls Pinterest when a row is created.",
  trigger: { type: "entity_event", entity: "tickets", event: "created" },
  async run(ctx, event) {
    const res = await ctx.integrations.call("pinterest", {
      "action": "createPin",
      "board_id": "<board_id>",
      "title": "<title>",
      "media_source_type": "image_url",
      "media_url": "<media url>"
    }) as { success: boolean; error?: string };
    if (!res.success) throw new Error(res.error);
  },
});
From an app (connector proxy)
curl -X POST "$APP_ORIGIN/__appbricx/connector-proxy/pinterest/createPin" \
  -H "Authorization: Bearer $APP_KEY" \
  -H "content-type: application/json" \
  -d '{"props":{"board_id":"<board_id>","title":"<title>","media_source_type":"image_url","media_url":"<media url>"}}'

Actions

createPinin catalog

Create Pin. Upload an image or video to create a new Pin on a board.

InputTypeDescription
ad_account_idoptionalid (picked from your account)Ad account Id
board_idrequiredid (picked from your account)Board Id
board_section_idoptionalid (picked from your account)Board Section Id
titlerequiredtextThe title of the Pin (max 100 characters).
descriptionoptionallong textThe description of the Pin (max 800 characters).
media_source_typerequiredone of "image_url" | "image_base64" | "video_url"The type of media source for the Pin.
media_urlrequiredtextThe URL of the image or video to upload. Must be a valid URL.
linkoptionaltextThe destination URL that the Pin will link to when clicked.
dominant_coloroptionaltextThe dominant color of the Pin as a hex color code (e.g., "#6E7874").
alt_textoptionaltextAlternative text for accessibility and screen readers (max 500 characters).
parent_pin_idoptionaltextThe ID of the original Pin if this is a saved/repinned Pin.
sponsor_idoptionaltextThe sponsor account ID for paid partnership content. Available only to select users in closed beta.
product_tagsoptionalids (picked from your account)Select one or more options
noteoptionaltextA private note for this Pin that only you can see.
is_removableoptionalbooleanSet to true to create an ad-only Pin that can be easily removed.

createBoard

Create Board. Create a new Pinterest board for organizing Pins.

InputTypeDescription
ad_account_idoptionalid (picked from your account)Ad account Id
namerequiredtextThe name of the board (max 180 characters).
descriptionoptionallong textOptional description for your board.
privacyoptionalone of "PUBLIC" | "PROTECTED" | "SECRET"Board privacy setting (auto-set to "PROTECTED" for ad-only boards).
is_ads_onlyoptionalbooleanCreate an ad-only board that can only store promotional Pins. Note: Board name will become "Ad-only Pins" and privacy will be set to "PROTECTED".

deletePin

Delete Pin. Permanently delete a specific Pin.

InputTypeDescription
pin_idrequiredid (picked from your account)pin Id
ad_account_idoptionalid (picked from your account)Ad account Id

findBoardByName

Find Board by Name. Search for boards by name using Pinterest's search API.

InputTypeDescription
queryrequiredtextThe search term to find boards (required).
ad_account_idoptionalid (picked from your account)Ad account Id
bookmarkoptionaltextPagination bookmark from previous response.

findPin

Find Pin by Title/Keyword. Search for Pins using title, description, or keywords.

InputTypeDescription
ad_account_idoptionalid (picked from your account)Ad account Id
queryrequiredtextSearch terms for pin titles, descriptions, or tags. You can also search using comma-separated pin IDs.
bookmarkoptionaltextBookmark token from previous search results for pagination.
max_resultsoptionalnumberMaximum number of pins to return (useful for large result sets).

updateBoard

Update Board. Update a board's name, description, or privacy settings.

InputTypeDescription
board_idrequiredid (picked from your account)Board Id
ad_account_idoptionalid (picked from your account)Ad account Id
nameoptionaltextThe new name of the board (max 180 characters). Leave empty to keep current name.
descriptionoptionallong textThe new description of the board (max 500 characters). Leave empty to keep current description.
privacyoptionalone of "PUBLIC" | "PROTECTED" | "SECRET"Update board privacy setting. Leave empty to keep current setting.

Details

Id
pinterest
Category
Social media
Tags
social, visual, pins, boards, inspiration
Package
@activepieces/piece-pinterest@0.1.3
Tier
Community

On this page

  1. Connect
  2. Call it from a workflow
  3. Actions (6)
  4. createPin
  5. createBoard
  6. deletePin
  7. findBoardByName
  8. findPin
  9. updateBoard
  10. Details
Appbricx

The backend, runtime and hosting for apps your coding agent builds. On our cloud, in yours, or on your own servers.

Features

Coding agents and MCPVerify testingBuilder consolePostgres databaseData APIRealtimeRow-level securitySign-in and authPaymentsWorkflows and jobsAI in your appIntegrationsBackups and rollbackHosting and domainsSelf-host and exportAll features

Product

ShowcasePricingFor coding agentsTemplatesPrivate cloudBring your own AI keyFAQ

Compare

Appbricx vs SupabaseLovable alternativeBolt alternativeFor freelancersFor agencies

Resources

DocumentationReferenceBlogSupportContact

© 2026 Appbricx. All rights reserved.

TermsPrivacyCookiesAcceptable Use