---
title: "Get file JSON for specific nodes"
method: GET
path: "/v1/files/{file_key}/nodes"
tags: ["Files"]
---

# Get file JSON for specific nodes

`GET /v1/files/{file_key}/nodes`

Returns the nodes referenced to by `ids` as a JSON object. The nodes are retrieved from the Figma file referenced to by `file_key`.

The node ID and file key can be parsed from any Figma node url: `https://www.figma.com/file/{file_key}/{title}?node-id={id}`

The `name`, `lastModified`, `thumbnailUrl`, `editorType`, and `version` attributes are all metadata of the specified file.

The `linkAccess` field describes the file link share permission level. There are 5 types of permissions a shared link can have: `"inherit"`, `"view"`, `"edit"`, `"org_view"`, and `"org_edit"`. `"inherit"` is the default permission applied to files created in a team project, and will inherit the project's permissions. `"org_view"` and `"org_edit"` restrict the link to org users.

The `document` attribute contains a Node of type `DOCUMENT`.

The `components` key contains a mapping from node IDs to component metadata. This is to help you determine which components each instance comes from.

By default, no vector data is returned. To return vector data, pass the geometry=paths parameter to the endpoint.
Each node can also inherit properties from applicable styles. The styles key contains a mapping from style IDs to style metadata.

Important: the nodes map may contain values that are `null`. This may be due to the node id not existing within the specified file.

## Path parameters

- `file_key` string, required

## Query parameters

- `ids` string, required
- `version` string
- `depth` number
- `geometry` string
- `plugin_data` string

## Response `200`

Response from the GET /v1/files/{file_key}/nodes endpoint.

- object
  - `name` string, required — The name of the file as it appears in the editor.
  - `role` 'owner' | 'editor' | 'viewer', required — The role of the user making the API request in relation to the file.
  - `lastModified` string, date-time, required — The UTC ISO 8601 time at which the file was last modified.
  - `editorType` 'figma' | 'figjam', required — The type of editor associated with this file.
  - `thumbnailUrl` string, required — A URL to a thumbnail image of the file.
  - `version` string, required — The 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.
  - `nodes` object, required — A mapping from node IDs to node metadata.

## Other responses

- `400` — Bad request. Parameters are invalid or malformed. Please check the input formats. This error can also happen if the requested resources are too large to complete the request, which results in a timeout. Please reduce the number and size of objects requested.
- `403` — The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource, or may need an account of some sort.
- `404` — The requested file or resource was not found.
- `429` — In some cases API requests may be throttled or rate limited. Please wait a while before attempting the request again (typically a minute).
- `500` — An internal server error occurred.

---

[API](https://skmtc.net/thirdstrandstudio/apis/figma-api.md) · [All operations](https://skmtc.net/thirdstrandstudio/apis/figma-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/thirdstrandstudio/figma-api/versions/48f84f49653a/schema)
