picsart_change_bg
ChatGPTReplaces the background of an image with a new scene described by a prompt, keeping the foreground subject intact. Auto-picks the newest enabled Picsart change-bg model unless overridden via the model param — no need to call picsart_list_models first. Use this when the user wants to "change the background to X", "put this on a beach", "swap the background for a marble counter", or any compositing where the subject is kept and the backdrop changes. Do NOT use this to strip the background to transparency (use picsart_remove_bg), upscale or sharpen (use picsart_enhance), convert raster to SVG (use picsart_vectorize), or generate a brand-new image from scratch (use picsart_generate). Required inputs: image — a publicly-accessible URL, not a local file path — and prompt describing the new background. Optional: model to pin a specific change-bg model. Example: { image: "https://example.com/product.jpg", prompt: "polished marble countertop with soft window light" }. Returns { assets, id, model, created_at, prompt, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags (e.g. exploreImageId for Recraft Explore models). Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_change_bg
ChatGPTReplaces the background of an image with a new scene described by a prompt, keeping the foreground subject intact. Auto-picks the newest enabled Picsart change-bg model unless overridden via the model param — no need to call picsart_list_models first. Use this when the user wants to "change the background to X", "put this on a beach", "swap the background for a marble counter", or any compositing where the subject is kept and the backdrop changes. Do NOT use this to strip the background to transparency (use picsart_remove_bg), upscale or sharpen (use picsart_enhance), convert raster to SVG (use picsart_vectorize), or generate a brand-new image from scratch (use picsart_generate). Required inputs: image — a publicly-accessible URL, not a local file path — and prompt describing the new background. Optional: model to pin a specific change-bg model. Example: { image: "https://example.com/product.jpg", prompt: "polished marble countertop with soft window light" }. Returns { assets, id, model, created_at, prompt, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags (e.g. exploreImageId for Recraft Explore models). Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_change_bg
ChatGPTReplaces the background of an image with a new scene described by a prompt, keeping the foreground subject intact. Auto-picks the newest enabled Picsart change-bg model unless overridden via the model param — no need to call picsart_list_models first. Use this when the user wants to "change the background to X", "put this on a beach", "swap the background for a marble counter", or any compositing where the subject is kept and the backdrop changes. Do NOT use this to strip the background to transparency (use picsart_remove_bg), upscale or sharpen (use picsart_enhance), convert raster to SVG (use picsart_vectorize), or generate a brand-new image from scratch (use picsart_generate). Required inputs: image — a publicly-accessible URL, not a local file path — and prompt describing the new background. Optional: model to pin a specific change-bg model. Example: { image: "https://example.com/product.jpg", prompt: "polished marble countertop with soft window light" }. Returns { assets, id, model, created_at, prompt, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags (e.g. exploreImageId for Recraft Explore models). Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_change_bg
ChatGPTReplaces the background of an image with a new scene described by a prompt, keeping the foreground subject intact. Auto-picks the newest enabled Picsart change-bg model unless overridden via the model param — no need to call picsart_list_models first. Use this when the user wants to "change the background to X", "put this on a beach", "swap the background for a marble counter", or any compositing where the subject is kept and the backdrop changes. Do NOT use this to strip the background to transparency (use picsart_remove_bg), upscale or sharpen (use picsart_enhance), convert raster to SVG (use picsart_vectorize), or generate a brand-new image from scratch (use picsart_generate). Required inputs: image — a publicly-accessible URL, not a local file path — and prompt describing the new background. Optional: model to pin a specific change-bg model. Example: { image: "https://example.com/product.jpg", prompt: "polished marble countertop with soft window light" }. Returns { assets, id, model, created_at, prompt, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags (e.g. exploreImageId for Recraft Explore models). Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_credits
ChatGPTReturns the current Picsart credit balance for the authenticated user — balance (active credits available now) plus the breakdown into resettable (recurring monthly/period quota) and accumulative (top-ups and add-ons), total (active credits across both pools), and overdraftUsage (credits spent past the balance, if any). When the resettable pool has a scheduled reset, nextResetDate is the ISO timestamp of the next refill. Use this before expensive operations to warn the user when the balance is low, or after a 402 from picsart_generate to confirm the issue is credits and not something else. Do NOT use it to estimate the cost of a specific generation (use picsart_pricing); this tool only reports the balance, not per-call cost. Takes no input. Returns { balance, total, resettable, accumulative, overdraftUsage, nextResetDate? } where each number is non-negative. Requires Authorization: Bearer <picsart_token> (per-user account data).
picsart_credits
ChatGPTReturns the current Picsart credit balance for the authenticated user — balance (active credits available now) plus the breakdown into resettable (recurring monthly/period quota) and accumulative (top-ups and add-ons), total (active credits across both pools), and overdraftUsage (credits spent past the balance, if any). When the resettable pool has a scheduled reset, nextResetDate is the ISO timestamp of the next refill. Use this before expensive operations to warn the user when the balance is low, or after a 402 from picsart_generate to confirm the issue is credits and not something else. Do NOT use it to estimate the cost of a specific generation (use picsart_preflight); this tool only reports the balance, not per-call cost. Takes no input. Returns { balance, total, resettable, accumulative, overdraftUsage, nextResetDate? } where each number is non-negative. Requires Authorization: Bearer <picsart_token> (per-user account data).
picsart_credits
ChatGPTReturns the current Picsart credit balance for the authenticated user — balance (active credits available now) plus the breakdown into resettable (recurring monthly/period quota) and accumulative (top-ups and add-ons), total (active credits across both pools), and overdraftUsage (credits spent past the balance, if any). When the resettable pool has a scheduled reset, nextResetDate is the ISO timestamp of the next refill. Use this before expensive operations to warn the user when the balance is low, or after a 402 from picsart_generate to confirm the issue is credits and not something else. Do NOT use it to estimate the cost of a specific generation (use picsart_preflight); this tool only reports the balance, not per-call cost. Takes no input. Returns { balance, total, resettable, accumulative, overdraftUsage, nextResetDate? } where each number is non-negative. Requires Authorization: Bearer <picsart_token> (per-user account data).
picsart_credits
ChatGPTReturns the current Picsart credit balance for the authenticated user — balance (active credits available now) plus the breakdown into resettable (recurring monthly/period quota) and accumulative (top-ups and add-ons), total (active credits across both pools), and overdraftUsage (credits spent past the balance, if any). When the resettable pool has a scheduled reset, nextResetDate is the ISO timestamp of the next refill. Use this before expensive operations to warn the user when the balance is low, or after a 402 from picsart_generate to confirm the issue is credits and not something else. Do NOT use it to estimate the cost of a specific generation (use picsart_preflight); this tool only reports the balance, not per-call cost. Takes no input. Returns { balance, total, resettable, accumulative, overdraftUsage, nextResetDate? } where each number is non-negative. Requires Authorization: Bearer <picsart_token> (per-user account data).
picsart_drive
ChatGPTSingle entry point for the authenticated user's Picsart Drive. Pass action: - list: browse a folder. folderUid omitted = Drive root; set it to descend. Folders are returned first; files are paginated (page, pageSize<=128, optional sort, optional type filter). Set flat: true to list every file across all folders (folders are omitted in flat mode). - create_folder: requires name; folderUid = parent (omit for root). Optional description. - upload: save a file. Provide EITHER file (chat attachment) OR url+name (an HTTPS URL or an inline data: URI — data URIs are pushed to the Picsart CDN first). folderUid = destination, type = resource kind. result.url is the CDN-hosted URL of the saved file, ready to pass to picsart_generate reference params like imageUrls. - move: requires itemUids; targetFolderUid = destination (omit = root). - delete: requires itemUids; soft-deletes to trash unless permanent is true. - update: requires itemUid + attributes; sets custom key/value attributes on a file (e.g. { coverUrl }). Every action returns the current folder listing (folders, files, page math) so the widget can render. Requires Authorization: Bearer <picsart_token> (per-user Drive content).
picsart_drive
ChatGPTSingle entry point for the authenticated user's Picsart Drive. Pass action: - list: browse a folder. folderUid omitted = Drive root; set it to descend. Folders are returned first; files are paginated (page, pageSize<=128, optional sort, optional type filter). Set flat: true to list every file across all folders (folders are omitted in flat mode). - create_folder: requires name; folderUid = parent (omit for root). Optional description. - upload: save a file. Provide EITHER file (chat attachment) OR url+name (an HTTPS URL or an inline data: URI — data URIs are pushed to the Picsart CDN first). folderUid = destination, type = resource kind. result.url is the CDN-hosted URL of the saved file, ready to pass to picsart_generate reference params like imageUrls. - move: requires itemUids; targetFolderUid = destination (omit = root). - delete: requires itemUids; soft-deletes to trash unless permanent is true. - update: requires itemUid + attributes; sets custom key/value attributes on a file (e.g. { coverUrl }). Every action returns the current folder listing (folders, files, page math) so the widget can render. Requires Authorization: Bearer <picsart_token> (per-user Drive content).
picsart_drive
ChatGPTSingle entry point for the authenticated user's Picsart Drive. Pass action: - list: browse a folder. folderUid omitted = Drive root; set it to descend. Folders are returned first; files are paginated (page, pageSize<=128, optional sort, optional type filter). Set flat: true to list every file across all folders (folders are omitted in flat mode). - create_folder: requires name; folderUid = parent (omit for root). Optional description. - upload: save a file. Provide EITHER file (chat attachment) OR url+name (an HTTPS URL or an inline data: URI — data URIs are pushed to the Picsart CDN first). folderUid = destination, type = resource kind. result.url is the CDN-hosted URL of the saved file, ready to pass to picsart_generate reference params like imageUrls. - move: requires itemUids; targetFolderUid = destination (omit = root). - delete: requires itemUids; soft-deletes to trash unless permanent is true. - update: requires itemUid + attributes; sets custom key/value attributes on a file (e.g. { coverUrl }). Every action returns the current folder listing (folders, files, page math) so the widget can render. Requires Authorization: Bearer <picsart_token> (per-user Drive content).
picsart_drive
ChatGPTSingle entry point for the authenticated user's Picsart Drive. Pass action: - list: browse a folder. folderUid omitted = Drive root; set it to descend. Folders are returned first; files are paginated (page, pageSize<=128, optional sort, optional type filter). Set flat: true to list every file across all folders (folders are omitted in flat mode). - create_folder: requires name; folderUid = parent (omit for root). Optional description. - upload: save a file. Provide EITHER file (chat attachment) OR url+name (an HTTPS URL or an inline data: URI — data URIs are pushed to the Picsart CDN first). folderUid = destination, type = resource kind. result.url is the CDN-hosted URL of the saved file, ready to pass to picsart_generate reference params like imageUrls. - move: requires itemUids; targetFolderUid = destination (omit = root). - delete: requires itemUids; soft-deletes to trash unless permanent is true. - update: requires itemUid + attributes; sets custom key/value attributes on a file (e.g. { coverUrl }). Every action returns the current folder listing (folders, files, page math) so the widget can render. Requires Authorization: Bearer <picsart_token> (per-user Drive content).
picsart_drive_create_folder
ChatGPTCreates a new folder in the authenticated user's Picsart Drive and returns its uid so the model can immediately save files into it with picsart_upload({ ..., parentFolderUid }). Workflow when the user asks to save into a named folder (e.g. "save this to my Pets folder"): (1) call picsart_drive_folders first to list existing folders; (2) if a folder with the same name already exists, reuse its uid directly — do NOT call this tool; (3) only call this tool when no folder with that name exists. Required: name — the folder display name (e.g. "Pets", "References"). Optional: parentFolderUid to create as a sub-folder under another folder (omit for a root-level folder). Optional: description — a short note shown in Drive. Returns { uid, name, parentFolderUid?, message }. Pass the returned uid to picsart_upload as parentFolderUid to place files into this folder. Writes to the user's Picsart Drive. Requires Authorization: Bearer <picsart_token>. Possible API failures: failure_file_invalid_parent, failure_file_missing_parent, failure_restricted_tenant, failure_folders_limit_reached.
picsart_drive_folders
ChatGPTLists every folder in the authenticated user's Picsart Drive. Use this to discover folder names before calling picsart_drive_list with a folder filter, or to answer "what folders do I have in Drive?". Do NOT use it to list files (use picsart_drive_list), generate content, or save URLs (use picsart_upload). Takes no input. Returns { folders: [{ uid, name }] } — every folder the user has, regardless of depth. Requires Authorization: Bearer <picsart_token> (per-user Drive content).
picsart_drive_list
ChatGPTLists files stored in the authenticated user's Picsart Drive, flattened across all folders, sorted by creation date (newest first). Use this to discover assets the user already generated or uploaded — answers "what images do I have in Drive?", "show my recent videos", or to find a previously-generated asset for re-use. When the user names a media kind ("just my videos", "my audio files", "the images"), ALWAYS pass type so the filter happens server-side; do not fetch everything and filter in chat. Do NOT use it to list folder names (use picsart_drive_folders), generate content, or upload new files (use picsart_upload). Folder filtering is NOT supported on this endpoint — if the user wants files from a specific folder, list picsart_drive_folders first and tell the user which folders exist; per-folder listing is not yet available. Inputs (all optional): type (one of "image", "video", "audio"; filters server-side via contentResourceTypes), detailed (default false — when true, each item also includes the originating model, prompt, service, subType, duration, resolution, aspectRatio, quality, referenceImageUrls, referenceVideoUrl, referenceAudioUrl). Example: { type: "image", detailed: true }. Returns { items: [...], total } capped at 128 most-recent items. Each item carries { uid, url, name, type, previewUrl?, timestamp } in non-detailed mode; verbose generation metadata is added in detailed mode. Requires Authorization: Bearer <picsart_token> (per-user Drive content).
picsart_enhance
ChatGPTUpscales and enhances an image — sharpens edges, denoises, and raises resolution by an optional scale factor. Auto-picks the newest enabled Picsart upscale / enhance model unless overridden via the model param. Use this when the user asks to "upscale", "enhance", "make it higher resolution", "sharpen", "clean up this photo", or "make this 4k". Do NOT use this to remove the background (use picsart_remove_bg), replace the background (use picsart_change_bg), convert raster to SVG (use picsart_vectorize), or generate a new image (use picsart_generate). Required input: image — a publicly-accessible URL, not a local file path. Optional: model to pin a specific enhance model, scaleFactor (e.g. 2 or 4) for upscale ratio. Example: { image: "https://example.com/photo.jpg", scaleFactor: 4 }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_enhance
ChatGPTUpscales and enhances an image — sharpens edges, denoises, and raises resolution by an optional scale factor. Auto-picks the newest enabled Picsart upscale / enhance model unless overridden via the model param. Use this when the user asks to "upscale", "enhance", "make it higher resolution", "sharpen", "clean up this photo", or "make this 4k". Do NOT use this to remove the background (use picsart_remove_bg), replace the background (use picsart_change_bg), convert raster to SVG (use picsart_vectorize), or generate a new image (use picsart_generate). Required input: image — a publicly-accessible URL, not a local file path. Optional: model to pin a specific enhance model, scaleFactor (e.g. 2 or 4) for upscale ratio. Example: { image: "https://example.com/photo.jpg", scaleFactor: 4 }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_enhance
ChatGPTUpscales and enhances an image — sharpens edges, denoises, and raises resolution by an optional scale factor. Auto-picks the newest enabled Picsart upscale / enhance model unless overridden via the model param. Use this when the user asks to "upscale", "enhance", "make it higher resolution", "sharpen", "clean up this photo", or "make this 4k". Do NOT use this to remove the background (use picsart_remove_bg), replace the background (use picsart_change_bg), convert raster to SVG (use picsart_vectorize), or generate a new image (use picsart_generate). Required input: image — a publicly-accessible URL, not a local file path. Optional: model to pin a specific enhance model, scaleFactor (e.g. 2 or 4) for upscale ratio. Example: { image: "https://example.com/photo.jpg", scaleFactor: 4 }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_enhance
ChatGPTUpscales and enhances an image — sharpens edges, denoises, and raises resolution by an optional scale factor. Auto-picks the newest enabled Picsart upscale / enhance model unless overridden via the model param. Use this when the user asks to "upscale", "enhance", "make it higher resolution", "sharpen", "clean up this photo", or "make this 4k". Do NOT use this to remove the background (use picsart_remove_bg), replace the background (use picsart_change_bg), convert raster to SVG (use picsart_vectorize), or generate a new image (use picsart_generate). Required input: image — a publicly-accessible URL, not a local file path. Optional: model to pin a specific enhance model, scaleFactor (e.g. 2 or 4) for upscale ratio. Example: { image: "https://example.com/photo.jpg", scaleFactor: 4 }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_generate
ChatGPTRuns any Picsart AI model end-to-end to produce an image, video, or audio result. Spends credits. Recommended flow: picsart_list_models or picsart_model_info to pick the model → picsart_model_params to learn its inputs → picsart_validate_params to pre-check the payload → picsart_pricing to quote cost → picsart_generate to actually run. Do NOT use this for editing operations that have dedicated tools — background removal (picsart_remove_bg), background replacement (picsart_change_bg), upscale / enhancement (picsart_enhance), or raster-to-SVG conversion (picsart_vectorize). Also do NOT use it to validate params, quote cost, or browse the catalog — those are separate tools above. Required inputs: model (id) and prompt. Model-dependent optional inputs: duration (video seconds), aspectRatio (e.g. "16:9", "9:16", "1:1"), resolution (e.g. "1080p", "4k"), count (1–8 outputs), quality, style, negativePrompt, imageUrls (for image-to-X models), videoUrl (for video-to-X), enhancePrompt, generateAudio, and extra — a free-form record for model-specific params (discover them via picsart_model_params). Example (image): { model: "flux-2-pro", prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 }. Example (video): { model: "kling-v3-pro", prompt: "a cat skiing down a mountain", duration: 5, aspectRatio: "16:9" }. Returns { assets, id, model, created_at, prompt, summary, why_relevant, url, results: [{ url, metadata? }], drive? } in structured content, plus one resource_link block per result URL — image models emit image links, video models emit video links (mime video/mp4). id is the SDK's generation handle; metadata may include model-specific tags (e.g. exploreImageId for Recraft Explore models). ChatGPT renders images and videos with the Picsart media gallery UI; clients fetch the assets from URLs, never base64. Spends credits and writes to the user's Picsart Drive when the Drive option is enabled. Requires Authorization: Bearer <picsart_token>.
picsart_generate
ChatGPTRuns any Picsart AI model end-to-end to produce an image, video, or audio result. Spends credits. Recommended flow: picsart_list_models to pick the model → picsart_model_params to learn its inputs → picsart_preflight to validate the payload and quote cost → picsart_generate to actually run. Do NOT use this for editing operations that have dedicated tools — background removal (picsart_remove_bg), background replacement (picsart_change_bg), upscale / enhancement (picsart_enhance), or raster-to-SVG conversion (picsart_vectorize). Also do NOT use it to validate params, quote cost, or browse the catalog — those are separate tools above. Required inputs: model (id) and prompt. Model-dependent optional inputs: duration (video seconds), aspectRatio (e.g. "16:9", "9:16", "1:1"), resolution (e.g. "1080p", "4k"), count (1–8 outputs), quality, style, negativePrompt, imageUrls (for image-to-X models), videoUrl (for video-to-X), enhancePrompt, generateAudio, and extra — a free-form record for model-specific params (discover them via picsart_model_params). Example (image): { model: "flux-2-pro", prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 }. Example (video): { model: "kling-v3-pro", prompt: "a cat skiing down a mountain", duration: 5, aspectRatio: "16:9" }. Returns { assets, id, model, created_at, prompt, summary, why_relevant, url, results: [{ url, metadata? }], drive? } in structured content, plus one resource_link block per result URL — image models emit image links, video models emit video links (mime video/mp4). id is the SDK's generation handle; metadata may include model-specific tags (e.g. exploreImageId for Recraft Explore models). ChatGPT renders images and videos with the Picsart media gallery UI; clients fetch the assets from URLs, never base64. Spends credits and writes to the user's Picsart Drive when the Drive option is enabled. Requires Authorization: Bearer <picsart_token>.
picsart_generate
ChatGPTRuns any Picsart AI model end-to-end to produce an image, video, or audio result. Spends credits. Recommended flow: picsart_list_models to pick the model → picsart_model_params to learn its inputs → picsart_preflight to validate the payload and quote cost → picsart_generate to actually run. Do NOT use this for editing operations that have dedicated tools — background removal (picsart_remove_bg), background replacement (picsart_change_bg), upscale / enhancement (picsart_enhance), or raster-to-SVG conversion (picsart_vectorize). Also do NOT use it to validate params, quote cost, or browse the catalog — those are separate tools above. Required inputs: model (id) and prompt. Model-dependent optional inputs: duration (video seconds), aspectRatio (e.g. "16:9", "9:16", "1:1"), resolution (e.g. "1080p", "4k"), count (1–8 outputs), quality, style, negativePrompt, imageUrls (for image-to-X models), videoUrl (for video-to-X), enhancePrompt, generateAudio, and extra — a free-form record for model-specific params (discover them via picsart_model_params). Example (image): { model: "flux-2-pro", prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 }. Example (video): { model: "kling-v3-pro", prompt: "a cat skiing down a mountain", duration: 5, aspectRatio: "16:9" }. Returns { assets, id, model, created_at, prompt, summary, why_relevant, url, results: [{ url, metadata? }], drive? } in structured content, plus one resource_link block per result URL — image models emit image links, video models emit video links (mime video/mp4). id is the SDK's generation handle; metadata may include model-specific tags (e.g. exploreImageId for Recraft Explore models). ChatGPT renders images and videos with the Picsart media gallery UI; clients fetch the assets from URLs, never base64. Spends credits and writes to the user's Picsart Drive when the Drive option is enabled. Requires Authorization: Bearer <picsart_token>.
picsart_generate
ChatGPTRuns any Picsart AI model end-to-end to produce an image, video, or audio result. Spends credits. Recommended flow: picsart_list_models to pick the model → picsart_model_params to learn its inputs → picsart_preflight to validate the payload and quote cost → picsart_generate to actually run. Do NOT use this for editing operations that have dedicated tools — background removal (picsart_remove_bg), background replacement (picsart_change_bg), upscale / enhancement (picsart_enhance), or raster-to-SVG conversion (picsart_vectorize). Also do NOT use it to validate params, quote cost, or browse the catalog — those are separate tools above. Required inputs: model (id) and prompt. Model-dependent optional inputs: duration (video seconds), aspectRatio (e.g. "16:9", "9:16", "1:1"), resolution (e.g. "1080p", "4k"), count (1–8 outputs), quality, style, negativePrompt, imageUrls (for image-to-X models), videoUrl (for video-to-X), enhancePrompt, generateAudio, and extra — a free-form record for model-specific params (discover them via picsart_model_params). Example (image): { model: "flux-2-pro", prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 }. Example (video): { model: "kling-v3-pro", prompt: "a cat skiing down a mountain", duration: 5, aspectRatio: "16:9" }. Returns { assets, id, model, created_at, prompt, summary, why_relevant, url, results: [{ url, metadata? }], drive? } in structured content, plus one resource_link block per result URL — image models emit image links, video models emit video links (mime video/mp4). id is the SDK's generation handle; metadata may include model-specific tags (e.g. exploreImageId for Recraft Explore models). ChatGPT renders images and videos with the Picsart media gallery UI; clients fetch the assets from URLs, never base64. Spends credits and writes to the user's Picsart Drive when the Drive option is enabled. Requires Authorization: Bearer <picsart_token>.
picsart_list_models
ChatGPTLists Picsart AI models across ALL modes (image / video / audio). Each item carries id, name, mode, inputType (and provider, badges, description when verbose is true). Use this when the user has not committed to an output mode yet, or for cross-mode searches ("all flux models", "every model with image input"). For known output modes prefer the dedicated tools — picsart_list_image_models, picsart_list_video_models, picsart_list_audio_models — they route better from implicit prompts and need fewer filters. Do NOT use it to fetch a single model's parameter schema (use picsart_model_params), estimate per-call cost (use picsart_pricing), or look up details on one already-known model (use picsart_model_info). Inputs (all optional): mode (filter to image/video/audio), provider (case-insensitive substring like "flux", "kling", "google"), acceptsImage (true → only models that take an image input — i2i, i2v), acceptsVideo (true → only models that take a video input — v2v, v2a), acceptsAudio (true → only models that take an audio input — a2v, sts), inputType (exact-match escape hatch; one of t2v/i2v/v2v/a2v/t2i/i2i/t2a/v2a/tts/sts/sfx/music), limit (1–100, default 20), verbose (default false; when true each item adds provider/badges/description). inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Example: { mode: "video", acceptsImage: true, limit: 10 } returns image-to-video models. Returns { items, total, truncated } — truncated is true when more matched than were returned; refine filters or raise limit (max 100) to see more. Read-only; spends no credits and works without authentication.
picsart_list_models
ChatGPTLists Picsart AI models across ALL modes (image / video / audio) and renders the Picsart Studio model-picker widget so the USER can browse, compare, and pick a model visually. Each item carries id, name, mode, inputType (and provider, badges, description when verbose is true). Use this when the user wants to SEE the available models or pick one themselves — especially when they have not committed to an output mode yet, or for cross-mode searches ("all flux models", "every model with image input"). For known output modes prefer the dedicated tools — picsart_list_image_models, picsart_list_video_models, picsart_list_audio_models — they route better from implicit prompts and need fewer filters. Do NOT use it to fetch a single model's parameter schema (use picsart_model_params) or estimate per-call cost (use picsart_preflight). If you only need catalog knowledge for your own reasoning (no UI shown to the user), use picsart_model_catalog instead. Inputs (all optional): mode (filter to image/video/audio), provider (case-insensitive substring like "flux", "kling", "google"), acceptsImage (true → only models that take an image input — i2i, i2v), acceptsVideo (true → only models that take a video input — v2v, v2a), acceptsAudio (true → only models that take an audio input — a2v, sts), inputType (exact-match escape hatch; one of t2v/i2v/v2v/a2v/t2i/i2i/t2a/v2a/tts/sts/sfx/music), limit (1–100, default 20), verbose (default false; when true each item adds provider/badges/description). inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Example: { mode: "video", acceptsImage: true, limit: 10 } returns image-to-video models. Returns { items, total, truncated } — truncated is true when more matched than were returned; refine filters or raise limit (max 100) to see more. Read-only; spends no credits and works without authentication.
picsart_list_models
ChatGPTLists Picsart AI models across ALL modes (image / video / audio) and renders the Picsart Studio model-picker widget so the USER can browse, compare, and pick a model visually. Each item carries id, name, mode, inputType (and provider, badges, description when verbose is true). Use this when the user wants to SEE the available models or pick one themselves — especially when they have not committed to an output mode yet, or for cross-mode searches ("all flux models", "every model with image input"). For known output modes prefer the dedicated tools — picsart_list_image_models, picsart_list_video_models, picsart_list_audio_models — they route better from implicit prompts and need fewer filters. Do NOT use it to fetch a single model's parameter schema (use picsart_model_params) or estimate per-call cost (use picsart_preflight). If you only need catalog knowledge for your own reasoning (no UI shown to the user), use picsart_model_catalog instead. Inputs (all optional): mode (filter to image/video/audio), provider (case-insensitive substring like "flux", "kling", "google"), acceptsImage (true → only models that take an image input — i2i, i2v), acceptsVideo (true → only models that take a video input — v2v, v2a), acceptsAudio (true → only models that take an audio input — a2v, sts), inputType (exact-match escape hatch; one of t2v/i2v/v2v/a2v/t2i/i2i/t2a/v2a/tts/sts/sfx/music), limit (1–100, default 20), verbose (default false; when true each item adds provider/badges/description). inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Example: { mode: "video", acceptsImage: true, limit: 10 } returns image-to-video models. Returns { items, total, truncated } — truncated is true when more matched than were returned; refine filters or raise limit (max 100) to see more. Read-only; spends no credits and works without authentication.
picsart_list_models
ChatGPTLists Picsart AI models across ALL modes (image / video / audio) and renders the Picsart Studio model-picker widget so the USER can browse, compare, and pick a model visually. Each item carries id, name, mode, inputType (and provider, badges, description when verbose is true). Use this when the user wants to SEE the available models or pick one themselves — especially when they have not committed to an output mode yet, or for cross-mode searches ("all flux models", "every model with image input"). For known output modes prefer the dedicated tools — picsart_list_image_models, picsart_list_video_models, picsart_list_audio_models — they route better from implicit prompts and need fewer filters. Do NOT use it to fetch a single model's parameter schema (use picsart_model_params) or estimate per-call cost (use picsart_preflight). If you only need catalog knowledge for your own reasoning (no UI shown to the user), use picsart_model_catalog instead. Inputs (all optional): mode (filter to image/video/audio), provider (case-insensitive substring like "flux", "kling", "google"), acceptsImage (true → only models that take an image input — i2i, i2v), acceptsVideo (true → only models that take a video input — v2v, v2a), acceptsAudio (true → only models that take an audio input — a2v, sts), inputType (exact-match escape hatch; one of t2v/i2v/v2v/a2v/t2i/i2i/t2a/v2a/tts/sts/sfx/music), limit (1–100, default 20), verbose (default false; when true each item adds provider/badges/description). inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Example: { mode: "video", acceptsImage: true, limit: 10 } returns image-to-video models. Returns { items, total, truncated } — truncated is true when more matched than were returned; refine filters or raise limit (max 100) to see more. Read-only; spends no credits and works without authentication.
picsart_model_catalog
ChatGPTReturns the Picsart AI model catalog as plain data — renders NO widget or UI. Use this when YOU (the assistant) need catalog knowledge for your own reasoning: picking a model before picsart_generate, answering "which models support X", or comparing options — without pushing a model-picker widget into the conversation. When the user wants to SEE or browse models visually, use picsart_list_models instead (it renders the Picsart Studio picker). Same filters and result shape as picsart_list_models, but every item is rich by default: id, name, mode, inputType, provider, badges, description. Do NOT use it to fetch a single model's parameter schema (use picsart_model_params) or estimate per-call cost (use picsart_preflight). Inputs (all optional): mode (filter to image/video/audio), provider (case-insensitive substring like "flux", "kling", "google"), acceptsImage (true → only models that take an image input — i2i, i2v), acceptsVideo (true → only models that take a video input — v2v, v2a), acceptsAudio (true → only models that take an audio input — a2v, sts), inputType (exact-match escape hatch; one of t2v/i2v/v2v/a2v/t2i/i2i/t2a/v2a/tts/sts/sfx/music), limit (1–100, default 20), concise (default false; when true items carry only id/name/mode/inputType to save tokens). inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Example: { mode: "audio", inputType: "music" } returns music-generation models. Returns { items, total, truncated } — truncated is true when more matched than were returned; refine filters or raise limit (max 100) to see more. Read-only; spends no credits and works without authentication.
picsart_model_catalog
ChatGPTReturns the Picsart AI model catalog as plain data — renders NO widget or UI. Use this when YOU (the assistant) need catalog knowledge for your own reasoning: picking a model before picsart_generate, answering "which models support X", or comparing options — without pushing a model-picker widget into the conversation. When the user wants to SEE or browse models visually, use picsart_list_models instead (it renders the Picsart Studio picker). Same filters and result shape as picsart_list_models, but every item is rich by default: id, name, mode, inputType, provider, badges, description. Do NOT use it to fetch a single model's parameter schema (use picsart_model_params) or estimate per-call cost (use picsart_preflight). Inputs (all optional): mode (filter to image/video/audio), provider (case-insensitive substring like "flux", "kling", "google"), acceptsImage (true → only models that take an image input — i2i, i2v), acceptsVideo (true → only models that take a video input — v2v, v2a), acceptsAudio (true → only models that take an audio input — a2v, sts), inputType (exact-match escape hatch; one of t2v/i2v/v2v/a2v/t2i/i2i/t2a/v2a/tts/sts/sfx/music), limit (1–100, default 20), concise (default false; when true items carry only id/name/mode/inputType to save tokens). inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Example: { mode: "audio", inputType: "music" } returns music-generation models. Returns { items, total, truncated } — truncated is true when more matched than were returned; refine filters or raise limit (max 100) to see more. Read-only; spends no credits and works without authentication.
picsart_model_catalog
ChatGPTReturns the Picsart AI model catalog as plain data — renders NO widget or UI. Use this when YOU (the assistant) need catalog knowledge for your own reasoning: picking a model before picsart_generate, answering "which models support X", or comparing options — without pushing a model-picker widget into the conversation. When the user wants to SEE or browse models visually, use picsart_list_models instead (it renders the Picsart Studio picker). Same filters and result shape as picsart_list_models, but every item is rich by default: id, name, mode, inputType, provider, badges, description. Do NOT use it to fetch a single model's parameter schema (use picsart_model_params) or estimate per-call cost (use picsart_preflight). Inputs (all optional): mode (filter to image/video/audio), provider (case-insensitive substring like "flux", "kling", "google"), acceptsImage (true → only models that take an image input — i2i, i2v), acceptsVideo (true → only models that take a video input — v2v, v2a), acceptsAudio (true → only models that take an audio input — a2v, sts), inputType (exact-match escape hatch; one of t2v/i2v/v2v/a2v/t2i/i2i/t2a/v2a/tts/sts/sfx/music), limit (1–100, default 20), concise (default false; when true items carry only id/name/mode/inputType to save tokens). inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Example: { mode: "audio", inputType: "music" } returns music-generation models. Returns { items, total, truncated } — truncated is true when more matched than were returned; refine filters or raise limit (max 100) to see more. Read-only; spends no credits and works without authentication.
picsart_model_catalog
ChatGPTReturns the Picsart AI model catalog as plain data — renders NO widget or UI. Use this when YOU (the assistant) need catalog knowledge for your own reasoning: picking a model before picsart_generate, answering "which models support X", or comparing options — without pushing a model-picker widget into the conversation. When the user wants to SEE or browse models visually, use picsart_list_models instead (it renders the Picsart Studio picker). Same filters and result shape as picsart_list_models, but every item is rich by default: id, name, mode, inputType, provider, badges, description. Do NOT use it to fetch a single model's parameter schema (use picsart_model_params) or estimate per-call cost (use picsart_preflight). Inputs (all optional): mode (filter to image/video/audio), provider (case-insensitive substring like "flux", "kling", "google"), acceptsImage (true → only models that take an image input — i2i, i2v), acceptsVideo (true → only models that take a video input — v2v, v2a), acceptsAudio (true → only models that take an audio input — a2v, sts), inputType (exact-match escape hatch; one of t2v/i2v/v2v/a2v/t2i/i2i/t2a/v2a/tts/sts/sfx/music), limit (1–100, default 20), concise (default false; when true items carry only id/name/mode/inputType to save tokens). inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Example: { mode: "audio", inputType: "music" } returns music-generation models. Returns { items, total, truncated } — truncated is true when more matched than were returned; refine filters or raise limit (max 100) to see more. Read-only; spends no credits and works without authentication.
picsart_model_info
ChatGPTReturns full metadata for a single Picsart AI model: name, provider, generation mode, input type, feature flags, and inter-parameter constraints (e.g. "duration 15s requires resolution 1080p"). Use this once you already know the model id (or strong candidate) and need its capabilities and constraints before calling picsart_generate. Do NOT use it to browse the full model catalog (use picsart_list_models), fetch the JSON schema of accepted params (use picsart_model_params), or estimate per-call cost (use picsart_pricing). Required input: model (id or display name, e.g. "flux-2-pro", "kling-v3-pro"). Example: { model: "flux-2-pro" }. Returns { id, name, provider, mode, inputType, badges, description, features, constraints }. inputType codes — first letter is input modality, second is output: t2i (text→image), i2i (image→image), t2v (text→video), i2v (image→video), v2v (video→video), a2v (audio→video), t2a (text→audio), v2a (video→audio), tts (text-to-speech), sts (speech-to-speech), sfx (sound effects), music (music gen). Read-only; spends no credits and works without authentication.
picsart_model_params
ChatGPTReturns the parameter schema for a specific Picsart model — a map of param name to descriptor ({ type, required, default, enum, min, max, step, label, accept }). Use this once you have a model id and need to construct the params payload for picsart_generate or feed picsart_validate_params with a candidate object. Do NOT use it to discover which models exist (use picsart_list_models), fetch model-level metadata like features and inter-parameter constraints (use picsart_model_info), or estimate cost (use picsart_pricing). Required input: model id. Example: { model: "flux-2-pro" }. Returns { model, schema: { <paramName>: { type: "string"|"number"|"boolean"|"file", required?, default?, enum?, min?, max?, step?, label?, accept? } } }. Read-only; spends no credits and works without authentication.
picsart_model_params
ChatGPTReturns the parameter schema for a specific Picsart model — a map of param name to descriptor ({ type, required, default, enum, min, max, step, label, accept }). Use this once you have a model id and need to construct the params payload for picsart_generate or feed picsart_preflight with a candidate object. Do NOT use it to discover which models exist (use picsart_list_models) or estimate cost (use picsart_preflight). Required input: model id. Example: { model: "flux-2-pro" }. Returns { model, schema: { <paramName>: { type: "string"|"number"|"boolean"|"file", required?, default?, enum?, min?, max?, step?, label?, accept? } } }. Read-only; spends no credits and works without authentication.
picsart_model_params
ChatGPTReturns the parameter schema for a specific Picsart model — a map of param name to descriptor ({ type, required, default, enum, min, max, step, label, accept }). Use this once you have a model id and need to construct the params payload for picsart_generate or feed picsart_preflight with a candidate object. Do NOT use it to discover which models exist (use picsart_list_models) or estimate cost (use picsart_preflight). Required input: model id. Example: { model: "flux-2-pro" }. Returns { model, schema: { <paramName>: { type: "string"|"number"|"boolean"|"file", required?, default?, enum?, min?, max?, step?, label?, accept? } } }. Read-only; spends no credits and works without authentication.
picsart_model_params
ChatGPTReturns the parameter schema for a specific Picsart model — a map of param name to descriptor ({ type, required, default, enum, min, max, step, label, accept }). Use this once you have a model id and need to construct the params payload for picsart_generate or feed picsart_preflight with a candidate object. Do NOT use it to discover which models exist (use picsart_list_models) or estimate cost (use picsart_preflight). Required input: model id. Example: { model: "flux-2-pro" }. Returns { model, schema: { <paramName>: { type: "string"|"number"|"boolean"|"file", required?, default?, enum?, min?, max?, step?, label?, accept? } } }. Read-only; spends no credits and works without authentication.
picsart_music_studio
ChatGPTOpens the Picsart Music Studio: browse music/audio models, compose with a guided prompt builder, generate and play tracks, create AI album-cover art, revisit previously generated tracks, and save everything into a "Music Studio" folder in the user's Picsart Drive. Use when the user wants to MAKE music, a song, a soundtrack, a jingle, or sound effects. Covers text-to-music (MiniMax Music v2, Google Lyria 3 Pro/Clip), short audio clips (Kling T2A), and sound effects (ElevenLabs SFX). Does NOT edit existing audio (no trimming, remixing, or stem work), and is not for text-to-speech / voice cloning or image/video generation. Takes no input. Returns { items, total, truncated } — the curated music catalog the widget renders. Read-only; spends no credits and works without authentication.
picsart_music_studio
ChatGPTOpens the Picsart Music Studio: browse music/audio models, compose with a guided prompt builder, generate and play tracks, create AI album-cover art, revisit previously generated tracks, and save everything into a "Music Studio" folder in the user's Picsart Drive. Use when the user wants to MAKE music, a song, a soundtrack, a jingle, or sound effects. Covers text-to-music (MiniMax Music v2, Google Lyria 3 Pro/Clip), short audio clips (Kling T2A), and sound effects (ElevenLabs SFX). Does NOT edit existing audio (no trimming, remixing, or stem work), and is not for text-to-speech / voice cloning or image/video generation. Takes no input. Returns { items, total, truncated } — the curated music catalog the widget renders. Read-only; spends no credits and works without authentication.
picsart_music_studio
ChatGPTOpens the Picsart Music Studio: browse music/audio models, compose with a guided prompt builder, generate and play tracks, create AI album-cover art, revisit previously generated tracks, and save everything into a "Music Studio" folder in the user's Picsart Drive. Use when the user wants to MAKE music, a song, a soundtrack, a jingle, or sound effects. Covers text-to-music (MiniMax Music v2, Google Lyria 3 Pro/Clip), short audio clips (Kling T2A), and sound effects (ElevenLabs SFX). Does NOT edit existing audio (no trimming, remixing, or stem work), and is not for text-to-speech / voice cloning or image/video generation. Takes no input. Returns { items, total, truncated } — the curated music catalog the widget renders. Read-only; spends no credits and works without authentication.
picsart_music_studio
ChatGPTOpens the Picsart Music Studio: browse music/audio models, compose with a guided prompt builder, generate and play tracks, create AI album-cover art, revisit previously generated tracks, and save everything into a "Music Studio" folder in the user's Picsart Drive. Use when the user wants to MAKE music, a song, a soundtrack, a jingle, or sound effects. Covers text-to-music (MiniMax Music v2, Google Lyria 3 Pro/Clip), short audio clips (Kling T2A), and sound effects (ElevenLabs SFX). Does NOT edit existing audio (no trimming, remixing, or stem work), and is not for text-to-speech / voice cloning or image/video generation. Takes no input. Returns { items, total, truncated } — the curated music catalog the widget renders. Read-only; spends no credits and works without authentication.
picsart_preflight
ChatGPTFree pre-flight check before picsart_generate: in ONE call it (1) validates a candidate params object against the model's parameter schema + inter-parameter constraints, and (2) quotes the credit cost — without running the model or charging the user. Use this after assembling params (user input, derived defaults, model swaps) and before generating, to surface bad arguments and show cost. Do NOT use it to look up which params a model accepts (use picsart_model_params) or to actually generate (use picsart_generate). Required inputs: model id and a params object (put the prompt inside params). Example: { model: "flux-2-pro", params: { prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 } }. Returns { model, valid, errors?, credits }: valid/errors are from local validation (always present, no auth needed; errors only when invalid); credits is the dry-run cost (a number), or null when pricing is unavailable or the request is unauthenticated.
picsart_preflight
ChatGPTFree pre-flight check before picsart_generate: in ONE call it (1) validates a candidate params object against the model's parameter schema + inter-parameter constraints, and (2) quotes the credit cost — without running the model or charging the user. Use this after assembling params (user input, derived defaults, model swaps) and before generating, to surface bad arguments and show cost. Do NOT use it to look up which params a model accepts (use picsart_model_params) or to actually generate (use picsart_generate). Required inputs: model id and a params object (put the prompt inside params). Example: { model: "flux-2-pro", params: { prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 } }. Returns { model, valid, errors?, credits }: valid/errors are from local validation (always present, no auth needed; errors only when invalid); credits is the dry-run cost (a number), or null when pricing is unavailable or the request is unauthenticated.
picsart_preflight
ChatGPTFree pre-flight check before picsart_generate: in ONE call it (1) validates a candidate params object against the model's parameter schema + inter-parameter constraints, and (2) quotes the credit cost — without running the model or charging the user. Use this after assembling params (user input, derived defaults, model swaps) and before generating, to surface bad arguments and show cost. Do NOT use it to look up which params a model accepts (use picsart_model_params) or to actually generate (use picsart_generate). Required inputs: model id and a params object (put the prompt inside params). Example: { model: "flux-2-pro", params: { prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 } }. Returns { model, valid, errors?, credits }: valid/errors are from local validation (always present, no auth needed; errors only when invalid); credits is the dry-run cost (a number), or null when pricing is unavailable or the request is unauthenticated.
picsart_preflight
ChatGPTFree pre-flight check before picsart_generate: in ONE call it (1) validates a candidate params object against the model's parameter schema + inter-parameter constraints, and (2) quotes the credit cost — without running the model or charging the user. Use this after assembling params (user input, derived defaults, model swaps) and before generating, to surface bad arguments and show cost. Do NOT use it to look up which params a model accepts (use picsart_model_params) or to actually generate (use picsart_generate). Required inputs: model id and a params object (put the prompt inside params). Example: { model: "flux-2-pro", params: { prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 } }. Returns { model, valid, errors?, credits }: valid/errors are from local validation (always present, no auth needed; errors only when invalid); credits is the dry-run cost (a number), or null when pricing is unavailable or the request is unauthenticated.
picsart_pricing
ChatGPTReturns the exact credit cost a picsart_generate call would incur with the given model and params. Dry-run quote — no model is invoked and the user is not charged. Use this before picsart_generate whenever the user asks about cost, or to compare prices across candidate models / param combinations before committing. Do NOT use it to discover available models (use picsart_list_models), validate parameter values (use picsart_validate_params), or actually generate (use picsart_generate). Required inputs: model id and prompt. Optional params for everything else (duration, resolution, aspectRatio, count, …). Example: { model: "flux-2-pro", prompt: "a cat in a hat", params: { aspectRatio: "16:9", count: 4 } }. Returns { model, credits } where credits is a number, or null if pricing is unavailable for the model. Requires Authorization: Bearer <picsart_token> (credit lookup is per-user).
picsart_remove_bg
ChatGPTRemoves the background from an image, returning a transparent cutout of the foreground subject. Auto-picks the newest enabled Picsart remove-bg model unless overridden via the model param — no need to call picsart_list_models first. Use this when the user asks to "remove the background", "cut out the subject", or "make the background transparent". Do NOT use this to replace the background with a new scene (use picsart_change_bg), upscale or sharpen the result (use picsart_enhance), convert raster to SVG (use picsart_vectorize), or generate a new image from scratch (use picsart_generate). Required input: image — a publicly-accessible URL. Local files are not supported; if you only have a local file, first make it available as a public or app-authorized URL. Optional: model to pin a specific remove-bg model, outputFormat (e.g. "png"). Example: { image: "https://example.com/portrait.jpg" }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_remove_bg
ChatGPTRemoves the background from an image, returning a transparent cutout of the foreground subject. Auto-picks the newest enabled Picsart remove-bg model unless overridden via the model param — no need to call picsart_list_models first. Use this when the user asks to "remove the background", "cut out the subject", or "make the background transparent". Do NOT use this to replace the background with a new scene (use picsart_change_bg), upscale or sharpen the result (use picsart_enhance), convert raster to SVG (use picsart_vectorize), or generate a new image from scratch (use picsart_generate). Required input: image — a publicly-accessible URL. Local files are not supported; if you only have a local file, first make it available as a public or app-authorized URL. Optional: model to pin a specific remove-bg model, outputFormat (e.g. "png"). Example: { image: "https://example.com/portrait.jpg" }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_remove_bg
ChatGPTRemoves the background from an image, returning a transparent cutout of the foreground subject. Auto-picks the newest enabled Picsart remove-bg model unless overridden via the model param — no need to call picsart_list_models first. Use this when the user asks to "remove the background", "cut out the subject", or "make the background transparent". Do NOT use this to replace the background with a new scene (use picsart_change_bg), upscale or sharpen the result (use picsart_enhance), convert raster to SVG (use picsart_vectorize), or generate a new image from scratch (use picsart_generate). Required input: image — a publicly-accessible URL. Local files are not supported; if you only have a local file, first make it available as a public or app-authorized URL. Optional: model to pin a specific remove-bg model, outputFormat (e.g. "png"). Example: { image: "https://example.com/portrait.jpg" }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_remove_bg
ChatGPTRemoves the background from an image, returning a transparent cutout of the foreground subject. Auto-picks the newest enabled Picsart remove-bg model unless overridden via the model param — no need to call picsart_list_models first. Use this when the user asks to "remove the background", "cut out the subject", or "make the background transparent". Do NOT use this to replace the background with a new scene (use picsart_change_bg), upscale or sharpen the result (use picsart_enhance), convert raster to SVG (use picsart_vectorize), or generate a new image from scratch (use picsart_generate). Required input: image — a publicly-accessible URL. Local files are not supported; if you only have a local file, first make it available as a public or app-authorized URL. Optional: model to pin a specific remove-bg model, outputFormat (e.g. "png"). Example: { image: "https://example.com/portrait.jpg" }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block per result URL. id is the SDK's generation handle; metadata may include model-specific tags. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_upload
ChatGPTSaves a publicly-accessible file URL into the user's Picsart Drive, optionally under a named folder. Use this to persist an external asset into Drive — for example, before passing a remote image to an edit tool that prefers a Drive-hosted source, or to archive a generated asset for later reference. Do NOT use this for local file uploads — only publicly-fetchable URLs work over remote MCP. Also do NOT use it to generate or transform content (use picsart_generate or one of the edit tools). Required inputs: url — must be publicly fetchable — and name — the filename to store under (e.g. "photo.jpg", "demo.mp4"). Optional: type (one of "image", "video", "audio"; default "image"; drives Drive's content classification) and folder (folder name; created if missing; defaults to "AI Playground"). Example: { url: "https://example.com/cat.png", name: "cat.png", type: "image", folder: "Pets" }. Returns { uid, folder: { uid, name } } — uid is the new Drive file id, folder is the folder it was saved into. Writes to the user's Picsart Drive. Requires Authorization: Bearer <picsart_token>.
picsart_validate_params
ChatGPTValidates a candidate params object against a Picsart model's parameter schema and inter-parameter constraints. Free pre-flight check — does NOT spend credits and does NOT run the model. Use this before picsart_generate whenever you assembled params from a non-trivial chain (e.g. user input, derived defaults, model swaps) and want to surface bad arguments to the user before incurring cost. Do NOT use it to look up which params a model accepts (use picsart_model_params), estimate cost (use picsart_pricing), or actually generate (use picsart_generate). Required inputs: model id, params object. Example: { model: "flux-2-pro", params: { prompt: "a cat in a hat", aspectRatio: "16:9", count: 1 } }. Returns { model, valid: boolean, errors?: string[] } — errors is present only when valid is false. Read-only; spends no credits and works without authentication.
picsart_vectorize
ChatGPTConverts a raster image (PNG, JPG) into an SVG vector. Auto-picks the newest enabled Picsart vectorize model unless overridden via the model param. Use this when the user asks to "vectorize", "convert to SVG", "make this a vector", or wants a scalable version of a logo or icon. Best results on logos, icons, and simple graphics — photographic images vectorize poorly and the user should be warned. Do NOT use this to remove the background (use picsart_remove_bg), replace the background (use picsart_change_bg), upscale a raster image (use picsart_enhance), or generate a new image (use picsart_generate). Required input: image — a publicly-accessible URL to a PNG or JPG (not a local file path). Optional: model to pin a specific vectorize model. Example: { image: "https://example.com/logo.png" }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block for the SVG URL (mime image/svg+xml). id is the SDK's generation handle. Clients fetch the SVG from that URL. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_vectorize
ChatGPTConverts a raster image (PNG, JPG) into an SVG vector. Auto-picks the newest enabled Picsart vectorize model unless overridden via the model param. Use this when the user asks to "vectorize", "convert to SVG", "make this a vector", or wants a scalable version of a logo or icon. Best results on logos, icons, and simple graphics — photographic images vectorize poorly and the user should be warned. Do NOT use this to remove the background (use picsart_remove_bg), replace the background (use picsart_change_bg), upscale a raster image (use picsart_enhance), or generate a new image (use picsart_generate). Required input: image — a publicly-accessible URL to a PNG or JPG (not a local file path). Optional: model to pin a specific vectorize model. Example: { image: "https://example.com/logo.png" }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block for the SVG URL (mime image/svg+xml). id is the SDK's generation handle. Clients fetch the SVG from that URL. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_vectorize
ChatGPTConverts a raster image (PNG, JPG) into an SVG vector. Auto-picks the newest enabled Picsart vectorize model unless overridden via the model param. Use this when the user asks to "vectorize", "convert to SVG", "make this a vector", or wants a scalable version of a logo or icon. Best results on logos, icons, and simple graphics — photographic images vectorize poorly and the user should be warned. Do NOT use this to remove the background (use picsart_remove_bg), replace the background (use picsart_change_bg), upscale a raster image (use picsart_enhance), or generate a new image (use picsart_generate). Required input: image — a publicly-accessible URL to a PNG or JPG (not a local file path). Optional: model to pin a specific vectorize model. Example: { image: "https://example.com/logo.png" }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block for the SVG URL (mime image/svg+xml). id is the SDK's generation handle. Clients fetch the SVG from that URL. Spends credits. Requires Authorization: Bearer <picsart_token>.
picsart_vectorize
ChatGPTConverts a raster image (PNG, JPG) into an SVG vector. Auto-picks the newest enabled Picsart vectorize model unless overridden via the model param. Use this when the user asks to "vectorize", "convert to SVG", "make this a vector", or wants a scalable version of a logo or icon. Best results on logos, icons, and simple graphics — photographic images vectorize poorly and the user should be warned. Do NOT use this to remove the background (use picsart_remove_bg), replace the background (use picsart_change_bg), upscale a raster image (use picsart_enhance), or generate a new image (use picsart_generate). Required input: image — a publicly-accessible URL to a PNG or JPG (not a local file path). Optional: model to pin a specific vectorize model. Example: { image: "https://example.com/logo.png" }. Returns { assets, id, model, created_at, summary, why_relevant, url, results: [{ url, metadata? }], drive? } plus a resource_link block for the SVG URL (mime image/svg+xml). id is the SDK's generation handle. Clients fetch the SVG from that URL. Spends credits. Requires Authorization: Bearer <picsart_token>.