PRISM for AI apps and developers
Everything PRISM does is a tool: 94 of them. Use them from Claude, ChatGPT, or Cursor (MCP), or from your own code (REST). Both use the same tools and the same rules.
Connect
MCP (AI apps)
Streamable HTTP. Sign in with OAuth (Claude.ai, ChatGPT) or an API key.
https://www.prism-app.com/api/mcpclaude mcp add --transport http prism https://www.prism-app.com/api/mcp --header "Authorization: Bearer prism_…"REST API
POST JSON to /api/v1/<tool>. GET /api/v1 lists every tool with its JSON schema.
curl -X POST https://www.prism-app.com/api/v1/make_post \
-H "Authorization: Bearer prism_…" \
-H "Content-Type: application/json" \
-d '{"input":"3 ways to plan your week with AI","intent":"expand","format":"carousel"}'Moving from original PRISM
After launch, the planned bridge will forward supported old API and MCP addresses to PRISM 3. Refresh your MCP tool list: new tools there start with prism3_. Direct /api/mcp and /api/v1 calls use regular tool names.
Valid original API keys keep their permissions. On the bridge, imported original keys retain five-credit pictures, four-credit standalone picture edits and free text rewrites. New keys and fresh OAuth connections use current native prices.
Older SSE-only clients must reconnect using Streamable HTTP.
Reconnect OAuth apps to the current /api/mcp endpoint. Unsupported old tools or script options return a guide before making changes; use the current catalog and input schema. Your saved original work remains available in PRISM.
Rules
- Auth:
Authorization: Bearer prism_…(API key from Settings) or an OAuth access token. OAuth discovery:https://www.prism-app.com/.well-known/oauth-authorization-server. - Costs: write a post 5 credits, each AI picture 10, a rewrite 1, 8 ideas 1. Everything else is free. Failed AI work is refunded.
- Limits: 120 tool calls a minute per key or app. Errors come back as
{ "error": "...", "code": "..." }with a real HTTP status (REST), orisError(MCP). - Team members' keys work in the team account they were made in. Billing tools are not offered.
Start
get_startedPOST /api/v1/get_startedread onlyStart here. Who is signed in, their plan and credits, what things cost, their brands (with the active one), and connected social accounts. Call this first in a new chat.
get_creditsPOST /api/v1/get_creditsread onlyCredit balance, plan, what things cost, and the latest credit history.
Brands
list_brandsPOST /api/v1/list_brandsread onlyAll brands in this account.
get_brandPOST /api/v1/get_brandread onlyOne brand in full: voice, audience, colors, fonts, go-to style, saved looks, and connected accounts (with Pinterest boards and Discord / Slack channels).
| brandId | string | Brand id. Leave out to use the active brand. |
make_brandPOST /api/v1/make_brandchanges thingsCreate a new brand. Name and colors are needed; everything else helps PRISM write in the right voice. Plans include a set number of brands.
| brand* | object | The brand. palette needs background, surface, text, muted, primary, accent as #RRGGBB. |
update_brandPOST /api/v1/update_brandchanges thingsChange some brand fields (voice, audience, writing rules, language, colors, fonts, go-to style or size, logos) or the deeper profile: { profile: { offers, pillars: [..], painPoints, values, story, opinions, phrasesUse, phrasesAvoid, imageAvoid, ctas: [..], captionLength: short|medium|long, xPremium, captionFooter } }. Only the fields you send change.
| brandId | string | Brand id. Leave out to use the active brand. |
| changes* | object | Fields to change, like { voice: '...', cta: '...' }. |
fill_brand_from_websitePOST /api/v1/fill_brand_from_websiteread onlyRead a website (or pasted text about the brand) and suggest a brand name, niche, audience, voice, call to action, hashtags, offers, content pillars, audience pain points, brand colors (palette), and fonts. Saves nothing; use update_brand or make_brand with what you keep. Free, up to 20 an hour.
| url | string | |
| text | string | Or: text about the brand (bio, about page). |
delete_brandPOST /api/v1/delete_brandchanges thingsdeletesDelete a brand and all its posts and autolists. Scheduled posts are taken off the schedule first. Cannot be undone. Ask the creator to confirm first.
| brandId* | string | The brand id. |
| confirm* | boolean | Must be true: the creator said yes. |
Make posts
make_postPOST /api/v1/make_postchanges thingsWrite a post with AI (5 credits, plus 10 for each AI picture). Takes an idea, pasted text, a link, several links, a YouTube link, or uploaded PDF / picture links. intent: expand (grow a short idea), research (look it up on the web first), source (use only what was given), exact (keep the creator's words). format: carousel (3-12 slides), single, text, thread, script, note (Substack), article, or video (needs a video from upload_video). Pick a style with list_styles, or a saved look with list_looks (lookId). imagePlan for photo styles: all, cover, or none. Tell the creator the cost first. Takes 15 to 60 seconds. Returns the post and an editInPrism link.
| brandId | string | |
| input* | string | |
| kind | idea | text | url | youtube | links | pdf | image | |
| intent | source | expand | exact | research | |
| format | carousel | single | text | thread | script | note | article | video | |
| slideCount | integer | |
| styleId | string | |
| aspect | 4:5 | 1:1 | 9:16 | 3:4 | 16:9 | |
| imagePlan | all | cover | none | |
| settings | object | |
| extra | string | |
| lookId | string | |
| video | object | |
| sourceId | string | |
| saveSource | boolean | |
| picturesLater | boolean | |
| ideaId | string | Mark this saved idea as used. |
make_post_from_my_textPOST /api/v1/make_post_from_my_textchanges thingsMake a post with exactly the creator's words. No AI, no credits. For slide formats give slides; for thread, script, or article give parts; for text, note, or video give caption.
| brandId | string | Brand id. Leave out to use the active brand. |
| format* | carousel | single | text | thread | script | note | article | video | |
| title | string | |
| styleId | string | |
| aspect | 4:5 | 1:1 | 9:16 | 3:4 | 16:9 | |
| slides | array | |
| parts | array | |
| caption | string | |
| hashtags | array |
make_many_postsPOST /api/v1/make_many_postschanges thingsMake up to 25 posts at once: one idea or link per item, all with the same format and style (5 credits each, plus pictures). Returns a batch id; call check_batch to move it along and see progress.
| intent | source | expand | exact | research | |
| format | carousel | single | text | thread | script | note | article | video | |
| slideCount | integer | |
| styleId | string | |
| aspect | 4:5 | 1:1 | 9:16 | 3:4 | 16:9 | |
| imagePlan | all | cover | none | |
| settings | object | |
| extra | string | |
| lookId | string | |
| video | object | |
| sourceId | string | |
| saveSource | boolean | |
| picturesLater | boolean | |
| brandId | string | Brand id. Leave out to use the active brand. |
| items* | array |
make_post_formatsPOST /api/v1/make_post_formatschanges thingsMake the same idea in each selected format. Returns a batch id; call check_batch to make the posts and follow progress. Choose a fresh requestId for each new idea and reuse it if the request needs a retry.
| brandId | string | Brand id. Leave out to use the active brand. |
| input* | string | |
| kind | idea | text | url | youtube | links | pdf | image | |
| intent | source | expand | exact | research | |
| slideCount | integer | |
| styleId | string | |
| aspect | 4:5 | 1:1 | 9:16 | 3:4 | 16:9 | |
| imagePlan | all | cover | none | |
| settings | object | |
| extra | string | |
| ideaId | string | |
| lookId | string | |
| video | object | |
| sourceId | string | |
| saveSource | boolean | |
| picturesLater | boolean | |
| formats* | array | |
| requestId* | string |
check_batchPOST /api/v1/check_batchchanges thingsSee a batch's progress and make its next post (call again until done). action: continue (default), stop, or retry_failed.
| batchId* | string | The batch id. |
| action | continue | stop | retry_failed |
Read posts
list_postsPOST /api/v1/list_postsread onlyPosts for a brand, newest first. status: all, draft, upcoming (scheduled), published, failed, archived, or trash. Archived posts only show with status archived. Filter by title words, a tag (see list_tags), or a network like INSTAGRAM.
| brandId | string | Brand id. Leave out to use the active brand. |
| status | all | draft | upcoming | published | failed | archived | trash | |
| search | string | |
| tag | string | Only posts with this tag. |
| platform | INSTAGRAM | TIKTOK | FACEBOOK | LINKEDIN | TWITTER | THREADS | BLUESKY | MASTODON | PINTEREST | REDDIT | DISCORD | SLACK | GOOGLE_BUSINESS | YOUTUBE | Only posts that went (or will go) to this network. |
| limit | integer |
get_postPOST /api/v1/get_postread onlyOne post in full: slides (with picture status), parts, caption, hashtags, other hooks, and posting status. Also moves unfinished AI pictures along.
| postId* | string | The post id. |
list_versionsPOST /api/v1/list_versionsread onlySaved copies of a post (one every 10 minutes while editing, plus the first draft).
| postId* | string | The post id. |
Edit posts
update_postPOST /api/v1/update_postchanges thingsChange a post's title, style, size, caption, hashtags, or colors / fonts / text size / alignment. Only what you send changes. Free.
| postId* | string | The post id. |
| title | string | |
| styleId | string | |
| aspect | 4:5 | 1:1 | 9:16 | 3:4 | 16:9 | |
| caption | string | |
| hashtags | array | |
| theme | object | Colors (palette), headingFont, bodyFont, textScale 0.6-1.5, textAlign, showHandle, showPageNumbers. |
edit_slidePOST /api/v1/edit_slidechanges thingsChange the words on one slide (small label, headline, text), its type, or its picture idea. Wrap words in *stars* in the headline to highlight them. Free.
| postId* | string | The post id. |
| slide* | integer | Slide number, starting at 1. |
| smallLabel | string | |
| headline | string | |
| text | string | |
| role | cover | content | list | quote | stat | cta | |
| pictureIdea | string |
arrange_slidesPOST /api/v1/arrange_slideschanges thingsaction: add (a new slide after slide N; N=0 adds at the start), delete slide N, move slide N to position `to`, or copy slide N. Free. Posts have 1 to 20 slides.
| postId* | string | The post id. |
| action* | add | delete | move | copy | |
| slide* | integer | |
| to | integer | |
| headline | string |
edit_text_partPOST /api/v1/edit_text_partchanges thingsFor thread, script, and article posts: set part N's text or label, add a part after N (N=0 for the start), or delete part N. Free.
| postId* | string | The post id. |
| action | set | add | delete | |
| part* | integer | |
| text | string | |
| label | string |
rewrite_slidePOST /api/v1/rewrite_slidechanges thingsRewrite one slide's words with AI and save it (1 credit). style: punchier, shorter, simpler, or example; or give your own instruction.
| postId* | string | The post id. |
| slide* | integer | Slide number, starting at 1. |
| style | punchier | shorter | simpler | example | |
| instruction | string |
rewrite_text_partPOST /api/v1/rewrite_text_partchanges thingsRewrite one part of a thread, script, or article (or the caption of a text post, note, or video when part is 0) and save it (1 credit). Optional character limit.
| postId* | string | The post id. |
| part* | integer | |
| instruction* | string | |
| limit | integer |
rewrite_captionPOST /api/v1/rewrite_captionchanges thingsWrite a new caption and hashtags for a post and save them (1 credit).
| postId* | string | The post id. |
| instruction | string |
use_hookPOST /api/v1/use_hookchanges thingsSwap in one of the post's saved other hooks (otherHooks in get_post) as the opening. The old opening goes back on the list. Free.
| postId* | string | The post id. |
| hook* | integer | Which other hook, starting at 1. |
copy_postPOST /api/v1/copy_postchanges thingsMake a copy of a post as a new draft. Free.
| postId* | string | The post id. |
delete_postPOST /api/v1/delete_postchanges thingsdeletesMove a post to the Trash. It can be restored for 30 days. Scheduled posts must be unscheduled first.
| postId* | string | The post id. |
restore_postPOST /api/v1/restore_postchanges thingsBring a post back from the Trash.
| postId* | string | The post id. |
restore_versionPOST /api/v1/restore_versionchanges thingsMake a post look like one of its earlier versions again (from list_versions).
| postId* | string | The post id. |
| versionId* | string | The version id. |
Pictures and video
make_picturePOST /api/v1/make_picturechanges thingsMake a new AI picture for one slide and put it on the slide (10 credits, refunded if it fails). For AI drawn styles this redraws the whole slide. Optional: describe the picture yourself. Takes 30 to 60 seconds; check with get_post.
| postId* | string | The post id. |
| slide* | integer | Slide number, starting at 1. |
| describe | string | |
| imageTier | premium | economy | premium (default, GPT Image 2.5 Sunburst) or economy (Nano Banana 2.1). Both use the existing picture credit charge. |
fill_missing_picturesPOST /api/v1/fill_missing_pictureschanges thingsMake AI pictures for every slide that should have one but does not (10 credits each). Tell the creator the total first.
| postId* | string | The post id. |
| plan | all | cover |
edit_picturePOST /api/v1/edit_picturechanges thingsChange the picture on a slide by saying what to change, like "make it brighter" or "fix the spelling of goals" (10 credits). Live site only.
| postId* | string | The post id. |
| slide* | integer | Slide number, starting at 1. |
| change* | string |
remove_backgroundPOST /api/v1/remove_backgroundchanges thingsCut out the main subject of a slide's picture on a see-through background (10 credits). Live site only.
| postId* | string | The post id. |
| slide* | integer | Slide number, starting at 1. |
find_stock_photosPOST /api/v1/find_stock_photosread onlySearch free Pexels photos. Then use_stock_photo puts one on a slide. Free.
| search* | string | |
| orientation | portrait | landscape | square |
use_stock_photoPOST /api/v1/use_stock_photochanges thingsSave a Pexels photo (the `full` link from find_stock_photos) and put it on a slide. Free.
| postId* | string | The post id. |
| slide* | integer | Slide number, starting at 1. |
| url* | string | |
| credit | string |
upload_picturePOST /api/v1/upload_picturechanges thingsCopy a picture from a public link into PRISM. Optional: put it on slide N of a post, or make it a brand's logo. PNG, JPG, or WEBP up to 15 MB. Free.
| url* | string | |
| postId | string | |
| slide | integer | |
| asLogoFor | string | Brand id to use it as the logo. |
upload_videoPOST /api/v1/upload_videochanges thingsCopy a video (MP4, MOV, WEBM up to 100 MB here; bigger ones upload in PRISM) from a public link, for a video post. Then make_post with format video and this video. Free.
| url* | string | |
| width | integer | |
| height | integer | |
| durationSec | number |
get_slide_imagesPOST /api/v1/get_slide_imageschanges thingsDraw a slide post's slides as finished pictures (PNG or JPG) and return their links, in order. Free. All AI pictures must be finished first.
| postId* | string | The post id. |
| type | png | jpeg |
Media library
list_libraryPOST /api/v1/list_libraryread onlyThe creator's media library, newest first: uploads, AI pictures, stock photos, logos, stickers, backgrounds, and videos. Filter by type, brand, or name. Pass `next` from the last answer to get more. Free.
| type | all | uploads | ai | stock | logos | stickers | backgrounds | videos | pictures | all, uploads, ai (AI pictures), stock, logos, stickers, backgrounds, videos, or pictures (uploads + AI + stock + backgrounds). |
| brandId | string | Only this brand's items (plus items with no brand). Leave out for every brand. |
| search | string | Find items by name. |
| limit | integer | |
| next | string | The `next` value from the last page. |
rename_library_itemPOST /api/v1/rename_library_itemchanges thingsGive a picture, sticker, logo, background, or video in the library a new name. Free.
| itemId* | string | The library item id. |
| name* | string |
move_library_itemPOST /api/v1/move_library_itemchanges thingsPut a library item under another brand, or under no brand (brandId null) so it shows for every brand. Free.
| itemId* | string | The library item id. |
| brandId* | string | null | The brand id, or null for no brand. |
delete_library_itemsPOST /api/v1/delete_library_itemschanges thingsdeletesTake one or more items out of the library. The files are kept, so posts that already use them still work. Ask the creator first. Free.
| itemIds* | array | Library item ids (up to 200). |
use_library_picturePOST /api/v1/use_library_picturechanges thingsPut a picture from the library (an id from list_library) on slide N of a post. Not for videos. Free.
| postId* | string | The post id. |
| slide* | integer | Slide number, starting at 1. |
| itemId* | string | The library item id. |
Styles and looks
list_stylesPOST /api/v1/list_stylesread onlySlide styles. family: popular (a short starter set), editable (words can be edited), photo (photo + words), ai (AI draws the whole slide, words included). Optional search. Each has a sample picture link.
| family | popular | editable | photo | ai | all | |
| search | string |
set_go_to_stylePOST /api/v1/set_go_to_stylechanges thingsSet the style and size new posts for a brand start with.
| brandId | string | Brand id. Leave out to use the active brand. |
| styleId* | string | |
| aspect | 4:5 | 1:1 | 9:16 | 3:4 | 16:9 |
list_looksPOST /api/v1/list_looksread onlyA brand's saved looks (style + colors + fonts + size + logo spot + text styles + writing settings). Use one in make_post with lookId.
| brandId | string | Brand id. Leave out to use the active brand. |
save_look_from_postPOST /api/v1/save_look_from_postchanges thingsSave a post's style, size, colors, fonts, logo spot, and text styles as a named look, to reuse on new posts.
| postId* | string | The post id. |
| name* | string | |
| slide | integer | Which slide's logo and text styles to keep. |
set_go_to_lookPOST /api/v1/set_go_to_lookchanges thingsMake a saved look the one new posts start with (on: true), or stop that (on: false).
| lookId* | string | The look id. |
| on | boolean |
delete_lookPOST /api/v1/delete_lookchanges thingsdeletesDelete a saved look. Posts made with it stay as they are.
| lookId* | string | The look id. |
Posting and calendar
list_connected_accountsPOST /api/v1/list_connected_accountsread onlyThe social accounts connected to a brand (checks Bundle for new ones), with Pinterest boards and Discord / Slack channels. Account ids are used by post_now and schedule_post.
| brandId | string | Brand id. Leave out to use the active brand. |
get_connect_linkPOST /api/v1/get_connect_linkchanges thingsA link the creator opens to connect Instagram, TikTok, YouTube, LinkedIn, X, and more to a brand.
| brandId | string | Brand id. Leave out to use the active brand. |
post_nowPOST /api/v1/post_nowchanges thingsPost to social accounts right away. Only do this when the creator clearly said to post. Slide posts are drawn on the server first. options: per-network settings (Pinterest board, subreddit, YouTube title and privacy, TikTok privacy, first comment, and so on).
| postId* | string | The post id. |
| accountIds* | array | |
| caption | string | |
| options | object |
schedule_postPOST /api/v1/schedule_postchanges thingsSchedule a post for a time (ISO 8601 with offset, like 2026-10-12T09:00:00-04:00). Only do this when the creator agreed. Same options as post_now.
| postId* | string | The post id. |
| accountIds* | array | |
| at* | string | |
| caption | string | |
| options | object |
unschedule_postPOST /api/v1/unschedule_postchanges thingsTake a scheduled post off the schedule. It goes back to being a draft.
| postId* | string | The post id. |
move_scheduled_postPOST /api/v1/move_scheduled_postchanges thingsChange when a scheduled post goes out (ISO 8601 with offset).
| postId* | string | The post id. |
| at* | string |
get_calendarPOST /api/v1/get_calendarread onlyPosts scheduled or posted between two dates (ISO 8601), soonest first. One brand by default; set allBrands to true to see every brand.
| from* | string | |
| to* | string | |
| brandId | string | Brand id. Leave out to use the active brand. |
| allBrands | boolean | true = every brand's posts. |
Autolists
list_autolistsPOST /api/v1/list_autolistsread onlyAutolists: posts that go out again and again on a weekly schedule.
get_autolistPOST /api/v1/get_autolistread onlyOne autolist with its posts in order and what is coming up.
| autolistId* | string | The autolist id. |
make_autolistPOST /api/v1/make_autolistchanges thingsMake an autolist: name, weekly slots (day 0 = Sunday to 6 = Saturday, time HH:MM), time zone, account ids, posting options, and whether to start over at the end.
| brandId | string | Brand id. Leave out to use the active brand. |
| name* | string | |
| slots | array | |
| timezone | string | |
| accountIds | array | |
| options | object | |
| repeat | boolean | |
| active | boolean |
update_autolistPOST /api/v1/update_autolistchanges thingsChange an autolist's name, slots, time zone, accounts, options, repeat, or pause / resume it (active). Only what you send changes.
| autolistId* | string | The autolist id. |
| changes* | object |
delete_autolistPOST /api/v1/delete_autolistchanges thingsdeletesDelete an autolist. Its upcoming scheduled copies come off the schedule.
| autolistId* | string | The autolist id. |
add_to_autolistPOST /api/v1/add_to_autolistchanges thingsAdd posts to an autolist (at the end, or at the top). Slide posts are drawn on the server so the pictures are ready.
| autolistId* | string | The autolist id. |
| postIds* | array | |
| atTop | boolean |
remove_from_autolistPOST /api/v1/remove_from_autolistchanges thingsRemove one item (item id from get_autolist).
| autolistId* | string | The autolist id. |
| itemId* | string | The item id. |
reorder_autolistPOST /api/v1/reorder_autolistchanges thingsPut an autolist's items in a new order (all item ids, in the order you want).
| autolistId* | string | The autolist id. |
| itemIds* | array |
fill_autolist_nowPOST /api/v1/fill_autolist_nowchanges thingsSchedule the next 2 weeks of an autolist right away (it also does this by itself every day).
| autolistId* | string | The autolist id. |
Ideas and research
get_ideasPOST /api/v1/get_ideaschanges things8 fresh post ideas for a brand, saved to its idea list (1 credit). Optional topic.
| brandId | string | Brand id. Leave out to use the active brand. |
| topic | string |
find_web_ideasPOST /api/v1/find_web_ideaschanges thingsSearch the web for post ideas matching the requested publication-date window and source type. Uses the brand's content pillars when no topic is given. Costs 2 credits. Dates and source types are reported from source/model metadata and are not independently verified.
| brandId | string | Brand id. Leave out to use the active brand. |
| topic | string | What to look for (optional). |
| recency | any | 24h | 7d | 14d | 30d | 90d | year | Publication date window; unknown or out-of-range dates are excluded. |
| sourceType | all | news | blogs | research | videos | forums | Source page type. |
list_ideasPOST /api/v1/list_ideasread onlyA brand's saved post ideas.
| brandId | string | Brand id. Leave out to use the active brand. |
save_ideaPOST /api/v1/save_ideachanges thingsSave your own post idea to a brand's idea list. Free.
| brandId | string | Brand id. Leave out to use the active brand. |
| title* | string | |
| angle | string |
add_my_ideaPOST /api/v1/add_my_ideachanges thingsSave an idea the creator came up with, with optional notes, to make into a post later.
| brandId | string | Brand id. Leave out to use the active brand. |
| title* | string | |
| notes | string |
update_ideaPOST /api/v1/update_ideachanges thingsMark an idea new, used, or archived.
| ideaId* | string | The idea id. |
| status* | new | used | archived |
edit_ideaPOST /api/v1/edit_ideachanges thingsChange an idea's words or notes, mark it used, or put it away (archived).
| ideaId* | string | The idea id. |
| title | string | |
| notes | string | |
| status | new | used | archived |
research_topicPOST /api/v1/research_topicchanges thingsLook a topic up on the web and bring back 8 to 15 facts with their sources (1 credit). To write a post from research directly, use make_post with intent research.
| topic* | string |
Watchlists
list_watchlistsPOST /api/v1/list_watchlistsread onlyThe feeds the brand follows (blogs, news, YouTube channels, subreddits) and their newest items. Checks feeds that are a few hours old first.
| brandId | string | Brand id. Leave out to use the active brand. |
| checkNow | boolean |
follow_feedPOST /api/v1/follow_feedchanges thingsFollow a blog, news site, YouTube channel, or subreddit. PRISM finds its feed. Free.
| brandId | string | Brand id. Leave out to use the active brand. |
| url* | string | |
| name | string |
unfollow_feedPOST /api/v1/unfollow_feedchanges thingsdeletesStop following one of the brand's feeds.
| watchlistId* | string | The watchlist id. |
save_watch_item_as_ideaPOST /api/v1/save_watch_item_as_ideachanges thingsTurn one of the newest feed items into a saved idea (with its link).
| itemId* | string | The watch item id. |
Voice, looks, and sharing
add_voice_examplesPOST /api/v1/add_voice_exampleschanges thingsAdd posts that sound just like the creator (paste their best captions). Then call learn_my_voice. Up to 12 are kept.
| brandId | string | Brand id. Leave out to use the active brand. |
| examples* | array |
learn_my_voicePOST /api/v1/learn_my_voicechanges thingsStudy the brand's voice examples and save a voice summary PRISM follows every time it writes. Needs 2+ examples. Costs 1 credit.
| brandId | string | Brand id. Leave out to use the active brand. |
copy_look_from_picturePOST /api/v1/copy_look_from_picturechanges thingsRead a slide picture the creator likes (upload it first with upload_picture) and save the closest PRISM look: style, colors, fonts, and size. Costs 1 credit.
| brandId | string | Brand id. Leave out to use the active brand. |
| imageUrl* | string | A picture link from upload_picture. |
get_affiliate_linkPOST /api/v1/get_affiliate_linkchanges thingsThe creator's share link and earnings. People who sign up with it and pay give the creator 50% of what they pay for 12 months. Turns the link on if it is off.
Saved sources
save_sourcePOST /api/v1/save_sourcechanges thingsSave a link, YouTube link, or text to the creator's Sources. PRISM reads it once and keeps the words, so make_post can use it later with sourceId (no re-reading). Free.
| brandId | string | Brand id. Leave out to use the active brand. |
| input* | string | A link, a YouTube link, or text. |
| title | string | A name for it (optional). |
| tags | array |
list_sourcesPOST /api/v1/list_sourcesread onlyThe creator's saved sources, newest first, with tags. Use a source's id as sourceId in make_post.
| search | string | |
| tag | string |
get_sourcePOST /api/v1/get_sourceread onlyThe full words PRISM saved from one source.
| sourceId* | string | The source id. |
delete_sourcesPOST /api/v1/delete_sourceschanges thingsdeletesDelete saved sources. Posts made from them stay.
| sourceIds* | array |
ideas_from_sourcesPOST /api/v1/ideas_from_sourceschanges thingsRead up to 8 saved sources and suggest 8 post ideas that mix them (saved to Ideas). Costs 2 credits.
| brandId | string | Brand id. Leave out to use the active brand. |
| sourceIds* | array |
Language and help
list_languagesPOST /api/v1/list_languagesread onlyThe languages PRISM can write posts in, with spelling variants. Set a brand's language with update_brand: { language: 'es', languageVariant: 'latam' }.
list_toursPOST /api/v1/list_toursread onlyList PRISM's app tour, short tutorials and original-app guide. Pass a tourId to read its full steps. This only reads the guide; it does not launch a tour, change progress or use credits.
| tourId | string | A tour id from this tool. Leave out to list the available tours. |
contact_supportPOST /api/v1/contact_supportchanges thingsSend a message to the PRISM team: a question, a bug report, an idea, or a font request. A real person answers by email and in PRISM's Help page. Only use when the person asks you to contact support.
| kind | question | bug | feature | font | question, bug, feature, or font |
| message* | string | What the person wants to say. For bugs: what they did and what happened. |
| subject | string | A short subject (optional). |
get_support_messagesPOST /api/v1/get_support_messagesread onlyThe person's messages with PRISM support and the team's answers, newest first.
reply_to_supportPOST /api/v1/reply_to_supportchanges thingsWrite back on one of the person's support messages (from get_support_messages).
| ticketId* | string | The support message id. |
| message* | string |
More
ideas_from_linksPOST /api/v1/ideas_from_linkschanges thingsRead one to five public article or YouTube links the creator supplied, then save post ideas grounded in those sources. Unreadable links prompt for pasted text. Costs 2 credits for the writer; link reading itself uses no AI search.
| brandId | string | Brand id. Leave out to use the active brand. |
| urls* | array | |
| topic | string |