atmon docs

REFERENCE/TOOLKITS/FIGMA.MD

Figma

Design files. Read a file, its components and styles, export images, comment on a design, and watch a team's libraries.

PropertyValue
Slugfigma
Definition version0.1.0
Base URLhttps://api.figma.com
Auth schemesoauth2, api_key
Action tools49
By class38 read, 8 write, 3 destructive
Triggers0
Provider rate limitnot declared, so outbound calls are unpaced

Measured routing accuracy

57 golden cases replayed through the router over the whole index: measured over corpus ea4f12ad2948 (65 toolkits, 2283 tools indexed and 13 declared uncallable), 45 cases written by hand and 12 cases from the paraphrase pass. A case counts as top-1 when its gold tool ranked first and top-8 when it reached the slate at all.

MeasureCasesShare
top-138/5766.7%
top-853/5793.0%

4 of the 49 action tools listed above are declared uncallable, so they are indexed nowhere and answer none of these cases. The counts here are scored over the other 45.

The sweep is offline: the reranker is a deterministic identity fake that returns candidates in the order retrieval produced them, so top-1 measures retrieval order rather than a reranked slate. just eval-live measures the same cases through the live reranker.

Authentication

Connect an entity with ConnectionsService.InitiateConnection, naming this toolkit's slug. Credentials stay in the connections vault; callers hold connected-account ids only.

oauth2

PropertyValue
Authorization URLhttps://www.figma.com/oauth
Token URLhttps://api.figma.com/v1/oauth/token
Default scopescurrent_user:read, file_comments:read, file_comments:write, file_content:read, file_dev_resources:read, file_dev_resources:write, file_metadata:read, file_variables:read, file_variables:write, file_versions:read, files:read, library_analytics:read, library_assets:read, library_content:read, project_metadata:read, projects:read, team_library_content:read, webhooks:read, webhooks:write
Refresh tokensyes, the refresh daemon renews ahead of expiry

api_key

PropertyValue
Placementheader
NameX-Figma-Token
Rendered as{key}

Submit the key with ConnectionsService rather than putting it in a request; it is sealed at rest and never returned.

Tools

49 action tools. The catalog-wide slug is figma.<tool>, which is what search_tools returns and call_tool takes.

figma.get_activity_logs

Get activity logs. Returns a list of activity log events. Calls GET /v1/activity_logs.

Class read (reads only). Scopes org:activity_log_read. Calls GET /v1/activity_logs.

Arguments:

ArgumentTypeRequiredNotes
end_timenumbernoUnix timestamp of the most recent event to include. This param defaults to the current timestamp if unspecified.
eventsstringnoEvent type(s) to include in the response. Can have multiple values separated by comma. All events are returned by default.
limitnumbernoMaximum number of events to return. This param defaults to 1000 if unspecified.
orderstring, one of asc, descnoEvent order by timestamp. This param can be either "asc" (default) or "desc". Defaults to asc.
start_timenumbernoUnix timestamp of the least recent event to include. This param defaults to one year ago if unspecified.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.activity_logsarrayAn array of activity logs sorted by timestamp in ascending order by default.
meta.cursorstringEncodes the last event (the most recent event)
meta.next_pagebooleanWhether there is a next page of events
statusnumber, one of 200The response status code.

Also retrieved by: "who did what in our figma org", "audit trail of account events", "history of admin changes on the plan".

figma.get_ai_usage_daily

Get daily AI credit usage. Returns per-user, per-day AI credit usage for the plan associated with the calling token. Calls GET /v1/ai_usage/daily.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /v1/ai_usage/daily.

Arguments:

ArgumentTypeRequiredNotes
cursorstringnoAn opaque cursor returned from a previous request, used for pagination.
end_datestringyesThe last day to include, inclusive, as a YYYY-MM-DD calendar date (UTC). Required. Must be on or after start_date and the current UTC day or earlier.
limitintegernoMaximum number of rows to return. This param defaults to 1000 if unspecified, and may not exceed 1000. Defaults to 1000.
start_datestringyesThe first day to include, inclusive, as a YYYY-MM-DD calendar date (UTC). Required. Must be on or after 2025-12-01 and no more than 366 days before the current UTC day.
user_emailstringnoRestrict the results to a single Figma user, identified by email. When omitted, rows for every user in the plan with usage in the range are returned. An email that matches no Figma user returns a 400.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
has_next_pagebooleanWhether there is a next page of results to fetch.
next_cursorstringAn opaque cursor to pass as the cursor query parameter to fetch the next page. Empty when there are no more pages.
rowsarray of objectPer-user, per-day AI credit usage aggregates, ordered by day, then user, then editor_type.
rows[].daystringThe calendar date (UTC) of the aggregated usage, in YYYY-MM-DD format.
rows[].editor_typestring, one of design, figjam, slides, sites, buzz, make, not_applicableThe editor the AI action was associated with. not_applicable when the underlying AI action had no associated file.
rows[].license_group_idstringThe id of the license group the usage was attributed to, or null when the usage had no associated license group.
rows[].license_group_namestringThe name of the license group the usage was attributed to, or null when the usage had no associated license group.
rows[].metering_period_endstringThe end of the plan-scoped metering period this usage belongs to, as an RFC 3339 UTC timestamp (e.g. 2026-06-01T00:00:00Z).
rows[].metering_period_startstringThe start of the plan-scoped metering period this usage belongs to, as an RFC 3339 UTC timestamp (e.g. 2026-05-01T00:00:00Z).
rows[].plan_credits_sumintegerThe sum of plan-level (shared pool) credits consumed for this day, user, and editor type.
rows[].plan_idstringThe id of the plan the usage belongs to.
rows[].seat_credits_sumintegerThe sum of seat-level (per-user-allocated) credits consumed for this day, user, and editor type.
rows[].team_idstringThe id of the team the usage was attributed to, or null when the usage had no associated team.
rows[].team_namestringThe name of the team the usage was attributed to, or null when the usage had no associated team.
rows[].user_emailstringThe email of the Figma user that consumed the credits, or null when the user's email could not be resolved (e.g. a deleted user).
rows[].user_idstringThe id of the Figma user that consumed the credits.
rows[].workspace_idstringThe id of the workspace the usage was attributed to, or null when the usage had no associated workspace.
rows[].workspace_namestringThe name of the workspace the usage was attributed to, or null when the usage had no associated workspace.

Also retrieved by: "how many ai credits did people burn", "per person ai spend by day", "daily consumption of the plan's ai allowance".

figma.get_library_analytics_component_actions

Figma library analytics for component actions: how often people inserted or detached the components a library publishes, broken down by team or week. Calls GET /v1/analytics/libraries/{file_key}/component/actions.

Class read (reads only). Scopes library_analytics:read. Calls GET /v1/analytics/libraries/{{params.file_key}}/component/actions.

Arguments:

ArgumentTypeRequiredNotes
cursorstringnoCursor indicating what page of data to fetch. Obtained from prior API call.
end_datestringnoISO 8601 date string (YYYY-MM-DD) of the latest week to include. Dates are rounded forward to the nearest end of a week. Defaults to the latest computed week.
file_keystringyesFile key of the library to fetch analytics data for.
group_bystring, one of component, teamyesA dimension to group returned analytics data by.
start_datestringnoISO 8601 date string (YYYY-MM-DD) of the earliest week to include. Dates are rounded back to the nearest start of a week. Defaults to one year prior.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
cursorstringThe cursor to use to fetch the next page of data. Not present if next_page is false.
next_pagebooleanWhether there is a next page of data that can be fetched.
rowsarray of objectAn array of analytics data.
rows[].component_keystringUnique, stable id of the component.
rows[].component_namestringName of the component.
rows[].component_set_keystringUnique, stable id of the component set that this component belongs to.
rows[].component_set_namestringName of the component set that this component belongs to.
rows[].detachmentsnumberThe number of detach events for this period.
rows[].insertionsnumberThe number of insertion events for this period.
rows[].weekstringThe date in ISO 8601 format. e.g. 2023-12-13

Also retrieved by: "how often are our components inserted", "who is using the design system components", "component insert and detach counts by team".

figma.get_library_analytics_component_usages

Figma library analytics for component usage: which files use the components a library publishes, and how many places each one appears in. Calls GET /v1/analytics/libraries/{file_key}/component/usages.

Class read (reads only). Scopes library_analytics:read. Calls GET /v1/analytics/libraries/{{params.file_key}}/component/usages.

Arguments:

