---
title: "Get Api Key"
method: GET
path: "/v2/api-key/{api_key_id}"
tags: ["API Keys"]
---

# Get Api Key

`GET /v2/api-key/{api_key_id}`

Gets a single api_key matching the given api_key_id, if such api_key exists.

## Path parameters

- `api_key_id` string, required — The unique id of the API key

## Response `200`

Successful Response

- APIKeyRead
  - `organization_id` string, uuid, required
  - `project_id` string, uuid
  - `environment_id` string, uuid
  - `object_type` 'org' | 'project' | 'env' — An enumeration.
  - `access_level` 'admin' | 'write' | 'read' | 'no_access' — An enumeration.
  - `owner_type` 'pdp_config' | 'member' | 'elements' | 'nats_pdp_config', required — An enumeration.
  - `name` string
  - `id` string, uuid, required
  - `secret` string
  - `created_at` string, date-time, required
  - `created_by_member` OrgMemberRead
    - `id` string, uuid, required — Unique id of the account member
    - `email` string, email, required — Email of the user controlling this account
    - `email_verified` boolean, required — Whether this email address is verified or not. For social providers like 'Login with Google' this is done automatically, otherwise we will send the user a verification link in email.
    - `name` string — Name of this user
    - `given_name` string — First name of the user
    - `family_name` string — Last name of the user
    - `picture` string — URL to picture, photo, or avatar of the user that controls this account.
    - `is_superuser` boolean, required — Whether or not this user has special access to permit.io organizations
    - `is_onboarding` boolean, required — Whether or not this user is currently onboarding, needs to be replaced by a user journey object
    - `onboarding_step` 'create_organization' | 'create_project' | 'create_resource' | 'create_actions' | 'assign_permissions' | 'assign_user_roles' | 'connect_sdk' | 'done', required — An enumeration.
    - `created_at` string, date-time, required — Date and time when the account member was created (ISO_8601 format).
    - `last_login` string, date-time — Last date and time this user logged in (ISO_8601 format).
    - `last_ip` string — Last IP address from which this user logged in.
    - `logins_count` integer — Total number of logins this user has performed.
    - `identities` IdentityRead[], required
      - `user_id` string, required — Unique User Id of this identity in the identity provider (including the provider type)
      - `provider` string, required — The identity provider type this identity came from
      - `sub` string, required — Unique User Id of this identity in the identity provider (NOT including the provider type)
      - `email` string, email, required — Email connected to this account identity
      - `email_verified` boolean, required — Whether this email address connected to this account identity is verified or not. For social providers like 'Login with Google' this is done automatically, otherwise we will send the user a verification link in email.
      - `auth0_info` object, required — Raw user info json coming from our identity provider and matching a specific account identity
    - `invite` InviteRead
      - `member_id` string, uuid — Unique id of the invite
      - `email` string, email, required — The invited member's email address
      - `role` 'admin' | 'write' | 'read' | 'no_access' — An enumeration.
      - `id` string, uuid, required — Unique id of the invite
      - `organization_id` string, uuid, required — Unique id of the organization that the invite belongs to.
      - `invite_code` string, uuid, required — The invite code that is sent to the member's email
      - `created_at` string, date-time, required — Date and time when the invite was created (ISO_8601 format).
      - `status` 'pending' | 'accepted' | 'failed' | 'canceled', required — An enumeration.
      - `failed_reason` string — if failed, the reason the invitation failed
    - `settings` object, required — Custom permit.io dashboard settings, such as preferred theme, etc.
  - `last_used_at` string, date-time
  - `env` EnvironmentRead
    - `key` string, required — A URL-friendly name of the environment (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the environment.
    - `id` string, uuid, required — Unique id of the environment
    - `organization_id` string, uuid, required — Unique id of the organization that the environment belongs to.
    - `project_id` string, uuid, required — Unique id of the project that the environment belongs to.
    - `created_at` string, date-time, required — Date and time when the environment was created (ISO_8601 format).
    - `updated_at` string, date-time, required — Date and time when the environment was last updated/modified (ISO_8601 format).
    - `avp_policy_store_id` string
    - `name` string, required — The name of the environment
    - `description` string — an optional longer description of the environment
    - `custom_branch_name` string — when using gitops feature, an optional branch name for the environment
    - `jwks` JwksConfig
      - `ttl` integer — JWKS cache TTL (in seconds)
      - `url` string — ...
      - `jwks` JwksObj
        - `keys` object[], required — The keys to match against the request headers
    - `settings` object — the settings for this environment
  - `project` ProjectRead
    - `key` string, required — A URL-friendly name of the project (i.e: slug). You will be able to query later using this key instead of the id (UUID) of the project.
    - `urn_namespace` string — Optional namespace for URNs. If empty, URNs will be generated from project key.
    - `id` string, uuid, required — Unique id of the project
    - `organization_id` string, uuid, required — Unique id of the organization that the project belongs to.
    - `created_at` string, date-time, required — Date and time when the project was created (ISO_8601 format).
    - `updated_at` string, date-time, required — Date and time when the project was last updated/modified (ISO_8601 format).
    - `name` string, required — The name of the project
    - `description` string — a longer description outlining the project objectives
    - `settings` object — the settings for this project
    - `active_policy_repo_id` string, uuid — the id of the policy repo to use for this project

## Other responses

- `422` — Validation Error

---

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