---
title: "Retrieve a key"
method: GET
path: "/projects/{project_id}:{branch}/keys/{key_id}"
tags: ["Keys"]
---

# Retrieve a key

`GET /projects/{project_id}:{branch}/keys/{key_id}`

## Request

- Base URL: `https://api.lokalise.com/api2`
- URL: `https://api.lokalise.com/api2/projects/{project_id}:{branch}/keys/{key_id}`
- Auth: API key in header `X-Api-Token`

Retrieves a [Key](#object-keys) object.

Requires <code>read_keys</code> OAuth access scope.

## Path parameters

- `project_id` string, required
- `branch` string, required
- `key_id` number, required

## Query parameters

- `disable_references` number
- `include_ai_scoring` number

## Response `200`

OK

- object
  - `project_id` string
  - `key` Keys
    - `key_id` number: A unique identifier of the key.
    - `created_at` string: Creation date of the key.
    - `created_at_timestamp` number: Unix timestamp when the key was created.
    - `key_name` object: An object containing key names for all platforms. You may need to enable "Per-platform key names" in project settings in order to alter key names for each platform individually. Note, when creating/updating keys, depending on your project settings (Per-platform key names) you may be required to pass either a string (if the setting is disabled) or an object (if the setting is enabled).
      - `ios` string: "iOS" platform key name.
      - `android` string: "Android" platform key name.
      - `web` string: "Web" platform key name.
      - `other` string: "Other" platform key name.
    - `filenames` object: An object containing key filename attribute for each platform.
      - `ios` string: "iOS" platform filename.
      - `android` string: "Android" platform filename.
      - `web` string: "Web" platform filename.
      - `other` string: "Other" platform filename.
    - `description` string: Description of the key.
    - `platforms` unknown[]: List of platforms, enabled for this key.
      - unknown
    - `tags` unknown[]: List of tags for this key.
      - unknown
    - `comments` object[]: Comments for this key.
      - `comment_id` number: Unique identifier of the comment.
      - `comment` string: The comment.
      - `added_by` number: Unique identifier of a user, who has left the comment.
      - `added_by_email` string: E-mail of a user, who has left the comment.
      - `added_at` string: Date the comment has been added.
      - `added_at_timestamp` number: Unix timestamp when the comment has been added.
    - `screenshots` object[]: Screenshots, attached to this key.
      - `screenshot_id` number: A unique identifier of the screenshot.
      - `key_ids` unknown[]: List of key identifiers, the screenshot is attached to.
        - unknown
      - `url` string: Link to the screenshot.
      - `title` string: Screenshot title.
      - `description` string: Description of the screenshot.
      - `screenshot_tags` unknown[]: List of screenshot tags.
        - unknown
      - `width` number: Width of the screenshot, in pixels.
      - `height` number: Height of the screenshot, in pixels.
      - `created_at` string: Creation date of the screenshot.
      - `created_at_timestamp` number: Unix timestamp when the screenshot was created.
    - `translations` object[]: Translations for all languages.
      - `translation_id` number: Unique identifier of translation entry.
      - `key_id` number: A unique identifier of the key.
      - `language_iso` string: Unique code of the language of the translation.
      - `translation` string: The actual translation. Pass as an object, in case it includes plural forms and <code>is_plural</code> is <code>true</code>.
      - `modified_by` number: Identifier of a user, who has updated the translation.
      - `modified_by_email` string: E-mail of a user, who has updated the translation.
      - `modified_at` string: Date of last modification of the translation.
      - `modified_at_timestamp` number: Unix timestamp of last modification of the translation.
      - `is_reviewed` boolean: Whether the translation is marked as Reviewed.
      - `is_unverified` boolean: Whether the translation is marked as Unverified.
      - `reviewed_by` number: Identifier of the user, who has reviewed the translation (if reviewed).
      - `words` number: Number of words in the translation.
      - `custom_translation_statuses` unknown[]: Array consisting of <a href="#object-translation-statuses">Custom Translation Status</a> objects.
        - unknown
      - `task_id` number: Identifier of the task, if the key is a part of one, or <code>null</code> if it's not.
    - `is_plural` boolean: Whether this key is plural.
    - `plural_name` string: Optional custom plural name (used in some formats).
    - `is_hidden` boolean: Whether this key is hidden from non-admins (translators).
    - `is_archived` boolean: Whether this key is archived.
    - `context` string: Optional context of the key (used with some file formats).
    - `base_words` number: Number of words in base language.
    - `char_limit` number: Maximum allowed number of characters in translations for this key.
    - `custom_attributes` unknown[]: JSON containing <a href="https://docs.lokalise.com/developer-docs/custom-key-attributes">custom attributes</a> (if any).
      - unknown
    - `modified_at` string: Date of the latest key update (including screenshots and comments).
    - `modified_at_timestamp` number: Unix timestamp of the latest key update (including screenshots and comments).
    - `translations_modified_at` string: Date of the latest key translation update.
    - `translations_modified_at_timestamp` number: Unix timestamp of the latest key translation update.

---

[API](https://skmtc.dev/lokalise/apis/projects-with-branches.md) - [All operations](https://skmtc.dev/lokalise/apis/projects-with-branches/llms.txt) - [OpenAPI document](https://skmtc.dev/lokalise/apis/projects-with-branches/revisions/7ed3f978a361?raw)