ArgumentTypeRequiredNotes
cursorstringnoCursor indicating what page of data to fetch. Obtained from prior API call.
file_keystringyesFile key of the library to fetch analytics data for.
group_bystring, one of component, fileyesA dimension to group returned analytics data by.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
cursorstringThe cursor to use to fetch the next page of data. Not present if next_page is false.
next_pagebooleanWhether there is a next page of data that can be fetched.
rowsarray of objectAn array of analytics data.
rows[].component_keystringUnique, stable id of the component.
rows[].component_namestringName of the component.
rows[].component_set_keystringUnique, stable id of the component set that this component belongs to.
rows[].component_set_namestringName of the component set that this component belongs to.
rows[].files_usingnumberThe number of files using the component within the organization.
rows[].teams_usingnumberThe number of teams using the component within the organization.
rows[].usagesnumberThe number of instances of the component within the organization.

Also retrieved by: "which files use our design system components", "where is this component actually used", "count the places a library symbol appears".

figma.get_library_analytics_style_actions

Figma library analytics for style actions: how often people applied or detached the colour and text styles a library publishes, broken down by team or week. Calls GET /v1/analytics/libraries/{file_key}/style/actions.

Class read (reads only). Scopes library_analytics:read. Calls GET /v1/analytics/libraries/{{params.file_key}}/style/actions.

Arguments:

ArgumentTypeRequiredNotes
cursorstringnoCursor indicating what page of data to fetch. Obtained from prior API call.
end_datestringnoISO 8601 date string (YYYY-MM-DD) of the latest week to include. Dates are rounded forward to the nearest end of a week. Defaults to the latest computed week.
file_keystringyesFile key of the library to fetch analytics data for.
group_bystring, one of style, teamyesA dimension to group returned analytics data by.
start_datestringnoISO 8601 date string (YYYY-MM-DD) of the earliest week to include. Dates are rounded back to the nearest start of a week. Defaults to one year prior.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
cursorstringThe cursor to use to fetch the next page of data. Not present if next_page is false.
next_pagebooleanWhether there is a next page of data that can be fetched.
rowsarray of objectAn array of analytics data.
rows[].detachmentsnumberThe number of detach events for this period.
rows[].insertionsnumberThe number of insertion events for this period.
rows[].style_keystringUnique, stable id of the style.
rows[].style_namestringThe name of the style.
rows[].style_typestringThe type of the style.
rows[].weekstringThe date in ISO 8601 format. e.g. 2023-12-13

Also retrieved by: "how often are our shared styles applied", "colour and text style adoption over time", "is anyone detaching the library styles".

figma.get_library_analytics_style_usages

Figma library analytics for style usage: which files use the colour and text styles a library publishes, and how many places each one appears in. Calls GET /v1/analytics/libraries/{file_key}/style/usages.

Class read (reads only). Scopes library_analytics:read. Calls GET /v1/analytics/libraries/{{params.file_key}}/style/usages.

Arguments:

ArgumentTypeRequiredNotes
cursorstringnoCursor indicating what page of data to fetch. Obtained from prior API call.
file_keystringyesFile key of the library to fetch analytics data for.
group_bystring, one of style, fileyesA dimension to group returned analytics data by.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
cursorstringThe cursor to use to fetch the next page of data. Not present if next_page is false.
next_pagebooleanWhether there is a next page of data that can be fetched.
rowsarray of objectAn array of analytics data.
rows[].files_usingnumberThe number of files using the style within the organization.
rows[].style_keystringUnique, stable id of the style.
rows[].style_namestringThe name of the style.
rows[].style_typestringThe type of the style.
rows[].teams_usingnumberThe number of teams using the style within the organization.
rows[].usagesnumberThe number of usages of the style within the organization.

Also retrieved by: "which files use our shared colour styles", "where is a text style actually used", "count the places a library style appears".

figma.get_library_analytics_variable_actions

Figma library analytics for variable actions: how often people applied or detached the design tokens a library publishes, broken down by team or week. Calls GET /v1/analytics/libraries/{file_key}/variable/actions.

Class read (reads only). Scopes library_analytics:read. Calls GET /v1/analytics/libraries/{{params.file_key}}/variable/actions.

Arguments:

ArgumentTypeRequiredNotes
cursorstringnoCursor indicating what page of data to fetch. Obtained from prior API call.
end_datestringnoISO 8601 date string (YYYY-MM-DD) of the latest week to include. Dates are rounded forward to the nearest end of a week. Defaults to the latest computed week.
file_keystringyesFile key of the library to fetch analytics data for.
group_bystring, one of variable, teamyesA dimension to group returned analytics data by.
start_datestringnoISO 8601 date string (YYYY-MM-DD) of the earliest week to include. Dates are rounded back to the nearest start of a week. Defaults to one year prior.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
cursorstringThe cursor to use to fetch the next page of data. Not present if next_page is false.
next_pagebooleanWhether there is a next page of data that can be fetched.
rowsarray of objectAn array of analytics data.
rows[].collection_keystringUnique, stable id of the collection the variable belongs to.
rows[].collection_namestringThe name of the collection the variable belongs to.
rows[].detachmentsnumberThe number of detach events for this period.
rows[].insertionsnumberThe number of insertion events for this period.
rows[].variable_keystringUnique, stable id of the variable.
rows[].variable_namestringThe name of the variable.
rows[].variable_typestringThe type of the variable.
rows[].weekstringThe date in ISO 8601 format. e.g. 2023-12-13

Also retrieved by: "how often are our design tokens applied", "token adoption across the org over time", "is anyone detaching the shared variables".

figma.get_library_analytics_variable_usages

Figma library analytics for variable usage: which files use the design tokens a library publishes, and how many places each one appears in. Calls GET /v1/analytics/libraries/{file_key}/variable/usages.

Class read (reads only). Scopes library_analytics:read. Calls GET /v1/analytics/libraries/{{params.file_key}}/variable/usages.

Arguments:

ArgumentTypeRequiredNotes
cursorstringnoCursor indicating what page of data to fetch. Obtained from prior API call.
file_keystringyesFile key of the library to fetch analytics data for.
group_bystring, one of variable, fileyesA dimension to group returned analytics data by.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
cursorstringThe cursor to use to fetch the next page of data. Not present if next_page is false.
next_pagebooleanWhether there is a next page of data that can be fetched.
rowsarray of objectAn array of analytics data.
rows[].collection_keystringUnique, stable id of the collection the variable belongs to.
rows[].collection_namestringThe name of the collection the variable belongs to.
rows[].files_usingnumberThe number of files using the variable within the organization.
rows[].teams_usingnumberThe number of teams using the variable within the organization.
rows[].usagesnumberThe number of usages of the variable within the organization.
rows[].variable_keystringUnique, stable id of the variable.
rows[].variable_namestringThe name of the variable.
rows[].variable_typestringThe type of the variable.

Also retrieved by: "which files use our design tokens", "where is a shared variable actually used", "count the places a token appears".

figma.get_component_set

Get one published Figma component set by its key: the variant group's metadata, which library it came from, and when it was published. Calls GET /v1/component_sets/{key}.

Class read (reads only). Scopes files:read, library_assets:read. Calls GET /v1/component_sets/{{params.key}}.

Arguments:

ArgumentTypeRequiredNotes
keystringyesThe unique identifier of the component set.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobjectA node containing a set of variants of a component.
meta.containing_frameobjectData on the frame a component resides in.
meta.created_atstring (date-time)The UTC ISO 8601 time when the component set was created.
meta.descriptionstringThe description of the component set as entered by the publisher.
meta.file_keystringThe unique identifier of the Figma file that contains the component set.
meta.keystringThe unique identifier for the component set.
meta.namestringThe name of the component set.
meta.node_idstringThe unique identifier of the component set node within the Figma file.
meta.thumbnail_urlstringA URL to a thumbnail image of the component set.
meta.updated_atstring (date-time)The UTC ISO 8601 time when the component set was last updated.
meta.userobjectA description of a user.
statusnumber, one of 200The status of the request.

Also retrieved by: "look up a published variant group", "what library does this component set come from", "metadata for one set of component variants".

figma.get_component

Get one published Figma component by its key: the symbol's metadata, which library published it, and when. Calls GET /v1/components/{key}.

Class read (reads only). Scopes files:read, library_assets:read. Calls GET /v1/components/{{params.key}}.

Arguments:

ArgumentTypeRequiredNotes
keystringyesThe unique identifier of the component.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobjectAn arrangement of published UI elements that can be instantiated across figma files.
meta.containing_frameobjectData on the frame a component resides in.
meta.created_atstring (date-time)The UTC ISO 8601 time when the component was created.
meta.descriptionstringThe description of the component as entered by the publisher.
meta.file_keystringThe unique identifier of the Figma file that contains the component.
meta.keystringThe unique identifier for the component.
meta.namestringThe name of the component.
meta.node_idstringThe unique identifier of the component node within the Figma file.
meta.thumbnail_urlstringA URL to a thumbnail image of the component.
meta.updated_atstring (date-time)The UTC ISO 8601 time when the component was last updated.
meta.userobjectA description of a user.
statusnumber, one of 200The status of the request.

Also retrieved by: "look up a published symbol by its key", "which library published this component", "metadata for one reusable element".

figma.post_dev_resources

