# Threekit MCP connector

The Threekit connector brings your 3D assets, product catalogs, and configurator analytics into Claude, ChatGPT, Cursor, and any MCP client, so each person can find, update, and report on them inside their own Threekit access.

Source: https://elaichi.ai/connectors/threekit/

## Facts

| | |
| --- | --- |
| Application | Threekit |
| Category | Ecommerce |
| AI tools | 110 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 110 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Threekit is connected

- List Threekit assets tagged for the spring catalog
- Which analytics events drove the most asset views last week
- Clone this Threekit asset and update its keywords

## Connect Threekit in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Threekit.
2. Optionally set Share with, then press Connect.
3. Paste a Threekit API key. One person generates a token in Threekit and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Threekit tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Threekit to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Threekit to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Threekit to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Threekit to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Threekit tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Threekit through Elaichi

### Find the asset behind a product page

Ecommerce. Ask which Threekit asset a configurable product uses, pull its details and thumbnail, and check its tags and keywords without opening the platform.

### Tidy a catalog before a launch

Merchandising. Update names and fields on catalog entries, add new assets to a catalog, and remove retired products so the storefront shows the right range on day one.

### See which configurations shoppers viewed

Marketing. Generate an analytics report on event views for a campaign window and get a plain summary of which products and options drew the most attention.

### Clone an asset to start a variant

3D and design. Copy an existing Threekit asset as the starting point for a new color or trim, then update its details and tags so the team can find it.

### Bring back an asset deleted by mistake

Operations. Restore a Threekit asset that was removed in error and confirm it is back in the catalog, with the change recorded against the person who asked.

### Record and report on configurator events

Analytics. Log analytics events from your own storefront flows into Threekit and pull reports on them alongside the events Threekit already captures.

## Frequently asked questions

### How do I connect Threekit to Claude?

Two steps. In Elaichi, open the Threekit connector and paste your Threekit API key; there is no OAuth application to register and no client ID or secret to generate. Then in Claude go to Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp. Claude asks you to sign in to Elaichi, and from then on it can work with your Threekit assets, catalogs, and analytics as you.

### Does Threekit work with ChatGPT and Cursor as well as Claude?

Yes. Once Threekit is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect Threekit once and every client you use picks it up.

### What can an AI agent actually do with my Threekit data?

With Threekit connected, an agent can list and look up 3D assets, read their details, tags, keywords, and thumbnails, clone or restore them, and update their fields. It can create and maintain catalogs, add or remove assets in them, and record analytics events or generate reports on what shoppers viewed. Because Threekit has a large set of actions, short concrete asks like "find assets tagged spring launch" work better than long paragraphs.

### Does connecting Threekit give the AI access to my whole organization?

No. An agent working through Elaichi only reaches the Threekit assets, catalogs, and analytics that the connected API key can already reach, so it sees what the person who connected it sees. Elaichi can narrow that further, for example to read-only or to a single team, but it can never widen access beyond what Threekit itself grants.

### Can my team share one Threekit connection?

Yes. One person connects Threekit in Elaichi and shares the connection with a team, and nobody else ever handles the API key. Each teammate still signs in to Elaichi as themselves, so every asset update or catalog change in the audit log carries their name, not the name of whoever connected it.

### Can I stop an agent from deleting or changing things in Threekit?

Yes. Restrictions in Elaichi apply per action, so you can allow reading Threekit assets and running analytics reports while blocking deletes, overwrites, or catalog changes. A blocked action is never advertised to Claude, ChatGPT, Cursor, or any other client, so no prompt, however worded, can reach it.

### What happens to a Threekit connection when someone leaves?

Offboarding a person in Elaichi ends their access to Threekit through every client at once, with nothing to revoke in Claude, ChatGPT, or Cursor separately. A shared Threekit connection keeps working for everyone else on the team. If you want the connection gone entirely, disconnecting it once in Elaichi removes it from every client.

## All 110 Threekit tools

Every tool below is callable through https://api.elaichi.ai/mcp once Threekit is connected, subject to the toolbox it is in and the restrictions on the caller.

