The Dynamic Mockups connector lets your AI agent act in each user's Dynamic Mockups account. Each user connects their own Dynamic Mockups API key once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 21 tools.
- Tools
- 21
- What they doRead · write · destructive
- 10 · 10 · 110 read10 write1 destructive
- Users sign in with
- API key
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Dynamic Mockups connection
In AgentKit > Connections, create a Dynamic Mockups connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'dynamicmockups'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Dynamic Mockups:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'dynamicmockups_list_catalogs',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "dynamicmockups"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Dynamic Mockups:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="dynamicmockups_list_catalogs",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user opens the link once and enters their Dynamic Mockups credentials there. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_tooldynamicmockups_get_mockupFetch one mockup template from My Templates by its UUID.Read-onlyGet Mockup
Fetch one mockup template from My Templates by its UUID. Returns the mockup's uuid, name, thumbnail, smart objects (uuid, size, position, print area presets), text layers, collections and thumbnails. Use get_mockup to read the smart object and text layer uuids of a known mockup. Use list_mockups to browse or search.
Inputs
uuidstringrequired- UUID of the mockup to retrieve, taken from list_mockups or from the mockup's URL in the web app.
dynamicmockups_list_catalogsList the catalogs in the account that owns the API key.Read-onlyList Catalogs
List the catalogs in the account that owns the API key. Returns each catalog's uuid, name, type (custom or default) and creation time. Use list_catalogs to find a catalog_uuid for filtering mockups and collections or for creating collections.
Inputs
This tool takes no inputs.
dynamicmockups_list_collectionsList mockup collections, optionally limited to one catalog.Read-onlyList Collections
List mockup collections, optionally limited to one catalog. Returns each collection's uuid, name, mockup count and created and updated times. Use list_collections to find a collection_uuid for list_mockups or create_bulk_render.
Inputs
catalog_uuidstring- Optional UUID of a catalog (from list_catalogs) to limit the collections to. Leave it out to use the default catalog.
include_all_catalogsboolean- Set true to include collections from every catalog. When false or left out, only the default catalog is searched.
dynamicmockups_list_mockupsList the mockup templates in My Templates, optionally filtered by catalog, collection or name.Read-onlyList Mockups
List the mockup templates in My Templates, optionally filtered by catalog, collection or name. Returns each mockup's uuid, name, thumbnail, smart objects with their uuids, text layers, collections and thumbnails. Use list_mockups to find a mockup_uuid and smart object uuids before rendering. Use get_mockup when you already have the mockup uuid.
Inputs
catalog_uuidstring- Optional UUID of a catalog (from list_catalogs) to limit the mockups to. Leave it out to use the default catalog.
collection_uuidstring- Optional UUID of a collection (from list_collections) to limit the mockups to.
include_all_catalogsboolean- Set true to include mockups from every catalog. When false or left out, only the default catalog is searched.
namestring- Optional name filter, for example 'mug', to narrow the mockups returned.
dynamicmockups_mockanything_get_productFetch the full detail of one print-on-demand product.Read-onlyGet MockAnything Product
Fetch the full detail of one print-on-demand product. Returns the product's uuid, name, brand, style code, category, decoration areas with position ids and sources, colors and sizes. Use mockanything_get_product to pick valid size, color and decoration values for mockanything_create. Get the uuid from mockanything_search_products.
Inputs
uuidstringrequired- UUID of the product, taken from mockanything_search_products.
dynamicmockups_mockanything_get_statusCheck the progress of an AI mockup creation task started from a prompt.Read-onlyGet MockAnything Status
Check the progress of an AI mockup creation task started from a prompt. Returns data with the task_id, state (PROGRESS, SUCCESS or FAILURE), image_url and, on SUCCESS, the mockup details whose uuid works as mockup_uuid for rendering. Use mockanything_get_status after mockanything_create returns a task_id. Poll again while the state is PROGRESS.
Inputs
task_idstringrequired- Task id returned by mockanything_create.
dynamicmockups_mockanything_list_stylesList the visual styles available for AI-generated mockups.Read-onlyList MockAnything Styles
List the visual styles available for AI-generated mockups. Returns each style's id, description and the models that support it. Use mockanything_list_styles to find a valid style for mockanything_create. Pass a model to see only the styles that model supports.
Inputs
modelstring- Optional AI model to limit the styles to. All styles for all models are returned when left out.one of
nano_banana_2nano_banana_liteseedream_4_0seedream_4_5gpt_image_2
dynamicmockups_mockanything_search_productsSearch the print-on-demand product catalog used to ground AI mockups.Read-onlySearch MockAnything Products
Search the print-on-demand product catalog used to ground AI mockups. Returns a list of matching products, each with a name and uuid. Use mockanything_search_products to find a product uuid, then mockanything_get_product for its sizes, colors and decoration areas.
Inputs
querystringrequired- Search text for the product, for example 'gildan 5000 t-shirt'.
dynamicmockups_motionmockups_get_statusCheck the status of a submitted video generation request.Read-onlyGet MotionMockups Status
Check the status of a submitted video generation request. Returns data with the request_id, status (IN_QUEUE, PROCESSING, COMPLETED, FAILED, CANCELLED or ERROR), queue_position and, when COMPLETED, a video object with url, content_type, file_name and file_size. Use motionmockups_get_status after motionmockups_submit. Poll again while the status is IN_QUEUE or PROCESSING.
Inputs
request_idstringrequired- Request id returned by motionmockups_submit.
dynamicmockups_motionmockups_list_modelsList the video models available for MotionMockups with their limits and costs.Read-onlyList MotionMockups Models
List the video models available for MotionMockups with their limits and costs. Returns each model's value, display name, default duration, allowed durations with credit costs and estimated time, and supported aspect ratios. Use motionmockups_list_models before motionmockups_submit to choose a model and valid duration and aspect_ratio.
Inputs
This tool takes no inputs.
dynamicmockups_create_batch_renderRender several mockups in a single request, each with its own artwork.WriteCreate Batch Render
Render several mockups in a single request, each with its own artwork. Returns data with total_renders, successful_renders, failed_renders and a renders list holding each render's status, export_path, export_label and mockup_uuid. Use create_batch_render for multiple different mockups. Use create_render for one image and create_bulk_render to render a whole collection with shared artwork.
Inputs
rendersarrayrequired- Renders to produce, one entry per mockup. Each entry needs a mockup_uuid and a smart_objects list in the same shape as create_render, and may add text_layers and an export_label. Each smart object names its uuid and an asset with a public image url (jpg, jpeg, png, webp or gif). Example: [{"mockup_uuid": "0663101b-f01c-4e85-89af-f90b4e9f983b", "export_label": "front", "smart_objects": [{"uuid": "7d1b2c9e-4f0a-4c3e-9a55-1e2f3a4b5c6d", "asset": {"url": "https://example.com/logo.png", "fit": "contain"}}]}].
image_formatstring- Format of the exported image: jpg, png or webp. The API returns png when you leave it out.one of
jpgpngwebp image_sizeinteger- Width in pixels of the exported image, for example 720. Height scales automatically. Leave it out for the full high-resolution image.
modestring- Whether the exported image URL opens in the browser (view) or downloads as a file (download). The API serves a download when you leave it out.one of
viewdownload
dynamicmockups_create_bulk_renderRender every mockup in a collection at once using shared artwork and color inputs.WriteCreate Bulk Render
Render every mockup in a collection at once using shared artwork and color inputs. Returns data with the export_label and an exports list of rendered image urls with labels. Use create_bulk_render when the collection defines artwork or color mapping inputs. Use create_batch_render to pick individual mockups. Needs a collection_uuid from list_collections.
Inputs
collection_uuidstringrequired- UUID of the collection whose mockups will all be rendered, taken from list_collections.
artworksobject- Artwork inputs for the collection, as an object that maps each artwork input name defined in the collection to a public image URL. Example: {"artwork_main": "https://example.com/logo.png"}.
colorsobject- Color inputs for the collection, as an object that maps each color input name defined in the collection to a hex color code. Example: {"color_main": "#ff8800"}.
export_labelstring- Optional label echoed back unchanged in the response so you can match the result to your request, for example 'tshirt-front-blue'.
image_formatstring- Format of the exported image: jpg, png or webp. The API returns png when you leave it out.one of
jpgpngwebp image_sizeinteger- Width in pixels of the exported image, for example 720. Height scales automatically. Leave it out for the full high-resolution image.
modestring- Whether the exported image URL opens in the browser (view) or downloads as a file (download). The API serves a download when you leave it out.one of
viewdownload
dynamicmockups_create_catalogCreate a custom catalog in the workspace that owns the API key.WriteCreate Catalog
Create a custom catalog in the workspace that owns the API key. Returns the new catalog's uuid, name, type and creation time. Use create_catalog to group collections and mockups, for example one catalog per store. Retrying creates another catalog with the same name.
Inputs
namestringrequired- Name of the custom catalog, 1 to 255 characters, for example 'Etsy store'.
dynamicmockups_create_collectionCreate a new collection for grouping mockup templates.WriteCreate Collection
Create a new collection for grouping mockup templates. Returns the new collection's id, uuid, workspace id, catalog id, name, slug and published flag. Use create_collection to prepare a group of mockups for bulk rendering. Use list_collections to find existing ones.
Inputs
namestringrequired- Name of the collection to create, for example 'Tea mugs'.
catalog_uuidstring- Optional UUID of the catalog (from list_catalogs) to place the collection in. The default catalog is used when left out.
dynamicmockups_create_embroidery_effectTurn an image into an embroidery-style image.WriteCreate Embroidery Effect
Turn an image into an embroidery-style image. Returns data with the export_path URL of the generated embroidery image. Use create_embroidery_effect to prepare artwork before rendering it onto a mockup. Provide either image_url or image_data_b64.
Inputs
image_data_b64string- Base64-encoded image data to process. Provide either image_data_b64 or image_url.
image_urlstring- Public URL of the image to process. Provide either image_url or image_data_b64.
dynamicmockups_create_renderRender one mockup image by placing your artwork on the chosen mockup's smart objects.WriteCreate Mockup Render
Render one mockup image by placing your artwork on the chosen mockup's smart objects. Returns success, a message and data with the export_label and the export_path URL of the rendered image. Use create_render for a single image. Use create_batch_render for several mockups at once and create_bulk_render for a whole collection. Needs the mockup uuid and smart object uuids from list_mockups or get_mockup.
Inputs
mockup_uuidstringrequired- UUID of the mockup template to render, taken from list_mockups.
smart_objectsarrayrequired- Smart objects to fill with your artwork. Each entry names a smart object by its uuid (from list_mockups or get_mockup) and usually carries an asset with a publicly reachable image url (jpg, jpeg, png, webp or gif) and a fit of stretch, contain or cover. An asset can also set size, position and rotate. Each entry may add a hex color overlay, a blending_mode, adjustment_layers (brightness, contrast, opacity, saturation, vibrance, blur), a print_area_preset_uuid, and a decoration_method that only affects MockAnything templates. Example: [{"uuid": "0663101b-f01c-4e85-89af-f90b4e9f983b", "asset": {"url": "https://example.com/logo.png", "fit": "contain"}}].
export_labelstring- Optional label echoed back unchanged in the response so you can match the result to your request, for example 'tshirt-front-blue'.
image_formatstring- Format of the exported image: jpg, png or webp. The API returns png when you leave it out.one of
jpgpngwebp image_sizeinteger- Width in pixels of the exported image, for example 720. Height scales automatically. Leave it out for the full high-resolution image.
modestring- Whether the exported image URL opens in the browser (view) or downloads as a file (download). The API serves a download when you leave it out.one of
viewdownload text_layersarray- Text layers to fill on the mockup. Each entry names a text layer by uuid (from get_mockup) and gives the text to show, with an optional font_family (Roboto when left out), font_size in pixels and font_color as a hex code. Example: [{"uuid": "7d1b2c9e-4f0a-4c3e-9a55-1e2f3a4b5c6d", "text": "Hello", "font_color": "#ff0000"}].
dynamicmockups_export_print_filesExport print-ready files for a mockup's smart objects from your artwork.WriteExport Print Files
Export print-ready files for a mockup's smart objects from your artwork. Returns data with the export_label and a print_files list holding each file's export_path, smart_object_uuid and smart_object_name. Use export_print_files to get production artwork. Use create_render for a preview image of the finished mockup. Needs the mockup uuid and smart object uuids from get_mockup.
Inputs
mockup_uuidstringrequired- UUID of the mockup template to export print files for, taken from list_mockups.
smart_objectsarrayrequired- Smart objects to fill with your artwork. Each entry names a smart object by its uuid (from list_mockups or get_mockup) and usually carries an asset with a publicly reachable image url (jpg, jpeg, png, webp or gif) and a fit of stretch, contain or cover. An asset can also set size, position and rotate. Each entry may add a hex color overlay, a blending_mode, adjustment_layers (brightness, contrast, opacity, saturation, vibrance, blur), a print_area_preset_uuid, and a decoration_method that only affects MockAnything templates. Example: [{"uuid": "0663101b-f01c-4e85-89af-f90b4e9f983b", "asset": {"url": "https://example.com/logo.png", "fit": "contain"}}].
export_labelstring- Optional label echoed back unchanged in the response so you can match the result to your request, for example 'tshirt-front-blue'.
image_dpiinteger- Dots per inch of the exported print file, for example 300.
image_formatstring- Format of the exported image: jpg, png or webp. The API returns png when you leave it out.one of
jpgpngwebp image_sizeinteger- Width in pixels of the exported image, for example 720. Height scales automatically. Leave it out for the full high-resolution image.
modestring- Whether the exported image URL opens in the browser (view) or downloads as a file (download). The API serves a download when you leave it out.one of
viewdownload text_layersarray- Text layers to fill on the mockup. Each entry names a text layer by uuid (from get_mockup) and gives the text to show, with an optional font_family (Roboto when left out), font_size in pixels and font_color as a hex code. Example: [{"uuid": "7d1b2c9e-4f0a-4c3e-9a55-1e2f3a4b5c6d", "text": "Hello", "font_color": "#ff0000"}].
dynamicmockups_mockanything_createCreate an AI-generated mockup template from a text prompt or from an existing image.WriteCreate MockAnything Mockup
Create an AI-generated mockup template from a text prompt or from an existing image. Returns data with a task_id and status for a prompt, which you poll with mockanything_get_status, and completes immediately for an image_url. Use mockanything_create to make a new template. Provide either prompt or image_url, not both. Uploading an image file is not supported here.
Inputs
catalog_uuidstring- Optional UUID of the catalog for the mockup. The default catalog is used when left out.
collectionsarray- Optional collections to attach the mockup to. Each entry either names an existing collection by uuid or names a new collection to create by name, never both. Example: [{"uuid": "0663101b-f01c-4e85-89af-f90b4e9f983b"}, {"name": "AI mockups"}].
enhance_promptboolean- Set true to run prompt enhancement before generation. Only used with prompt.
image_urlstring- Public URL of an existing image to use as the mockup image. Provide either image_url or prompt.
modelstring- AI model used for generation. Only applies when you give a prompt, and is required when style is set. The API picks nano_banana_2 when left out.one of
nano_banana_2nano_banana_liteseedream_4_0seedream_4_5gpt_image_2 namestring- Optional name for the mockup, shown in the dashboard.
productobject- Optional print-on-demand product to anchor the generation on. Give the product uuid from mockanything_search_products, and optionally a selected_size, a color_name and a decorations list, all of which must match values returned by mockanything_get_product. Example: {"uuid": "0663101b-f01c-4e85-89af-f90b4e9f983b", "color_name": "Black"}.
promptstring- Text prompt describing the mockup image to generate. Provide either prompt or image_url.
stylestring- Visual style to apply, for example 'polaroid-etsy', 'ugc' or 'fashion'. Requires model. Use mockanything_list_styles to see valid values.
dynamicmockups_motionmockups_submitQueue an AI video generation request that animates a still image.WriteSubmit MotionMockups Video
Queue an AI video generation request that animates a still image. Returns data with a request_id, status, model, reserved credits and a status_url to poll. Use motionmockups_submit to start a video, then motionmockups_get_status with the request_id. Check motionmockups_list_models for the durations and aspect ratios each model allows. This spends credits.
Inputs
start_image_urlstringrequired- Publicly accessible URL of the source image to animate, up to 2000 characters.
aspect_ratiostring- Output aspect ratio such as 16:9. Only some models support it, with model-specific values; see motionmockups_list_models.
durationinteger- Video length in seconds. Allowed values depend on the model; see motionmockups_list_models. The model's default duration is used when left out.
generate_audioboolean- Set true to also generate audio. This raises the credit cost by a model-specific multiplier.
modelstring- MotionMockups model to use. The API picks its standard model when left out.one of
kling_v2.6kling_v3_pro negative_promptstring- Optional description of what to avoid in the video, up to 1000 characters.
promptstring- Optional text describing the desired video, up to 2500 characters. A prompt is generated from the image when left out.
skip_discoveryboolean- When true and no prompt is given, skip image auto-prompting and use a neutral default prompt.
dynamicmockups_upload_psdUpload a Photoshop (PSD) file from a public URL and optionally turn it into a mockup template.WriteUpload PSD
Upload a Photoshop (PSD) file from a public URL and optionally turn it into a mockup template. Returns data with the uploaded PSD's uuid and name, or the created mockup resource when a template is created. Use upload_psd to add your own custom mockups. Use delete_psd to remove one.
Inputs
psd_file_urlstringrequired- Publicly reachable URL of the PSD file to upload.
catalog_uuidstring- Optional UUID of the catalog that receives the created mockup template. The default catalog is used when left out.
collection_uuidsarray- Optional list of collection UUIDs to add the created mockup template to. Only used when a mockup template is created. Example: ["0663101b-f01c-4e85-89af-f90b4e9f983b"].
create_mockup_after_uploadboolean- Set true to create a mockup template from the PSD right after upload.
psd_category_idinteger- Optional numeric category id for the PSD file.
psd_namestring- Optional name for the uploaded PSD file.
dynamicmockups_delete_psdDelete an uploaded PSD file, and optionally every mockup created from it.DestructiveDelete PSD
Delete an uploaded PSD file, and optionally every mockup created from it. Returns success and a message confirming the deletion. Use delete_psd to clean up uploads made with upload_psd. This cannot be undone.
Inputs
psd_uuidstringrequired- UUID of the PSD file to delete, returned by upload_psd.
delete_related_mockupsboolean- Set true to also delete every mockup created from this PSD. When left out, related mockups are not deleted.
No tools match.