Attach dev resources to Figma nodes: link specs, tickets, or repository URLs onto layers in bulk so engineers find them on the design. Calls POST /v1/dev_resources.

Class write (writes, no confirmation needed). Scopes file_dev_resources:write. Calls POST /v1/dev_resources.

Arguments:

ArgumentTypeRequiredNotes
dev_resourcesarray of objectyesAn array of dev resources.
dev_resources[].file_keystringyesThe file key where the dev resource belongs.
dev_resources[].namestringyesThe name of the dev resource.
dev_resources[].node_idstringyesThe target node to attach the dev resource to.
dev_resources[].urlstringyesThe URL of the dev resource.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorsarray of objectAn array of errors.
errors[].errorstringThe error message.
errors[].file_keystringThe file key.
errors[].node_idstringThe node id.
links_createdarray of objectAn array of links created.
links_created[].file_keystringThe file key where the dev resource belongs.
links_created[].idstringUnique identifier of the dev resource
links_created[].namestringThe name of the dev resource.
links_created[].node_idstringThe target node to attach the dev resource to.
links_created[].urlstringThe URL of the dev resource.

Also retrieved by: "link a ticket to a design layer", "attach github urls onto frames for engineers", "add developer links across several files".

figma.put_dev_resources

Update dev resources on Figma nodes: change the names or URLs of links already attached to layers, in bulk. Calls PUT /v1/dev_resources.

Class write (writes, no confirmation needed). Scopes file_dev_resources:write. Calls PUT /v1/dev_resources.

Arguments:

ArgumentTypeRequiredNotes
dev_resourcesarray of objectyesAn array of dev resources.
dev_resources[].idstringyesUnique identifier of the dev resource
dev_resources[].namestringnoThe name of the dev resource.
dev_resources[].urlstringnoThe URL of the dev resource.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorsarray of objectAn array of errors.
errors[].errorstringThe error message.
errors[].idstringThe id of the dev resource.
links_updatedarray of objectAn array of links updated.
links_updated[].file_keystringThe file key where the dev resource belongs.
links_updated[].idstringUnique identifier of the dev resource
links_updated[].namestringThe name of the dev resource.
links_updated[].node_idstringThe target node to attach the dev resource to.
links_updated[].urlstringThe URL of the dev resource.

Also retrieved by: "fix a broken link attached to a layer", "rename the developer links on a design", "point an attached ticket at a new url".

figma.get_developer_logs

Get developer logs. Returns a list of developer log entries for REST API and MCP server requests made within the organization. Calls POST /v1/developer_logs.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls POST /v1/developer_logs.

Arguments:

ArgumentTypeRequiredNotes
cursorstringnoA cursor returned from a previous request, used for pagination.
date_rangestring, one of last_24h, last_7d, last_30dnoFilter by date range. Defaults to last_30d.
event_sourcestring, one of rest_api, mcp_servernoFilter by event source.
ip_addressstringnoFilter by IP address prefix(es). Multiple values can be separated by commas.
limitintegernoMaximum number of entries to return. Defaults to 25.
tokenstringnoFilter by token value(s). Multiple values can be separated by commas.
token_namestringnoFilter by token name prefix(es). Multiple values can be separated by commas.
token_typestring, one of plan_access_token, developer_token, oauth_tokennoFilter by the type of token used for authentication.
user_emailstringnoFilter by user email prefix(es). Multiple values can be separated by commas.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.cursorstringA cursor for pagination. Pass this value as the cursor parameter in the next request to retrieve the next page of results. null when there are no more results.
meta.has_morebooleanWhether there are more results available after this page.
meta.itemsarrayAn array of developer log entries sorted by timestamp in descending order.
statusnumber, one of 200The response status code.

Also retrieved by: "recent api calls our integration made", "what requests hit the rest api", "troubleshoot our mcp server traffic".

figma.get_file

Read a Figma design document: its whole node tree, layers, frames, and pages. Use when someone asks for the contents or the structure of a file or mockup. Calls GET /v1/files/{file_key}.

Class read (reads only). Scopes file_content:read, files:read. Calls GET /v1/files/{{params.file_key}}.

Arguments:

ArgumentTypeRequiredNotes
branch_databooleannoReturns branch metadata for the requested file. If the file is a branch, the main file's key will be included in the returned response. If the file has branches, their metadata will be included in... Defaults to false.
depthnumbernoPositive integer representing how deep into the document tree to traverse. For example, setting this to 1 returns only Pages, setting it to 2 returns Pages and all top level objects on each page. Not...
file_keystringyesFile to export JSON from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.
geometrystringnoSet to "paths" to export vector data.
idsstringnoComma separated list of nodes that you care about in the document. If specified, only a subset of the document will be returned corresponding to the nodes listed, their children, and everything...
plugin_datastringnoA comma separated list of plugin IDs and/or the string "shared". Any data present in the document written by those plugins will be included in the result in the pluginData and sharedPluginData...
versionstringnoA specific version ID to get. Omitting this will get the current version of the file.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
branchesarray of objectA list of branches for this file.
branches[].keystringThe key of the branch.
branches[].last_modifiedstring (date-time)The UTC ISO 8601 time at which the branch was last modified.
branches[].namestringThe name of the branch.
branches[].thumbnail_urlstringA URL to a thumbnail image of the branch.
componentSetsobjectA mapping from component set IDs to component set metadata.
componentsobjectA mapping from component IDs to component metadata.
documentobject
document.boundVariablesobjectA mapping of field to the variables applied to this field. Most fields will only map to a single VariableAlias. However, for properties like fills, strokes, size, componentProperties, and...
document.childrenarray
document.componentPropertyReferencesobjectA mapping of a layer's property to component property name of component properties attached to this node. The component property name can be used to look up more information on the corresponding...
document.explicitVariableModesobjectA mapping of variable collection ID to mode ID representing the explicitly set modes for this node.
document.idstringA string uniquely identifying this node within the document.
document.isFixedbooleanWhether the layer is fixed while the parent is scrolling. Defaults to false.
document.lockedbooleanIf true, layer is locked and cannot be edited. Defaults to false.
document.namestringThe name given to the node by the user in the tool.
document.pluginDataobjectData written by plugins that is visible only to the plugin that wrote it. Requires the pluginData to include the ID of the plugin.
document.rotationnumberThe rotation of the node, if not 0. Defaults to 0.
document.scrollBehaviorstring, one of SCROLLS, FIXED, STICKY_SCROLLSHow layer should be treated when the frame is resized. Defaults to SCROLLS.
document.sharedPluginDataobjectData written by plugins that is visible to all plugins. Requires the pluginData parameter to include the string "shared".
document.typestring, one of DOCUMENT
document.visiblebooleanWhether or not the node is visible on the canvas. Defaults to true.
editorTypestring, one of figma, figjamThe type of editor associated with this file.
lastModifiedstring (date-time)The UTC ISO 8601 time at which the file was last modified.
linkAccessstringThe share permission level of the file link.
mainFileKeystringThe key of the main file for this file. If present, this file is a component or component set.
namestringThe name of the file as it appears in the editor.
rolestring, one of owner, editor, viewerThe role of the user making the API request in relation to the resource.
schemaVersionnumberThe version of the file schema that this file uses. Defaults to 0.
stylesobjectA mapping from style IDs to style metadata.
thumbnailUrlstringA URL to a thumbnail image of the file.
versionstringThe version number of the file. This number is incremented when a file is modified and can be used to check if the file has changed between requests.

Also retrieved by: "pull the full contents of a design", "read the layers and frames of a mockup", "fetch the whole document tree".

figma.get_comments

List the comments left on a Figma file: the feedback, review notes, and replies people wrote on a design or mockup. Use when someone asks what was said about a document. Calls GET /v1/files/{file_key}/comments.

Class read (reads only). Scopes file_comments:read, files:read. Calls GET /v1/files/{{params.file_key}}/comments.

Arguments:

ArgumentTypeRequiredNotes
as_mdbooleannoIf enabled, will return comments as their markdown equivalents when applicable.
file_keystringyesFile to get comments from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
commentsarray of objectAn array of comments.
comments[].client_metaobjectPositioning information of the comment. Includes information on the location of the comment pin, which is either the absolute coordinates on the canvas or a relative offset within a frame. If the...
comments[].created_atstring (date-time)The UTC ISO 8601 time at which the comment was left
comments[].file_keystringThe file in which the comment lives
comments[].idstringUnique identifier for comment.
comments[].messagestringThe content of the comment
comments[].order_idstringOnly set for top level comments. The number displayed with the comment in the UI
comments[].parent_idstringIf present, the id of the comment to which this is the reply
comments[].reactionsarrayAn array of reactions to the comment
comments[].resolved_atstring (date-time)If set, the UTC ISO 8601 time the comment was resolved
comments[].userobjectA description of a user.

Also retrieved by: "see the feedback left on a design", "read the notes people wrote on a mockup", "who said what on this document".