- **Threekit analytics create event** (Create). Create a Threekit analytics event and return its details. Returns: id, createdAt, openapi, info, servers, security, paths, components, x-readme. Required: eventType, orgId, sessionId.
- **Threekit analytics get event** (Get). Get a single Threekit analytics event by id, including the asset name and asset metadata. Returns: id, eventType, eventMetadata, orgId, assetId, assetName, assetMetadata, configId, configuration, userId, sessionId, device, referer, createdAt, openapi, info, servers, security, paths, components, x-readme. Required: event_id.
- **Threekit analytics get event views** (Get). Fetch aggregated view analytics for Threekit events by event type and date range. Returns: count, perPage, page, sort, views, openapi, info, servers, security, paths, components, x-readme. The range parameter supports year, month, and day granularities (defaults to month).
- **Threekit analytics generate reports** (Generate). Generate a BigQuery export job that produces a CSV report of raw Buyer Analytics data for a given event type and date range. Required: orgId, eventType, startDate, endDate. Date format is YYYY-MM-DD.
- **List all Threekit assets** (List). List Threekit assets for an organization with optional filters by name, type, tags, keywords, and more. Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, branch, description, metadata, tags, keywords, publicShare, importedFileId, proxyId, parentFolderId, publishedAt, defaultStageId, defaultCompositeId, deletedBy, nodetags. Max 100 per page; defaults to 30.
- **Get single Threekit asset by ID** (Get). Get a single Threekit asset by id. Returns the full asset object including id, name, type, tags, keywords, metadata, publicShare, parentFolderId, and dates. Required: id.
- **Update a Threekit asset by ID** (Update). Update a Threekit asset by id with new name, description, tags, keywords, publicShare, or folder assignment. Returns the updated asset object including id, name, type, createdAt, updatedAt, tags, keywords. Required: id.
- **Delete a Threekit asset by ID** (Delete). Delete a Threekit asset by id. Returns: message. Required: id.
- **Threekit assets get details** (Get). Get detailed information about a Threekit asset by export id, including attributes and their values. Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, branch, description, metadata, tags, keywords, publicShare, importedFileId, proxyId, parentFolderId, publishedAt, defaultStageId, defaultCompositeId, deletedBy, nodetags, attributes. Required: export_id.
- **Threekit assets list tags** (List). List Threekit asset tags filtered by organization ID and optional query parameters. Returns: tags. Required: orgId.
- **Threekit assets list keywords** (List). List Threekit asset keywords filtered by organization ID and optional query parameters. Returns: keywords. Required: orgId.
- **Threekit assets clone** (Action). Clone a Threekit asset by creating a new asset as a copy of an existing one. Returns the cloned asset object including id, name, type, orgId, tags, keywords, and metadata. Required: asset_id.
- **Threekit assets restore** (Restore). Restore a deleted Threekit asset by asset ID. Returns the restored asset object including id, name, type, orgId, tags, keywords, and metadata. Required: asset_id. Cannot restore an active asset.
- **Threekit assets get thumbnail** (Get). Get a PNG thumbnail image for a Threekit asset by thumbnail ID. Returns a binary PNG image in the response body. Required: thumbnail_id. Optional cache and wait parameters control whether the thumbnail is cached and whether to wait for the latest version.
- **Threekit catalog create assets** (Create). Create a new asset in Threekit with attributes, metadata, tags, and keywords. Returns the created asset object including id, name, type, orgId, customId, attributes, tags, keywords, and metadata. Required: name, type, orgId.
- **List all Threekit catalog** (List). List Threekit catalog items with complete attribute and metadata information. Returns per item: id, name, type, orgId, tags, keywords, attributes, publicShare, customId. Max 100 per page.
- **Threekit catalog get asset** (Get). Get a single Threekit asset by ID (UUID or customId). Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, branch, description, metadata, tags, tagids, keywords, publicShare, importedFileId, proxyId, customId, asset, attributes. Required: asset_id.
- **Threekit catalog overwrite asset** (Action). Overwrite a Threekit asset by ID, replacing its current fields with the values supplied in the request body. This is a full PUT overwrite — omitted body fields are not preserved. Returns the updated asset including id, name, type, description, tags, keywords, attributes, metadata, customId, and asset. Required: asset_id.
- **Threekit catalog delete asset** (Delete). Delete a Threekit asset by asset_id. Returns: message. Required: asset_id.
- **Create a Threekit catalog** (Create). Create a new Threekit asset with attributes, metadata, and keywords. Returns the created asset including id, name, type, orgId, createdAt, updatedAt, attributes, and customId. Required: name, type, orgId.
- **Get single Threekit catalog by ID** (Get). Get a single Threekit asset by id. Returns the asset object including id, name, type, orgId, createdAt, updatedAt, attributes, tags, and customId. Required: id.
- **Update a Threekit catalog by ID** (Update). Overwrite a Threekit catalog asset by id, replacing all writable fields in a single PUT request. Returns the full asset object including id, name, type, createdAt, updatedAt, orgId, description, tags, attributes, and customId. Required: id.
- **Threekit catalog partial update** (Update). Partially update a Threekit catalog asset by id, changing only the fields supplied in the request body. Returns the full asset object including id, name, type, createdAt, updatedAt, orgId, description, tags, attributes, and customId. Required: id.
- **Delete a Threekit catalog by ID** (Delete). Delete a Threekit asset by id. The id can be the Threekit UUID or a user-defined customId. Returns: message. Required: id.
- **Threekit catalog bulk update** (Update). Update a Threekit catalog asset by ID using a PATCH request. Returns the updated asset including id, name, type, createdAt, updatedAt, attributes, and customId. Required: asset_id.
- **Threekit attributes create global** (Create). Create a global attribute in Threekit. Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, description, metadata, tags, tagids, keywords, publicShare, proxyType, proxy. Required: type, orgId.
- **Threekit attributes get global** (Get). Get a single global attribute by ID in Threekit. Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, description, metadata, tags, tagids, keywords, publicShare, proxyType, proxy. Required: attribute_id.
- **Threekit attributes overwrite global** (Action). Overwrite a global attribute by ID in Threekit. Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, description, metadata, tags, tagids, keywords, publicShare, proxyType, proxy. Required: attribute_id.
- **Threekit attributes delete global** (Delete). Delete a global attribute in Threekit by attribute ID. Returns: message. Required: attribute_id.
- **Create a Threekit attribute** (Create). Create a global attribute in Threekit. Returns the created attribute object including id, name, type, orgId, description, tags, metadata, proxy, and customId. Required: type, orgId.
- **Get single Threekit attribute by ID** (Get). Get a single global attribute by id in Threekit. Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, description, metadata, tags, tagids, keywords, publicShare, proxyType, proxy. Required: id.
- **Update a Threekit attribute by ID** (Update). Update (replace) a global attribute by id in Threekit. Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, description, metadata, tags, tagids, keywords, publicShare, proxyType, proxy. Required: id.
- **Threekit attributes partial update** (Update). Partially update a global attribute by id in Threekit. Returns: id, name, type, as, createdAt, updatedAt, deletedAt, createdBy, orgId, description, metadata, tags, tagids, keywords, publicShare, proxyType, proxy. Required: id.
- **Delete a Threekit attribute by ID** (Delete). Delete a global attribute by id in Threekit. Returns: message. Required: id.
- **Threekit attributes bulk update** (Update). Update a global attribute in Threekit by attribute ID using a partial PATCH update. Returns the updated attribute object including id, name, type, createdAt, updatedAt, orgId, description, proxyType, and the proxy configuration. Required: attribute_id.
- **Create a Threekit asset attribute** (Create). Create a local attribute or add a global attribute to a Threekit asset. The request body is a discriminated union keyed by the type field (String, Number, Boolean, Color, Asset, Array, or Global), each with its own set of type-specific fields. Returns: id, name, type, min, max, step, lockToStep, values, defaultValue. Required: asset_id, name.
- **Get single Threekit asset attribute by ID** (Get). Get a specific attribute on a Threekit asset by id. Returns the full attribute object including id, name, type, createdAt, updatedAt, orgId, createdBy, proxyType, and a nested proxy object with type-specific configuration. Required: asset_id, id.
- **Threekit asset attributes overwrite** (Action). Overwrite an attribute on a Threekit asset by asset_attribute_id. If the attribute is a global attribute, only the default value can be overridden. The request body is a discriminated union keyed by the type field. Returns: id, name, type, min, max, step, lockToStep, values, defaultValue. Required: asset_id, asset_attribute_id, name.
- **Update a Threekit asset attribute by ID** (Update). Update an attribute on a Threekit asset by id. If the attribute is a global attribute, only the default value can be overridden. The request body is a discriminated union keyed by the type field. Returns: id, name, type, min, max, step, lockToStep, values, defaultValue. Required: asset_id, id, name.
- **Delete a Threekit asset attribute by ID** (Delete). Delete an attribute from a Threekit asset by id. Returns: message. Required: asset_id, id.
- **Threekit asset attributes partial update** (Update). Partially update an attribute on a Threekit asset. If the attribute being updated is a global attribute, only the default value can be overridden. Returns: id, name, type, min, max, step, lockToStep, values, defaultValue. Required: asset_id, id.
- **Create a Threekit asset metadatum** (Create). Add a new metadata entry to a Threekit asset. Returns the created metadata entry including its id, name, type, and value. Required: asset_id, name, value.
- **Get single Threekit asset metadatum by ID** (Get). Get a metadata entry on a Threekit asset by id. Returns: id, name, type, value, openapi, info, servers, security, paths, components, x-readme. Required: asset_id, id.
- **Threekit asset metadata overwrite** (Action). Overwrite a metadata entry on a Threekit asset by metadata_id. Returns: id, name, type, value. Required: asset_id, metadata_id, name, value.
- **Update a Threekit asset metadatum by ID** (Update). Update a metadata entry on a Threekit asset by id. Returns: id, name, type, value. Required: asset_id, id, name, value.
- **Delete a Threekit asset metadatum by ID** (Delete). Delete a metadata entry on a Threekit asset by id. Returns: message. Required: asset_id, id.
- **Threekit asset metadata partial update** (Update). Partially update a metadata entry on a Threekit asset. Returns the updated metadata entry including its id, name, type, and value. Required: asset_id, id. A request body with the fields to update is required.
- **Threekit products import file** (Import). Import or update Threekit assets (products and folders) from a JSON payload. Existing assets matching the query are updated rather than duplicated. Returns: products. Required: orgId.
- **Threekit products export** (Export). Export Threekit assets from an organization as a JSON stream, optionally filtered by tags, keywords, or asset type. Returns: products. Required: format, orgId. Currently the only supported export format is JSON.
- **List all Threekit products** (List). List Threekit products from the token's organization and shared products from public organizations. Returns: id, name, description, orgId, proxyId, metadata, keywords, categories. Filter by orgId, metadata (must be stringified JSON), publicShare, name (exact match), or nameLike (fuzzy match).
- **Get single Threekit product by ID** (Get). Get a Threekit product by id. Returns: id, name, description, orgId, proxyId, sku, metadata, keywords, categories. Required: id. Only works for products in the token's organization and shared products from public organizations.
- **Get single Threekit catalog job by ID** (Get). Get a Threekit catalog job by id, including its scheduler state and output results. Returns: id, createdBy, orgId, title, schedulerState, type, createdAt, updatedAt, priority, output. Required: id.
- **Threekit catalog assets upload images** (Upload). Upload image assets to Threekit for configurator personalization. Returns an array of import job objects, each containing msg, jobId, and a nested job object with id, status, schedulerState, task progress, and file information. Required: files. Supported filetypes: .svg, .png, .jpeg, .jpg, .ai, .eps, .pdf.
- **Threekit asset jobs import** (Import). Import 3D models, images, or fonts into Threekit, creating corresponding assets. Returns: msg, jobId, job. Required: fileId, orgId. The sync parameter is not supported on this endpoint — the API will not wait for the job to finish.
- **Threekit asset jobs export** (Export). Export a Threekit asset or product to a supported 3D or image format such as fbx, gltf, usdz, step, stl, or svg. Returns: msg, jobId, job. Required: asset_id, format, title, orgId, configuration.
- **Threekit asset jobs render webgl** (Action). Render a Threekit asset or product as an image using WebGL, with optional stage and configuration. Returns: msg, jobId, job, fileId, _id, runs. Required: asset_id, orgId.
- **Threekit asset jobs render vray** (Action). Render a Threekit asset or product as an image using VRay, with optional stage, configuration, layer, and subset filtering. Returns: msg, jobId, job, fileId, _id, runs. Required: asset_id, orgId.
- **Threekit asset jobs render all combinations** (Action). Render all possible configuration combinations of a Threekit asset or product. Returns: msg, jobId, job. Required: asset_id, orgId. This API is deprecated and the maximum supported resolution is 4K.
- **Threekit asset jobs bulk composites** (Action). Create bulk composite render jobs in Threekit for all combinations of items and stages, also rendering missing layers. Returns: msg, jobId, job. Required: orgId, assets.
- **Threekit asset jobs bulk exports** (Action). Initiate bulk export jobs in Threekit for all combinations of items and stages; composition nodes are not taken into account. Returns: msg, jobId, job. Required: orgId, assets.
- **Threekit asset jobs data transfer** (Action). Initiate an org data transfer job in Threekit to migrate data between two orgs. Returns: msg, jobId, job. Required: sourceEnv, sourceOrgId, destEnv, destOrgId, destToken, migrationTargets. The clientID for both orgs must be the same.
- **Threekit asset jobs download results** (Download). Download results of a render or export job in Threekit as a zip, or extract source textures from texture assets. Results are cached by default. Returns: msg, jobId, job. Required: jobId.
- **Threekit asset jobs composite** (Action). Composite layered renders into a single image in Threekit for a specific asset (max 4K resolution). Returns: msg, jobId, job. Required: asset_id, orgId.
- **Threekit asset jobs export paths** (Export). Export the vector paths for a Threekit asset as SVG or JSON, starting an async export-paths job. Returns: msg, jobId, job. Required: asset_id.
- **List all Threekit catalog items** (List). List all Threekit catalog items, optionally filtered by archived status. Returns: id, orgId, name, label, customId, description, attributes, createdAt, createdBy, updatedAt, updatedBy, deletedAt, deletedBy. The archived and includeArchived parameters are mutually exclusive.
- **Create a Threekit catalog item** (Create). Create a new catalog item in Threekit. Returns the created item including id, orgId, name, label, customId, description, attributes, createdAt, updatedAt. Required: name.
- **Get single Threekit catalog item by ID** (Get). Get a single Threekit catalog item by its Threekit UUID or custom ID. Returns: id, orgId, name, label, customId, description, attributes, createdAt, createdBy, updatedAt, updatedBy, deletedAt, deletedBy. Required: id.
- **Update a Threekit catalog item by ID** (Update). Update a Threekit catalog item by its Threekit UUID or custom ID, including overwriting associated Attributes. Returns the updated item including id, orgId, name, label, customId, description, attributes, createdAt, updatedAt. Required: id.
- **Delete a Threekit catalog item by ID** (Delete). Delete a Threekit catalog item by its Threekit UUID or custom ID. Returns an empty 204 response on success. Required: id.
- **Threekit catalog items list attributes** (List). List all attributes associated with a Threekit catalog item, returning fully populated attribute objects (not just IDs). Returns: itemId, attributes, count. Required: item_id.
- **Threekit catalog items add attribute** (Add). Associate a new attribute to a Threekit catalog item by specifying the attribute's ID or custom ID. Returns: itemId, attribute. Required: item_id, attributeId.
- **Threekit catalog items remove attribute** (Delete). Dis-associate an attribute from a Threekit catalog item, specified by their ID or custom ID. Returns an empty 204 response on success. Required: item_id, attribute_id.
- **List all Threekit catalog attributes** (List). List Threekit catalog attributes, optionally filtering by archived status. Returns: orgId, id, name, label, customId, description, options, createdAt, createdBy, updatedAt, updatedBy, deletedAt, deletedBy. The archived and includeArchived query parameters are mutually exclusive. Max 100 per page.
- **Create a Threekit catalog attribute** (Create). Create a new Threekit catalog attribute. Returns the created attribute including id, name, label, customId, description, options, createdAt, and updatedAt. Required: name.
- **Get single Threekit catalog attribute by ID** (Get). Get a single Threekit catalog attribute by its Threekit UUID or custom ID. Returns: orgId, id, name, label, customId, description, options, createdAt, createdBy, updatedAt, updatedBy, deletedAt, deletedBy. Required: id.
- **Update a Threekit catalog attribute by ID** (Update). Update a Threekit catalog attribute by its Threekit UUID or custom ID. Passing the options array overwrites associated Option UUIDs. Returns the updated attribute including id, name, label, customId, description, options, createdAt, updatedAt. Required: id.
- **Delete a Threekit catalog attribute by ID** (Delete). Delete a Threekit catalog attribute by its Threekit UUID or custom ID. Returns an empty 204 response on success. Required: id.
- **Threekit catalog attributes list options** (List). List all fully populated options associated with a Threekit catalog attribute by its ID or custom ID. Returns: attributeId, options, count. Required: attribute_id.
- **Threekit catalog attributes add option** (Add). Associate a new option to a Threekit catalog attribute by specifying the option's Threekit UUID or custom ID. Returns: attributeId, option. Required: attribute_id, optionId.
- **Threekit catalog attributes remove option** (Delete). Dis-associate an option from a Threekit catalog attribute by specifying each entity's ID or custom ID. Returns an empty 204 response on success. Required: attribute_id, option_id.
- **List all Threekit catalog options** (List). List all Threekit catalog Options with optional filtering by archived status. Returns: orgId, id, name, label, customId, description, createdAt, createdBy, updatedAt, updatedBy, deletedAt, deletedBy. Specify only one of archived or includeArchived; they are mutually exclusive.
- **Create a Threekit catalog option** (Create). Create a new Option in the Threekit catalog. Returns: orgId, id, name, label, customId, description, createdAt, createdBy, updatedAt, updatedBy, deletedAt, deletedBy. Required: name.
- **Get single Threekit catalog option by ID** (Get). Get a single Threekit catalog Option by its id or customId. Returns: orgId, id, name, label, customId, description, createdAt, createdBy, updatedAt, updatedBy, deletedAt, deletedBy. Required: id.
- **Update a Threekit catalog option by ID** (Update). Update a Threekit catalog Option by its id or customId. Returns: orgId, id, name, label, customId, description, createdAt, createdBy, updatedAt, updatedBy, deletedAt, deletedBy. Required: id.
- **Delete a Threekit catalog option by ID** (Delete). Delete a Threekit catalog Option by its id or customId. Returns an empty 204 response on success. Required: id.
- **List all Threekit catalog variants** (List). List all variants for a Threekit catalog item by item_id. Returns: id, customId, label, itemId, configuration, orgId, createdAt, createdBy, updatedAt, updatedBy, status, metadata. Required: item_id. Supports filtering by attributeOptions, customIdLike, and status.
- **Threekit catalog variants generate** (Generate). Generate all variants for a Threekit catalog item by item_id, overwriting any invalid pre-existing variants. Returns: totalVariants. Required: item_id.
- **Get single Threekit catalog variant by ID** (Get). Get a single variant for a Threekit catalog item by item_id and id. Returns: id, customId, label, itemId, configuration, orgId, createdAt, createdBy, updatedAt, updatedBy, status, metadata. Required: item_id, id.
- **Update a Threekit catalog variant by ID** (Update). Update a variant for a Threekit catalog item by item_id and id. Returns the updated variant including id, customId, label, itemId, configuration, orgId, status, metadata, createdAt, updatedAt. Required: item_id, id.
- **List all Threekit variant prices** (List). List all prices for a Threekit catalog variant. Returns: currency, amount. Required: item_id, variant_id.
- **Get single Threekit variant price by ID** (Get). Get a specific price entry for a Threekit catalog variant by currency code. Returns: currency, amount. Required: item_id, variant_id, id (currency code).
- **Threekit variant prices upsert** (Upsert). Create or update a specific price entry for a Threekit variant by currency code. Returns: currency, amount. Required: item_id, variant_id, price_id (the three-letter ISO currency code), and amount. The amount must be between 0 and 99999999.99.
- **Delete a Threekit variant price by ID** (Delete). Delete a specific price entry for a Threekit variant by currency code. Returns an empty 204 response on success. Required: item_id, variant_id, id (the three-letter ISO currency code).
- **Threekit variant prices bulk update** (Update). Set (overwrite) all prices for a Threekit catalog variant with the provided price entries. Returns the updated prices array including currency and amount for each entry. Required: item_id, variant_id, prices.
- **List all Threekit catalog variant content** (List). List all content attached to a Threekit catalog item variant. Returns: id, orgId, variantId, name, format, fileId, contentKey, downloadUrl, createdAt, createdBy, updatedAt, updatedBy. Required: item_id, variant_id.
- **Threekit catalog variant content attach** (Action). Attach a piece of content to a Threekit catalog item variant by file ID. Returns: id, orgId, variantId, name, format, fileId, contentKey, downloadUrl, createdAt, createdBy, updatedAt, updatedBy. Required: item_id, variant_id, fileId.
- **Get single Threekit catalog variant content by ID** (Get). Get a single piece of content attached to a Threekit catalog item variant by its content key (id). Returns: id, orgId, variantId, name, format, fileId, contentKey, downloadUrl, createdAt, createdBy, updatedAt, updatedBy. Required: item_id, variant_id, id.
- **Delete a Threekit catalog variant content by ID** (Delete). Delete a piece of content from a Threekit catalog item variant by its content key (id). Returns an empty 204 response on success. Required: item_id, variant_id, id.
- **Create a Threekit PDF** (Create). Create a PDF in Threekit from a Liquid template file populated with JSON input data. Returns the generated PDF as a binary file (content-type application/pdf). Required: data, template.
- **Create a Threekit data table** (Create). Create a new Data Table in Threekit by uploading CSV content along with column definitions that tell the platform how to interpret each column. Returns: id, name, createdAt. Required: name, columnInfo, file. Supported column types are String, Number, and Asset.
- **List all Threekit jobs** (List). List Threekit jobs from the token's organization, optionally filtered by status. Returns: id, createdAt, createdBy, orgId, priority, schedulerState, status, taskCount, taskProgress, taskResultFailures, taskResultSuccesses, taskStatusPending, taskStatusRunning, taskStatusStopped, title, type, updatedAt. Max 100 entries per page.
- **List all Threekit pricebooks** (List). List pricebooks for a Threekit organization. Returns: id, orgId, name, createdBy, currencies, createdAt, deletedAt. Required: org_id.
- **Get single Threekit pricebook by ID** (Get). Get a single Threekit pricebook by id. Returns: id, orgId, name, createdBy, currencies, createdAt, deletedAt, openapi, info, servers, security, paths, components, x-readme. Required: org_id, id.
- **List all Threekit orders** (List). List Threekit orders filtered by query parameters such as orgId, shortId, originOrgId, or platform. Returns each order's id, shortId, status, createdAt, updatedAt, orgId, originOrgId, customerId, metadata, platform, items, cart, and derivative.
- **List all Threekit branches** (List). List branches in a Threekit org. Returns: name, updatedAt, updatedBy, orgId, commitHash, openapi, info, servers, paths, components, x-readme.
- **Delete a Threekit branch by ID** (Delete). Delete a branch in a Threekit org, permanently removing all its content. This action cannot be reversed. Returns: message, openapi, info, servers, paths, components, x-readme. Required: id.
- **List all Threekit tags** (List). List Threekit tags filtered by organization and optional criteria such as name, type, and archived status. Returns: id, name, type, createdAt, updatedAt, deletedAt, createdBy, orgId. Required: orgId. Max 100 per page.
- **Create a Threekit tag** (Create). Create a new Threekit tag with a name and type. Returns: id, name, type, createdAt, updatedAt, deletedAt, createdBy, orgId. Required: name, type.
- **Update a Threekit tag by ID** (Update). Update a Threekit tag by id. Returns: id, name, type, createdAt, updatedAt, deletedAt, createdBy, orgId. Required: id, orgId.
- **Get single Threekit file by ID** (Get). Get a Threekit file by its file ID. Returns: message, files, openapi, info, servers, security, paths, components, x-readme. Required: id.
