Pinterest Poster Data
Point a pin at a board, then let the pack publish it
- pin_thumbnail
- pinterest_data
Pinterest posts are called pins, and pins belong to boards - so where every other platform node in this pack asks you to pick an account, PinterestPosterData asks you to pick a board. That's its defining difference, and its one required input, target_board, is a dropdown of the boards on your connected Pinterest account.
As with the rest of the SocialMan suite, that dropdown is only populated once you've set a token in SocialManPoster. Before that it reads "Refresh or set the token," which is less a label and more a to-do list. Grab a token from mltask.com/user/comfyui, set it (plus a password) in the poster node's custom UI, and the board names appear. The node resolves your chosen board name to its board ID before anything is sent.
Then the pin itself:
- title - the pin's title, multiline, default "Pinterest Title."
- description - the pin description, multiline. Pinterest is a search engine disguised as a mood board; this is where your keywords live.
- link - a URL to attach to the pin (your site, a product page, whatever). Leave blank for a pure image pin. It's the only single-line input here.
- pin_thumbnail (IMAGE) - a cover for video pins. Saved to your output folder and uploaded with the media.
Output is pinterest_data, which goes into SocialManPoster's pinterest_data input. The recurring rule applies: the thumbnail is video-only, and it's stripped from the payload when the media is an image. So if you're pinning generated stills - the most common Pinterest use case by far - you can ignore the thumbnail input entirely.
The flow, end to end: this node reads your board list from socialman.json, packs the board ID, title, description, link, and optional thumbnail path into a dict, and hands it to SocialManPoster. The poster then sends everything to MLTask's API (comfy.api.mltask.com/v1/create-post), uploads the media to a pre-signed URL, and finalizes the pin. Pinterest's own API is never called from your machine - that's the whole point of the service. If a dialog complains about tokens or subscriptions, it came from the poster node, and the fix is usually mltask.com/user/comfyui.
Installing it
Ships in the MLTask_ComfyUI pack. ComfyUI Manager: search MLTask_ComfyUI, install, restart; or:
cd ComfyUI/custom_nodes
git clone https://github.com/misterjoessef/MLTask_ComfyUI
Only requests and aiohttp in requirements - the pack is light; the service is what you're really signing up for. The README's example workflow shows a Pinterest node wired into the poster alongside all the others, which is a decent template: if you're multi-posting, connect Pinterest right next to your Instagram and Facebook forms and they all fire in one run.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| target_board | COMBO | Refresh or set the token | 0 options: |
| titleopt | STRING | Pinterest Title | — |
| descriptionopt | STRING | Pinterest Description | — |
| linkopt | STRING | — | |
| pin_thumbnailopt | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| pinterest_data | MLT_SM_PINTEREST_DATA | — |