figma.post_comment

Leave a comment on a Figma file: feedback, a review note, or a reply for the designer on a mockup. Use when someone wants to write a note on a design. Calls POST /v1/files/{file_key}/comments.

Class write (writes, no confirmation needed). Scopes file_comments:write. Calls POST /v1/files/{{params.file_key}}/comments.

Arguments:

ArgumentTypeRequiredNotes
client_metaobjectnoThe position where to place the comment.
client_meta.xnumberyesX coordinate of the vector.
client_meta.ynumberyesY coordinate of the vector.
comment_idstringnoThe ID of the comment to reply to, if any. This must be a root comment. You cannot reply to other replies (a comment that has a parent_id).
file_keystringyesFile to add comments in. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.
messagestringyesThe text contents of the comment to post.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
client_metaobjectPositioning information of the comment. Includes information on the location of the comment pin, which is either the absolute coordinates on the canvas or a relative offset within a frame. If the...
client_meta.xnumberX coordinate of the vector.
client_meta.ynumberY coordinate of the vector.
created_atstring (date-time)The UTC ISO 8601 time at which the comment was left
file_keystringThe file in which the comment lives
idstringUnique identifier for comment.
messagestringThe content of the comment
order_idstringOnly set for top level comments. The number displayed with the comment in the UI
parent_idstringIf present, the id of the comment to which this is the reply
reactionsarray of objectAn array of reactions to the comment
reactions[].created_atstring (date-time)The UTC ISO 8601 time at which the reaction was left.
reactions[].emojistringThe emoji type of reaction as shortcode (e.g. :heart:, :+1::skin-tone-2:). The list of accepted emoji shortcodes can be found in [this...
reactions[].userobjectA description of a user.
resolved_atstring (date-time)If set, the UTC ISO 8601 time the comment was resolved
userobjectA description of a user.
user.handlestringName of the user.
user.idstringUnique stable id of the user.
user.img_urlstringURL link to the user's profile image.

Also retrieved by: "leave feedback on a mockup", "write a note for the designer", "reply on the design with a suggestion".

figma.delete_comment

Delete a comment on a Figma file: remove a piece of feedback or a review note someone left on a design. Calls DELETE /v1/files/{file_key}/comments/{comment_id}.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). Scopes file_comments:write. Calls DELETE /v1/files/{{params.file_key}}/comments/{{params.comment_id}}.

Arguments:

ArgumentTypeRequiredNotes
comment_idstringyesComment id of comment to delete
file_keystringyesFile to delete comment from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
statusnumber, one of 200The status of the request.

Also retrieved by: "remove feedback left on a design", "take a review note off a mockup", "clear a resolved remark from a file".

figma.get_comment_reactions

List the reactions on a Figma comment: the emoji people left on one piece of feedback, and who left them. Calls GET /v1/files/{file_key}/comments/{comment_id}/reactions.

Class read (reads only). Scopes file_comments:read, files:read. Calls GET /v1/files/{{params.file_key}}/comments/{{params.comment_id}}/reactions.

Arguments:

ArgumentTypeRequiredNotes
comment_idstringyesID of comment to get reactions from.
cursorstringnoCursor for pagination, retrieved from the response of the previous call.
file_keystringyesFile to get comment containing reactions from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
paginationobjectIf pagination is needed due to the length of the response, identifies the next and previous pages.
pagination.next_pagestringA URL that calls the next page of the response.
pagination.prev_pagestringA URL that calls the previous page of the response.
reactionsarray of objectAn array of reactions.
reactions[].created_atstring (date-time)The UTC ISO 8601 time at which the reaction was left.
reactions[].emojistringThe emoji type of reaction as shortcode (e.g. :heart:, :+1::skin-tone-2:). The list of accepted emoji shortcodes can be found in [this...
reactions[].userobjectA description of a user.

Also retrieved by: "who reacted to this piece of feedback", "show the emoji left on a comment", "see the thumbs up on a review note".

figma.post_comment_reaction

React to a Figma comment: leave an emoji on someone's feedback to acknowledge or agree with it. Calls POST /v1/files/{file_key}/comments/{comment_id}/reactions.

Class write (writes, no confirmation needed). Scopes file_comments:write. Calls POST /v1/files/{{params.file_key}}/comments/{{params.comment_id}}/reactions.

Arguments:

ArgumentTypeRequiredNotes
comment_idstringyesID of comment to react to.
emojistringyesThe emoji type of reaction as shortcode (e.g. :heart:, :+1::skin-tone-2:). The list of accepted emoji shortcodes can be found in [this...
file_keystringyesFile to post comment reactions to. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
statusnumber, one of 200The status of the request.

Also retrieved by: "leave an emoji on someone's feedback", "thumbs up a review note", "acknowledge a comment with a reaction".

figma.delete_comment_reaction

Remove a reaction from a Figma comment: take back the emoji left on a piece of feedback. Calls DELETE /v1/files/{file_key}/comments/{comment_id}/reactions.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). Scopes file_comments:write. Calls DELETE /v1/files/{{params.file_key}}/comments/{{params.comment_id}}/reactions.

Arguments:

ArgumentTypeRequiredNotes
comment_idstringyesID of comment to delete reaction from.
emojistringyesThe emoji type of reaction as shortcode (e.g. :heart:, :+1::skin-tone-2:). The list of accepted emoji shortcodes can be found in [this...
file_keystringyesFile to delete comment reaction from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
statusnumber, one of 200The status of the request.

Also retrieved by: "take back an emoji from a comment", "undo my reaction on some feedback", "remove a thumbs up from a review note".

figma.get_file_component_sets

List the component sets a Figma file publishes: the variant groups defined in that library, with their names and keys. Calls GET /v1/files/{file_key}/component_sets.

Class read (reads only). Scopes files:read, library_content:read. Calls GET /v1/files/{{params.file_key}}/component_sets.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesFile to list component sets from. This must be a main file key, not a branch key, as it is not possible to publish from branches.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.component_setsarray
statusnumber, one of 200The status of the request.

Also retrieved by: "what variant groups does this library publish", "list the component sets defined in a file", "show the variants available from a design library".

figma.get_file_components

List the components a Figma file defines: the reusable symbols, building blocks, and elements published from that document. Calls GET /v1/files/{file_key}/components.

Class read (reads only). Scopes files:read, library_content:read. Calls GET /v1/files/{{params.file_key}}/components.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesFile to list components from. This must be a main file key, not a branch key, as it is not possible to publish from branches.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.componentsarray
statusnumber, one of 200The status of the request.

Also retrieved by: "list the symbols inside a mockup", "browse the building blocks of a design", "which reusable pieces does this document have".

figma.get_dev_resources

List the dev resources attached to a Figma file: the specs, tickets, and repository links engineers put on its layers. Calls GET /v1/files/{file_key}/dev_resources.

Class read (reads only). Scopes file_dev_resources:read. Calls GET /v1/files/{{params.file_key}}/dev_resources.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesThe file to get the dev resources from. This must be a main file key, not a branch key.
node_idsstringnoComma separated list of nodes that you care about in the document. If specified, only dev resources attached to these nodes will be returned. If not specified, all dev resources in the file will be...

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
dev_resourcesarray of objectAn array of dev resources.
dev_resources[].file_keystringThe file key where the dev resource belongs.
dev_resources[].idstringUnique identifier of the dev resource
dev_resources[].namestringThe name of the dev resource.
dev_resources[].node_idstringThe target node to attach the dev resource to.
dev_resources[].urlstringThe URL of the dev resource.

Also retrieved by: "what tickets are linked to this design", "show the engineering links on a file", "find the repo urls attached to layers".

figma.get_image_fills

Get download links for the images placed inside a Figma file: the photos and bitmaps used as fills on its layers. Calls GET /v1/files/{file_key}/images.

Class read (reads only). Scopes file_content:read, files:read. Calls GET /v1/files/{{params.file_key}}/images.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesFile to get image URLs from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.imagesobjectA map of image references to URLs of the image fills.
statusnumber, one of 200Status code

Also retrieved by: "download the photos placed in a design", "links to the bitmaps used as fills", "get the raw images inside a file".

figma.get_file_meta

Get a Figma file's metadata: its name, owner, last edit time, and which project it sits in, without loading the document itself. Calls GET /v1/files/{file_key}/meta.

Class read (reads only). Scopes file_metadata:read, files:read. Calls GET /v1/files/{{params.file_key}}/meta.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesFile to get metadata for. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
fileobjectThe file metadata.
file.creatorobjectA description of a user.
file.editorTypestring, one of figma, figjam, slides, buzz, sites, makeThe type of editor associated with this file.
file.folder_namestringThe name of the project containing the file.
file.last_touched_atstring (date-time)The UTC ISO 8601 time at which the file content was last modified.
file.last_touched_byobjectA description of a user.
file.link_accessstring, one of view, edit, org_view, org_edit, inheritAccess policy for users who have the link to the resource.
file.namestringThe name of the file.
file.rolestring, one of owner, editor, viewerThe role of the user making the API request in relation to the resource.
file.thumbnail_urlstringA URL to a thumbnail image of the file.
file.urlstringThe URL of the file.
file.versionstringThe version number of the file. This number is incremented when a file is modified and can be used to check if the file has changed between requests.

Also retrieved by: "who owns this design and when was it edited", "basic details about a file without opening it", "what project does a mockup live in".

figma.get_file_nodes

Get specific nodes of a Figma file as JSON: just the frames or layers named by id, instead of the whole document. Calls GET /v1/files/{file_key}/nodes.

Class read (reads only). Scopes file_content:read, files:read. Calls GET /v1/files/{{params.file_key}}/nodes.

Arguments:

ArgumentTypeRequiredNotes
depthnumbernoPositive integer representing how deep into the node tree to traverse. For example, setting this to 1 will return only the children directly underneath the desired nodes. Not setting this parameter...
file_keystringyesFile to export JSON from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.
geometrystringnoSet to "paths" to export vector data.
idsstringyesA comma separated list of node IDs to retrieve and convert.
plugin_datastringnoA comma separated list of plugin IDs and/or the string "shared". Any data present in the document written by those plugins will be included in the result in the pluginData and sharedPluginData...
versionstringnoA specific version ID to get. Omitting this will get the current version of the file.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
editorTypestring, one of figma, figjamThe type of editor associated with this file.
lastModifiedstring (date-time)The UTC ISO 8601 time at which the file was last modified.
namestringThe name of the file as it appears in the editor.
nodesobjectA mapping from node IDs to node metadata.
rolestring, one of owner, editor, viewerThe role of the user making the API request in relation to the resource.
thumbnailUrlstringA URL to a thumbnail image of the file.
versionstringThe version number of the file. This number is incremented when a file is modified and can be used to check if the file has changed between requests.

Also retrieved by: "read just one frame of a design", "fetch a couple of layers by id", "pull part of a document instead of all of it".

figma.get_file_styles

List the styles a Figma file publishes: the colour, text, and effect styles defined in that library. Calls GET /v1/files/{file_key}/styles.

Class read (reads only). Scopes files:read, library_content:read. Calls GET /v1/files/{{params.file_key}}/styles.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesFile to list styles from. This must be a main file key, not a branch key, as it is not possible to publish from branches.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.stylesarray
statusnumber, one of 200The status of the request.

Also retrieved by: "what colour styles does this library publish", "list the text styles defined in a file", "show the shared effects a design exposes".

figma.post_variables

Create, change, or delete Figma variables in a file: bulk edit the design tokens and their collections in one call. Enterprise editors only. Calls POST /v1/files/{file_key}/variables.

Class write (writes, no confirmation needed). Scopes file_variables:write. Calls POST /v1/files/{{params.file_key}}/variables.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesFile to modify variables in. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.
variableCollectionsarray of objectnoFor creating, updating, and deleting variable collections.
variableCollections[].actionstring, one of CREATEyesThe action to perform for the variable collection.
variableCollections[].hiddenFromPublishingbooleannoWhether this variable collection is hidden when publishing the current file as a library. Defaults to false.
variableCollections[].idstringnoA temporary id for this variable collection.
variableCollections[].initialModeIdstringnoThe initial mode refers to the mode that is created by default. You can set a temporary id here, in order to reference this mode later in this request.
variableCollections[].initialModeIdToParentModeIdMappingobjectnoMaps inherited modes from the parent variable collection to the initial mode ids on the extended variable collection.
variableCollections[].namestringyesThe name of this variable collection.
variableCollections[].parentVariableCollectionIdstringnoThe id of the parent variable collection that this variable collection is extending from.
variableModeValuesarray of objectnoFor setting a specific value, given a variable and a mode.
variableModeValues[].modeIdstringyesMust correspond to a mode in the variable collection that contains the target variable.
variableModeValues[].valuebooleanyesThe value for the variable. The value must match the variable's type. If setting to a variable alias, the alias must resolve to this type. If overriding a value, the value type must match the...
variableModeValues[].variableIdstringyesThe target variable. You can use the temporary id of a variable.
variableModesarray of objectnoFor creating, updating, and deleting modes within variable collections.
variableModes[].actionstring, one of CREATEyesThe action to perform for the variable mode.
variableModes[].idstringnoA temporary id for this variable mode.
variableModes[].namestringyesThe name of this variable mode.
variableModes[].variableCollectionIdstringyesThe variable collection that will contain the mode. You can use the temporary id of a variable collection. New modes cannot be created on extended collections.
variablesarray of objectnoFor creating, updating, and deleting variables.
variables[].actionstring, one of CREATEyesThe action to perform for the variable.
variables[].codeSyntaxobjectnoAn object containing platform-specific code syntax definitions for a variable. All platforms are optional.
variables[].descriptionstringnoThe description of this variable.
variables[].hiddenFromPublishingbooleannoWhether this variable is hidden when publishing the current file as a library. Defaults to false.
variables[].idstringnoA temporary id for this variable.
variables[].namestringyesThe name of this variable.
variables[].resolvedTypestring, one of BOOLEAN, FLOAT, STRING, COLORyesDefines the types of data a VariableData object can eventually equal
variables[].scopesarraynoAn array of scopes in the UI where this variable is shown. Setting this property will show/hide this variable in the variable picker UI for different fields.
variables[].variableCollectionIdstringyesThe variable collection that will contain the variable. You can use the temporary id of a variable collection.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.tempIdToRealIdobjectA map of temporary ids in the request to the real ids of the newly created objects
statusnumber, one of 200The response status code.

Also retrieved by: "bulk edit the design tokens in a file", "add a collection of variables at once", "change token values across a document".

figma.get_local_variables

List the variables defined inside a Figma file: the design tokens and their values for colour, spacing, and text. Calls GET /v1/files/{file_key}/variables/local.

Class read (reads only). Scopes file_variables:read. Calls GET /v1/files/{{params.file_key}}/variables/local.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesFile to get variables from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.variableCollectionsobjectA map of variable collection ids to variable collections
meta.variablesobjectA map of variable ids to variables
statusnumber, one of 200The response status code.

Also retrieved by: "what tokens does a mockup define", "list the design tokens of a document", "browse the token values in this design".

figma.get_published_variables

List the variables a Figma file publishes: the design tokens other files can subscribe to from this library. Enterprise members only. Calls GET /v1/files/{file_key}/variables/published.

Class read (reads only). Scopes file_variables:read. Calls GET /v1/files/{{params.file_key}}/variables/published.

Arguments:

ArgumentTypeRequiredNotes
file_keystringyesFile to get variables from. This must be a main file key, not a branch key, as it is not possible to publish from branches.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.variableCollectionsobjectA map of variable collection ids to variable collections
meta.variablesobjectA map of variable ids to variables
statusnumber, one of 200The response status code.

Also retrieved by: "what design tokens does this library expose", "which variables can other files subscribe to", "list the published token collections".

figma.get_file_versions

List a Figma file's version history: the past snapshots of a design, what changed and when, and who edited it. Calls GET /v1/files/{file_key}/versions.

Class read (reads only). Scopes file_versions:read, files:read. Calls GET /v1/files/{{params.file_key}}/versions.

Arguments:

ArgumentTypeRequiredNotes
afternumbernoA version ID for one of the versions in the history. Gets versions after this ID. Used for paginating. If the response is not paginated, this property is not included.
beforenumbernoA version ID for one of the versions in the history. Gets versions before this ID. Used for paginating. If the response is not paginated, this link returns the same data in the current response.
file_keystringyesFile to get version history from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.
page_sizenumbernoThe number of items returned in a page of the response. If not included, page_size is 30.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
paginationobjectIf pagination is needed due to the length of the response, identifies the next and previous pages.
pagination.next_pagestringA URL that calls the next page of the response.
pagination.prev_pagestringA URL that calls the previous page of the response.
versionsarray of objectAn array of versions.
versions[].created_atstring (date-time)The UTC ISO 8601 time at which the version was created
versions[].descriptionstringThe description of the version as entered in the editor
versions[].idstringUnique identifier for version
versions[].labelstringThe label given to the version in the editor
versions[].thumbnail_urlstringA URL to a thumbnail image of the file version.
versions[].userobjectA description of a user.

Also retrieved by: "what changed and when on this document", "list past snapshots of a mockup", "who edited this design and when".

figma.get_images

Render frames or nodes of a Figma file as images: export a picture, png, svg, or pdf of a design. Use for thumbnails and screenshots of artboards. Calls GET /v1/images/{file_key}.

Class read (reads only). Scopes file_content:read, files:read. Calls GET /v1/images/{{params.file_key}}.

Arguments:

ArgumentTypeRequiredNotes
contents_onlybooleannoWhether content that overlaps the node should be excluded from rendering. Passing false (i.e., rendering overlaps) may increase processing time, since more of the document must be included in... Defaults to true.
file_keystringyesFile to export images from. This can be a file key or branch key. Use GET /v1/files/:key with the branch_data query param to get the branch key.
formatstring, one of jpg, png, svg, pdfnoA string enum for the image output format. Defaults to png.
idsstringyesA comma separated list of node IDs to render.
scalenumbernoA number between 0.01 and 4, the image scaling factor.
svg_include_idbooleannoWhether to include id attributes for all SVG elements. Adds the layer name to the id attribute of an svg element. Defaults to false.
svg_include_node_idbooleannoWhether to include node id attributes for all SVG elements. Adds the node id to a data-node-id attribute of an svg element. Defaults to false.
svg_outline_textbooleannoWhether text elements are rendered as outlines (vector paths) or as <text> elements in SVGs. Rendering text elements as outlines guarantees that the text looks exactly the same in the SVG as it... Defaults to true.
svg_simplify_strokebooleannoWhether to simplify inside/outside strokes and use stroke attribute if possible instead of <mask>. Defaults to true.
use_absolute_boundsbooleannoUse the full dimensions of the node regardless of whether or not it is cropped or the space around it is empty. Use this to export text nodes without cropping. Defaults to false.
versionstringnoA specific version ID to get. Omitting this will get the current version of the file.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errnullFor successful requests, this value is always null.
imagesobjectA map from node IDs to URLs of the rendered images.

Also retrieved by: "export frames as png or svg", "render a picture of a node", "make thumbnails of the artboards".

figma.get_me

Show the signed-in Figma user: the account whose token is connected, with name, email, and profile image. Use for who-am-I questions and to check which account is in use. Calls GET /v1/me.

Class read (reads only). Scopes current_user:read, files:read. Calls GET /v1/me.

Takes no arguments.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
emailstringEmail associated with the user's account. This property is only present on the /v1/me endpoint.
handlestringName of the user.
idstringUnique stable id of the user.
img_urlstringURL link to the user's profile image.

Also retrieved by: "which account is connected", "who am i on this workspace", "show my own profile details".

figma.get_o_embed

Get oEmbed data for a Figma link: the title, thumbnail, and embed HTML another site needs to render a preview card of a file. Calls GET /v1/oembed.

Class read (reads only). Scopes file_metadata:read. Calls GET /v1/oembed.

Arguments:

ArgumentTypeRequiredNotes
maxheightintegernoMaximum height of the embed in pixels. Defaults to 450. The response height will be adjusted to maintain a 16:9 aspect ratio with maxwidth. Defaults to 450.
maxwidthintegernoMaximum width of the embed in pixels. Defaults to 800. The response width will be adjusted to maintain a 16:9 aspect ratio with maxheight. Defaults to 800.
urlstringyesThe URL of the Figma file or published Make site to retrieve oEmbed data for.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
cache_ageintegerSuggested cache lifetime for this response in seconds. Always 3600.
folder_namestringThe name of the folder containing the file, if the file resides in a folder.
heightintegerHeight of the embed in pixels.
htmlstringThe HTML for embedding the file. Contains an iframe pointing to the Figma embed URL.
is_published_sitebooleanOnly present and "true" when the resource is a published Make.
keystringThe key of the Figma file. Not present for published Makes
provider_namestringThe name of the content provider. Always "Figma" or "Make".
provider_urlstringThe URL of the content provider's website. Always "https://www.figma.com".
thumbnail_heightintegerHeight of the thumbnail image in pixels.
thumbnail_urlstringURL of a thumbnail image for the file.
thumbnail_widthintegerWidth of the thumbnail image in pixels.
titlestringThe title of the Figma file or published Make site.
typestringThe oEmbed response type. Always "rich".
urlstringThe canonical URL of the resource.
versionstringThe oEmbed specification version. Always "1.0".
widthintegerWidth of the embed in pixels.

Also retrieved by: "preview card data for a figma link", "title and thumbnail for embedding a design", "what a site needs to render a figma url".

figma.get_payments

Get payments. There are two methods to query for a user's payment information on a plugin, widget, or Community file. Calls GET /v1/payments.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /v1/payments.

Arguments:

ArgumentTypeRequiredNotes
community_file_idstringnoThe ID of the Community file to query a user's payment information on. You can get the Community file ID from the file's Community page (look for the number after "file/" in the URL). Provide exactly...
plugin_idstringnoThe ID of the plugin to query a user's payment information on. You can get the plugin ID from the plugin's manifest, or from the plugin's Community page (look for the number after "plugin/" in the...
plugin_payment_tokenstringnoShort-lived token returned from "getPluginPaymentTokenAsync" in the plugin payments API and used to authenticate to this endpoint. Read more about generating this token through "Calling the Payments...
user_idstringnoThe ID of the user to query payment information about. You can get the user ID by having the user OAuth2 to the Figma REST API.
widget_idstringnoThe ID of the widget to query a user's payment information on. You can get the widget ID from the widget's manifest, or from the widget's Community page (look for the number after "widget/" in the...

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobjectAn object describing a user's payment information for a plugin, widget, or Community file.
meta.date_of_purchasestring (date-time)The UTC ISO 8601 timestamp indicating when the user purchased the resource. No value is given if the user has never purchased the resource. Note that a value will still be returned if the user had...
meta.payment_statusobjectAn object describing the user's payment status.
meta.resource_idstringThe ID of the plugin, widget, or Community file that was queried. Can be used to verify the validity of a response.
meta.resource_typestring, one of PLUGIN, WIDGET, COMMUNITY_FILEThe type of the resource.
meta.user_idstringThe ID of the user whose payment information was queried. Can be used to verify the validity of a response.
statusnumber, one of 200The response status code.

Also retrieved by: "look up payments", "check payments", "pull up payments".

figma.get_project_files

List the files in a Figma project: every document in that folder, with names and last-modified times. Calls GET /v1/projects/{project_id}/files.

Class read (reads only). Scopes files:read, projects:read. Calls GET /v1/projects/{{params.project_id}}/files.

Arguments:

ArgumentTypeRequiredNotes
branch_databooleannoReturns branch metadata in the response for each main file with a branch inside the project. Defaults to false.
project_idstringyesID of the project to list files from

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
filesarray of objectAn array of files.
files[].keystringThe file's key.
files[].last_modifiedstring (date-time)The UTC ISO 8601 time at which the file was last modified.
files[].namestringThe file's name.
files[].thumbnail_urlstringThe file's thumbnail URL.
namestringThe project's name.

Also retrieved by: "what designs live in this folder", "list every document in a project", "show the mockups a team keeps together".

figma.get_project_meta

Get a Figma project's metadata: the folder's name and the team it belongs to. Calls GET /v1/projects/{project_id}/meta.

Class read (reads only). Scopes project_metadata:read. Calls GET /v1/projects/{{params.project_id}}/meta.

Arguments:

ArgumentTypeRequiredNotes
project_idstringyesID of the project to get metadata for.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
created_atstring (date-time)The UTC ISO 8601 time at which the project was created.
file_countintegerThe number of files in the project.
idstringThe unique identifier of the project.
namestringThe name of the project.
thumbnail_urlstringA URL to a thumbnail image of the project. May be null if the project has no files.
updated_atstring (date-time)The UTC ISO 8601 time at which the project was last updated.

Also retrieved by: "which team owns this folder", "name and owner of a design project", "basic details about a figma folder".

figma.get_style

Get one published Figma style by its key: the colour, text, or effect definition and which library it came from. Calls GET /v1/styles/{key}.

Class read (reads only). Scopes files:read, library_assets:read. Calls GET /v1/styles/{{params.key}}.

Arguments:

ArgumentTypeRequiredNotes
keystringyesThe unique identifier of the style.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobjectA set of published properties that can be applied to nodes.
meta.created_atstring (date-time)The UTC ISO 8601 time when the style was created.
meta.descriptionstringThe description of the style as entered by the publisher.
meta.file_keystringThe unique identifier of the Figma file that contains the style.
meta.keystringThe unique identifier for the style
meta.namestringThe name of the style.
meta.node_idstringID of the style node within the figma file
meta.sort_positionstringA user specified order number by which the style can be sorted.
meta.style_typestring, one of FILL, TEXT, EFFECT, GRIDThe type of style
meta.thumbnail_urlstringA URL to a thumbnail image of the style.
meta.updated_atstring (date-time)The UTC ISO 8601 time when the style was last updated.
meta.userobjectA description of a user.
statusnumber, one of 200The status of the request.

Also retrieved by: "look up a published colour definition", "which library does this text style come from", "details of one shared effect".

figma.get_team_component_sets

List the component sets a Figma team publishes: the variant groups across every library the team owns. Calls GET /v1/teams/{team_id}/component_sets.

Class read (reads only). Scopes files:read, team_library_content:read. Calls GET /v1/teams/{{params.team_id}}/component_sets.

Arguments:

ArgumentTypeRequiredNotes
afternumbernoCursor indicating which id after which to start retrieving component sets for. Exclusive with before. The cursor value is an internally tracked integer that doesn't correspond to any Ids.
beforenumbernoCursor indicating which id before which to start retrieving component sets for. Exclusive with after. The cursor value is an internally tracked integer that doesn't correspond to any Ids.
page_sizenumbernoNumber of items to return in a paged list of results. Defaults to 30. Defaults to 30.
team_idstringyesId of the team to list component sets from.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.component_setsarray
meta.cursorobjectPagination cursor
statusnumber, one of 200The status of the request.

Also retrieved by: "what variant groups does the team publish", "component sets across all our libraries", "variants available to everyone on a team".

figma.get_team_components

List the components a Figma team publishes: the reusable symbols across every library the team owns. Calls GET /v1/teams/{team_id}/components.

Class read (reads only). Scopes files:read, team_library_content:read. Calls GET /v1/teams/{{params.team_id}}/components.

Arguments:

ArgumentTypeRequiredNotes
afternumbernoCursor indicating which id after which to start retrieving components for. Exclusive with before. The cursor value is an internally tracked integer that doesn't correspond to any Ids.
beforenumbernoCursor indicating which id before which to start retrieving components for. Exclusive with after. The cursor value is an internally tracked integer that doesn't correspond to any Ids.
page_sizenumbernoNumber of items to return in a paged list of results. Defaults to 30. Maximum of 1000. Defaults to 30.
team_idstringyesId of the team to list components from.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.componentsarray
meta.cursorobjectPagination cursor
statusnumber, one of 200The status of the request.

Also retrieved by: "what symbols does the whole team publish", "reusable elements across all our libraries", "components available to everyone on a team".

figma.get_team_projects

List the projects a Figma team owns: the work a group tracks in its workspace. Use when someone asks what a team or group is working on. Calls GET /v1/teams/{team_id}/projects.

Class read (reads only). Scopes files:read, projects:read. Calls GET /v1/teams/{{params.team_id}}/projects.

Arguments:

ArgumentTypeRequiredNotes
team_idstringyesID of the team to list projects from

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
namestringThe team's name.
projectsarray of objectAn array of projects.
projects[].idstringThe ID of the project.
projects[].namestringThe name of the project.

Also retrieved by: "what is my group working on", "browse the work a group owns", "list the boards my group keeps".

figma.get_team_styles

List a Figma team's published styles: the shared colour, text, and effect presets a group publishes for reuse. Calls GET /v1/teams/{team_id}/styles.

Class read (reads only). Scopes files:read, team_library_content:read. Calls GET /v1/teams/{{params.team_id}}/styles.

Arguments:

ArgumentTypeRequiredNotes
afternumbernoCursor indicating which id after which to start retrieving styles for. Exclusive with before. The cursor value is an internally tracked integer that doesn't correspond to any Ids.
beforenumbernoCursor indicating which id before which to start retrieving styles for. Exclusive with after. The cursor value is an internally tracked integer that doesn't correspond to any Ids.
page_sizenumbernoNumber of items to return in a paged list of results. Defaults to 30. Defaults to 30.
team_idstringyesId of the team to list styles from.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
errorboolean, one of falseFor successful requests, this value is always false.
metaobject
meta.cursorobjectPagination cursor
meta.stylesarray
statusnumber, one of 200The status of the request.

Also retrieved by: "which shared colour and text presets exist", "browse the presets my group publishes", "list reusable colour definitions".

figma.get_team_webhooks

List the webhooks registered on a Figma team, through the deprecated team-scoped endpoint: the event callbacks that team set up. Calls GET /v2/teams/{team_id}/webhooks.

Class read (reads only). Scopes files:read, webhooks:read. Calls GET /v2/teams/{{params.team_id}}/webhooks.

Arguments:

ArgumentTypeRequiredNotes
team_idstringyesID of team to get webhooks for

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
webhooksarray of objectAn array of webhooks.
webhooks[].client_idstringThe client ID of the OAuth application that registered this webhook, if any
webhooks[].contextstringThe type of context this webhook is attached to. The value will be "PROJECT", "TEAM", or "FILE"
webhooks[].context_idstringThe ID of the context this webhook is attached to
webhooks[].descriptionstringOptional user-provided description or name for the webhook. This is provided to help make maintaining a number of webhooks more convenient. Max length 140 characters.
webhooks[].endpointstringThe endpoint that will be hit when the webhook is triggered
webhooks[].event_typestring, one of PING, FILE_UPDATE, FILE_VERSION_UPDATE, FILE_DELETE, LIBRARY_PUBLISH, FILE_COMMENT, DEV_MODE_STATUS_UPDATEAn enum representing the possible events that a webhook can subscribe to
webhooks[].idstringThe ID of the webhook
webhooks[].passcodestringThe passcode that will be passed back to the webhook endpoint. For security, when using the GET endpoints, the value is an empty string
webhooks[].plan_api_idstringThe plan API ID of the team or organization where this webhook was created
webhooks[].statusstring, one of ACTIVE, PAUSEDAn enum representing the possible statuses you can set a webhook to: - ACTIVE: The webhook is healthy and receive all events - PAUSED: The webhook is paused and will not receive any events
webhooks[].team_idstringThe team id you are subscribed to for updates. This is deprecated, use context and context_id instead

Also retrieved by: "what event callbacks does this team have", "webhooks registered under one team, old endpoint", "list a team's subscriptions the deprecated way".

figma.get_webhooks

List Figma webhooks by context: the event callbacks registered for a team, project, or file, and where each one posts. Calls GET /v2/webhooks.

Class read (reads only). Scopes webhooks:read. Calls GET /v2/webhooks.

Arguments:

ArgumentTypeRequiredNotes
contextstringnoContext to create the resource on. Should be "team", "project", or "file".
context_idstringnoThe id of the context that you want to get attached webhooks for. If you're using context_id, you cannot use plan_api_id.
cursorstringnoIf you're using plan_api_id, this is the cursor to use for pagination. If you're using context or context_id, this parameter is ignored. Provide the next_page or prev_page value from the previous...
plan_api_idstringnoThe id of your plan. Use this to get all webhooks for all contexts you have access to. If you're using plan_api_id, you cannot use context or context_id. When you use plan_api_id, the response is...

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
paginationobjectIf pagination is needed due to the length of the response, identifies the next and previous pages.
pagination.next_pagestringA URL that calls the next page of the response.
pagination.prev_pagestringA URL that calls the previous page of the response.
webhooksarray of objectAn array of webhooks.
webhooks[].client_idstringThe client ID of the OAuth application that registered this webhook, if any
webhooks[].contextstringThe type of context this webhook is attached to. The value will be "PROJECT", "TEAM", or "FILE"
webhooks[].context_idstringThe ID of the context this webhook is attached to
webhooks[].descriptionstringOptional user-provided description or name for the webhook. This is provided to help make maintaining a number of webhooks more convenient. Max length 140 characters.
webhooks[].endpointstringThe endpoint that will be hit when the webhook is triggered
webhooks[].event_typestring, one of PING, FILE_UPDATE, FILE_VERSION_UPDATE, FILE_DELETE, LIBRARY_PUBLISH, FILE_COMMENT, DEV_MODE_STATUS_UPDATEAn enum representing the possible events that a webhook can subscribe to
webhooks[].idstringThe ID of the webhook
webhooks[].passcodestringThe passcode that will be passed back to the webhook endpoint. For security, when using the GET endpoints, the value is an empty string
webhooks[].plan_api_idstringThe plan API ID of the team or organization where this webhook was created
webhooks[].statusstring, one of ACTIVE, PAUSEDAn enum representing the possible statuses you can set a webhook to: - ACTIVE: The webhook is healthy and receive all events - PAUSED: The webhook is paused and will not receive any events
webhooks[].team_idstringThe team id you are subscribed to for updates. This is deprecated, use context and context_id instead

Also retrieved by: "what event callbacks are registered for us", "where do design updates get posted", "list every subscription in this context".

figma.post_webhook

Create a Figma webhook: notify a server or an endpoint when a design changes, subscribing it to file update events. Calls POST /v2/webhooks.

Class write (writes, no confirmation needed). Scopes webhooks:write. Calls POST /v2/webhooks.

Arguments:

ArgumentTypeRequiredNotes
contextstringyesContext to create the webhook for. Must be "team", "project", or "file".
context_idstringyesThe id of the context you want to receive updates about.
descriptionstringnoUser provided description or name for the webhook. Max length 150 characters.
endpointstringyesThe HTTP endpoint that will receive a POST request when the event triggers. Max length 2048 characters.
event_typestring, one of PING, FILE_UPDATE, FILE_VERSION_UPDATE, FILE_DELETE, LIBRARY_PUBLISH, FILE_COMMENT, DEV_MODE_STATUS_UPDATEyesAn enum representing the possible events that a webhook can subscribe to
passcodestringyesString that will be passed back to your webhook endpoint to verify that it is being called by Figma. Max length 100 characters.
statusstring, one of ACTIVE, PAUSEDnoAn enum representing the possible statuses you can set a webhook to: - ACTIVE: The webhook is healthy and receive all events - PAUSED: The webhook is paused and will not receive any events
team_idstringnoTeam id to receive updates about. This is deprecated, use 'context' and 'context_id' instead.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
client_idstringThe client ID of the OAuth application that registered this webhook, if any
contextstringThe type of context this webhook is attached to. The value will be "PROJECT", "TEAM", or "FILE"
context_idstringThe ID of the context this webhook is attached to
descriptionstringOptional user-provided description or name for the webhook. This is provided to help make maintaining a number of webhooks more convenient. Max length 140 characters.
endpointstringThe endpoint that will be hit when the webhook is triggered
event_typestring, one of PING, FILE_UPDATE, FILE_VERSION_UPDATE, FILE_DELETE, LIBRARY_PUBLISH, FILE_COMMENT, DEV_MODE_STATUS_UPDATEAn enum representing the possible events that a webhook can subscribe to
idstringThe ID of the webhook
passcodestringThe passcode that will be passed back to the webhook endpoint. For security, when using the GET endpoints, the value is an empty string
plan_api_idstringThe plan API ID of the team or organization where this webhook was created
statusstring, one of ACTIVE, PAUSEDAn enum representing the possible statuses you can set a webhook to: - ACTIVE: The webhook is healthy and receive all events - PAUSED: The webhook is paused and will not receive any events
team_idstringThe team id you are subscribed to for updates. This is deprecated, use context and context_id instead

Also retrieved by: "notify my server when a design changes", "subscribe an endpoint to design events", "set up a callback for document updates".

figma.get_webhook

Get one Figma webhook by id: what it subscribes to, where it posts, and whether it is active. Calls GET /v2/webhooks/{webhook_id}.

Class read (reads only). Scopes files:read, webhooks:read. Calls GET /v2/webhooks/{{params.webhook_id}}.

Arguments:

ArgumentTypeRequiredNotes
webhook_idstringyesID of webhook to get

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
client_idstringThe client ID of the OAuth application that registered this webhook, if any
contextstringThe type of context this webhook is attached to. The value will be "PROJECT", "TEAM", or "FILE"
context_idstringThe ID of the context this webhook is attached to
descriptionstringOptional user-provided description or name for the webhook. This is provided to help make maintaining a number of webhooks more convenient. Max length 140 characters.
endpointstringThe endpoint that will be hit when the webhook is triggered
event_typestring, one of PING, FILE_UPDATE, FILE_VERSION_UPDATE, FILE_DELETE, LIBRARY_PUBLISH, FILE_COMMENT, DEV_MODE_STATUS_UPDATEAn enum representing the possible events that a webhook can subscribe to
idstringThe ID of the webhook
passcodestringThe passcode that will be passed back to the webhook endpoint. For security, when using the GET endpoints, the value is an empty string
plan_api_idstringThe plan API ID of the team or organization where this webhook was created
statusstring, one of ACTIVE, PAUSEDAn enum representing the possible statuses you can set a webhook to: - ACTIVE: The webhook is healthy and receive all events - PAUSED: The webhook is paused and will not receive any events
team_idstringThe team id you are subscribed to for updates. This is deprecated, use context and context_id instead

Also retrieved by: "what does this callback subscribe to", "is a single subscription still active", "where does one webhook post its events".

figma.put_webhook

Update a Figma webhook: change the endpoint it posts to, the events it listens for, or its active state. Calls PUT /v2/webhooks/{webhook_id}.

Class write (writes, no confirmation needed). Scopes webhooks:write. Calls PUT /v2/webhooks/{{params.webhook_id}}.

Arguments:

ArgumentTypeRequiredNotes
descriptionstringnoUser provided description or name for the webhook. Max length 150 characters.
endpointstringyesThe HTTP endpoint that will receive a POST request when the event triggers. Max length 2048 characters.
event_typestring, one of PING, FILE_UPDATE, FILE_VERSION_UPDATE, FILE_DELETE, LIBRARY_PUBLISH, FILE_COMMENT, DEV_MODE_STATUS_UPDATEyesAn enum representing the possible events that a webhook can subscribe to
passcodestringyesString that will be passed back to your webhook endpoint to verify that it is being called by Figma. Max length 100 characters.
statusstring, one of ACTIVE, PAUSEDnoAn enum representing the possible statuses you can set a webhook to: - ACTIVE: The webhook is healthy and receive all events - PAUSED: The webhook is paused and will not receive any events
webhook_idstringyesID of webhook to update

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
client_idstringThe client ID of the OAuth application that registered this webhook, if any
contextstringThe type of context this webhook is attached to. The value will be "PROJECT", "TEAM", or "FILE"
context_idstringThe ID of the context this webhook is attached to
descriptionstringOptional user-provided description or name for the webhook. This is provided to help make maintaining a number of webhooks more convenient. Max length 140 characters.
endpointstringThe endpoint that will be hit when the webhook is triggered
event_typestring, one of PING, FILE_UPDATE, FILE_VERSION_UPDATE, FILE_DELETE, LIBRARY_PUBLISH, FILE_COMMENT, DEV_MODE_STATUS_UPDATEAn enum representing the possible events that a webhook can subscribe to
idstringThe ID of the webhook
passcodestringThe passcode that will be passed back to the webhook endpoint. For security, when using the GET endpoints, the value is an empty string
plan_api_idstringThe plan API ID of the team or organization where this webhook was created
statusstring, one of ACTIVE, PAUSEDAn enum representing the possible statuses you can set a webhook to: - ACTIVE: The webhook is healthy and receive all events - PAUSED: The webhook is paused and will not receive any events
team_idstringThe team id you are subscribed to for updates. This is deprecated, use context and context_id instead

Also retrieved by: "point a callback at a new endpoint", "change which events a subscription listens for", "pause or reactivate a webhook".

figma.delete_webhook

Delete a Figma webhook: stop the event callbacks and notifications going to an endpoint, unsubscribing a server from design updates. Calls DELETE /v2/webhooks/{webhook_id}.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). Scopes webhooks:write. Calls DELETE /v2/webhooks/{{params.webhook_id}}.

Arguments:

ArgumentTypeRequiredNotes
webhook_idstringyesID of webhook to delete

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
client_idstringThe client ID of the OAuth application that registered this webhook, if any
contextstringThe type of context this webhook is attached to. The value will be "PROJECT", "TEAM", or "FILE"
context_idstringThe ID of the context this webhook is attached to
descriptionstringOptional user-provided description or name for the webhook. This is provided to help make maintaining a number of webhooks more convenient. Max length 140 characters.
endpointstringThe endpoint that will be hit when the webhook is triggered
event_typestring, one of PING, FILE_UPDATE, FILE_VERSION_UPDATE, FILE_DELETE, LIBRARY_PUBLISH, FILE_COMMENT, DEV_MODE_STATUS_UPDATEAn enum representing the possible events that a webhook can subscribe to
idstringThe ID of the webhook
passcodestringThe passcode that will be passed back to the webhook endpoint. For security, when using the GET endpoints, the value is an empty string
plan_api_idstringThe plan API ID of the team or organization where this webhook was created
statusstring, one of ACTIVE, PAUSEDAn enum representing the possible statuses you can set a webhook to: - ACTIVE: The webhook is healthy and receive all events - PAUSED: The webhook is paused and will not receive any events
team_idstringThe team id you are subscribed to for updates. This is deprecated, use context and context_id instead

Also retrieved by: "stop event callbacks going to my endpoint", "turn off notifications for a design", "unsubscribe my server from updates".

figma.get_webhook_requests

List a Figma webhook's recent deliveries: the calls it made in the last week and how the receiving endpoint responded, for debugging. Calls GET /v2/webhooks/{webhook_id}/requests.

Class read (reads only). Scopes files:read, webhooks:read. Calls GET /v2/webhooks/{{params.webhook_id}}/requests.

Arguments:

ArgumentTypeRequiredNotes
webhook_idstringyesThe id of the webhook subscription you want to see events from

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
requestsarray of objectAn array of webhook requests.
requests[].error_msgstringError message for this request. NULL if no error occurred
requests[].request_infoobjectInformation regarding the request sent to a webhook endpoint
requests[].response_infoobjectInformation regarding the reply sent back from a webhook endpoint
requests[].webhook_idstringThe ID of the webhook the requests were sent to

Also retrieved by: "did our endpoint receive the last events", "why is a callback failing to deliver", "recent delivery attempts and their responses".