Slides¶
figma_list_slides¶
The list of presentation slides: ids, names, grid positions and the skip flag. Works in Figma Slides files only. Requires the plugin.
Takes no parameters.
JSON Schema
{
"type": "object",
"properties": {}
}
figma_get_slide_content¶
The content tree of a slide: texts, shapes and frames with their properties. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id, for example '1:23'. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id, for example \u00271:23\u0027.",
"type": "string"
}
},
"required": [
"slideId"
]
}
figma_get_slide_grid¶
The two-dimensional slide grid: how the slides are laid out in rows and columns. Requires the plugin.
Takes no parameters.
JSON Schema
{
"type": "object",
"properties": {}
}
figma_get_slide_transition¶
The current transition settings of a slide: style, duration, easing curve. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id.",
"type": "string"
}
},
"required": [
"slideId"
]
}
figma_get_focused_slide¶
The slide currently open in single-slide mode. Requires the plugin.
Takes no parameters.
JSON Schema
{
"type": "object",
"properties": {}
}
figma_create_slide¶
Creates an empty slide. Its grid position can be set by row and column. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
row |
integer? |
— | null |
Row index in the grid, zero-based. |
col |
integer? |
— | null |
Column index in the grid, zero-based. |
JSON Schema
{
"type": "object",
"properties": {
"row": {
"description": "Row index in the grid, zero-based.",
"type": [
"integer",
"null"
],
"default": null
},
"col": {
"description": "Column index in the grid, zero-based.",
"type": [
"integer",
"null"
],
"default": null
}
}
}
figma_delete_slide¶
Deletes a slide from the presentation. The action is destructive — it is undone only through undo in Figma. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Id of the slide to delete. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Id of the slide to delete.",
"type": "string"
}
},
"required": [
"slideId"
]
}
figma_duplicate_slide¶
Duplicates a slide. The copy lands next to the original. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id.",
"type": "string"
}
},
"required": [
"slideId"
]
}
figma_reorder_slides¶
Rearranges the slides into a new grid. grid is a JSON array of arrays of ids, each nested array being one grid row: [["1:2","1:3"],["1:4"]]. The action is destructive: the order is replaced entirely. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
grid |
string |
yes | — | New grid as a JSON string. |
JSON Schema
{
"type": "object",
"properties": {
"grid": {
"description": "New grid as a JSON string.",
"type": "string"
}
},
"required": [
"grid"
]
}
figma_set_slide_transition¶
Sets the transition of a slide. style: NONE, DISSOLVE, SLIDE_FROM_LEFT/RIGHT/TOP/BOTTOM, PUSH_FROM_LEFT/RIGHT/TOP/BOTTOM, MOVE_FROM_LEFT/RIGHT/TOP/BOTTOM, SLIDE_OUT_TO_LEFT/RIGHT/TOP/BOTTOM, MOVE_OUT_TO_LEFT/RIGHT/TOP/BOTTOM, SMART_ANIMATE. curve: LINEAR, EASE_IN, EASE_OUT, EASE_IN_AND_OUT, GENTLE, QUICK, BOUNCY, SLOW. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id. |
style |
string |
yes | — | Transition style. |
duration |
number |
— | 0.4 |
Duration in seconds, from 0.01 to 10. |
curve |
string |
— | EASE_IN_AND_OUT |
Easing curve. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id.",
"type": "string"
},
"style": {
"description": "Transition style.",
"type": "string"
},
"duration": {
"description": "Duration in seconds, from 0.01 to 10.",
"type": "number",
"default": 0.4
},
"curve": {
"description": "Easing curve.",
"type": "string",
"default": "EASE_IN_AND_OUT"
}
},
"required": [
"slideId",
"style"
]
}
figma_skip_slide¶
Turns skipping a slide in presentation mode on and off. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id. |
skip |
boolean |
yes | — | true skips it, false shows it. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id.",
"type": "string"
},
"skip": {
"description": "true skips it, false shows it.",
"type": "boolean"
}
},
"required": [
"slideId",
"skip"
]
}
figma_add_text_to_slide¶
Adds text to a slide: font, color, alignment and the rest of the formatting. width enables line wrapping. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id. |
text |
string |
yes | — | Text. |
x |
number |
— | 100 |
X coordinate. |
y |
number |
— | 100 |
Y coordinate. |
fontSize |
number |
— | 24 |
Font size in pixels. |
fontFamily |
string |
— | Inter |
Font family, for example 'Manrope', 'IBM Plex Sans'. |
fontStyle |
string |
— | Regular |
Font style, for example 'Bold', 'SemiBold', 'Medium'. |
color |
string? |
— | null |
Text color in hex, for example '#FFFFFF'. |
textAlign |
string? |
— | null |
Alignment: LEFT, CENTER, RIGHT. |
width |
number? |
— | null |
Width of the text block — it enables line wrapping. |
lineHeight |
number? |
— | null |
Line height in pixels. |
letterSpacing |
number? |
— | null |
Letter spacing in pixels. |
textCase |
string? |
— | null |
Case: ORIGINAL, UPPER, LOWER, TITLE. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id.",
"type": "string"
},
"text": {
"description": "Text.",
"type": "string"
},
"x": {
"description": "X coordinate.",
"type": "number",
"default": 100
},
"y": {
"description": "Y coordinate.",
"type": "number",
"default": 100
},
"fontSize": {
"description": "Font size in pixels.",
"type": "number",
"default": 24
},
"fontFamily": {
"description": "Font family, for example \u0027Manrope\u0027, \u0027IBM Plex Sans\u0027.",
"type": "string",
"default": "Inter"
},
"fontStyle": {
"description": "Font style, for example \u0027Bold\u0027, \u0027SemiBold\u0027, \u0027Medium\u0027.",
"type": "string",
"default": "Regular"
},
"color": {
"description": "Text color in hex, for example \u0027#FFFFFF\u0027.",
"type": [
"string",
"null"
],
"default": null
},
"textAlign": {
"description": "Alignment: LEFT, CENTER, RIGHT.",
"type": [
"string",
"null"
],
"default": null
},
"width": {
"description": "Width of the text block \u2014 it enables line wrapping.",
"type": [
"number",
"null"
],
"default": null
},
"lineHeight": {
"description": "Line height in pixels.",
"type": [
"number",
"null"
],
"default": null
},
"letterSpacing": {
"description": "Letter spacing in pixels.",
"type": [
"number",
"null"
],
"default": null
},
"textCase": {
"description": "Case: ORIGINAL, UPPER, LOWER, TITLE.",
"type": [
"string",
"null"
],
"default": null
}
},
"required": [
"slideId",
"text"
]
}
figma_add_shape_to_slide¶
Adds a rectangle or an ellipse to a slide. shapeType: RECTANGLE or ELLIPSE. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id. |
shapeType |
string |
yes | — | Shape type: RECTANGLE or ELLIPSE. |
x |
number |
yes | — | X coordinate. |
y |
number |
yes | — | Y coordinate. |
width |
number |
yes | — | Width in pixels. |
height |
number |
yes | — | Height in pixels. |
fillColor |
string |
— | #CCCCCC |
Fill color in hex, for example '#FF5733'. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id.",
"type": "string"
},
"shapeType": {
"description": "Shape type: RECTANGLE or ELLIPSE.",
"type": "string"
},
"x": {
"description": "X coordinate.",
"type": "number"
},
"y": {
"description": "Y coordinate.",
"type": "number"
},
"width": {
"description": "Width in pixels.",
"type": "number"
},
"height": {
"description": "Height in pixels.",
"type": "number"
},
"fillColor": {
"description": "Fill color in hex, for example \u0027#FF5733\u0027.",
"type": "string",
"default": "#CCCCCC"
}
},
"required": [
"slideId",
"shapeType",
"x",
"y",
"width",
"height"
]
}
figma_set_slide_background¶
Sets the slide background: it creates or updates a rectangle covering the whole slide. color is hex of the form '#181818'. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id. |
color |
string |
yes | — | Background color in hex. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id.",
"type": "string"
},
"color": {
"description": "Background color in hex.",
"type": "string"
}
},
"required": [
"slideId",
"color"
]
}
figma_set_slides_view_mode¶
Switches the presentation view: mode is 'grid' or 'single-slide'. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
mode |
string |
yes | — | View mode: grid or single-slide. |
JSON Schema
{
"type": "object",
"properties": {
"mode": {
"description": "View mode: grid or single-slide.",
"type": "string"
}
},
"required": [
"mode"
]
}
figma_focus_slide¶
Moves to a slide in single-slide mode. Requires the plugin.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
slideId |
string |
yes | — | Slide id. |
JSON Schema
{
"type": "object",
"properties": {
"slideId": {
"description": "Slide id.",
"type": "string"
}
},
"required": [
"slideId"
]
}