Skip to content
Docs
Service Accounts

Retrieve

Retrieve

client.organizations.serviceAccounts.retrieve(stringserviceAccountID, ServiceAccountRetrieveParams { organization_id, expand, xClientRequestID } params, RequestOptionsoptions?): ServiceAccount { id, created_at, name, 3 more }
GET/organizations/{organization_id}/service-accounts/{service_account_id}

Get a specific service account

ParametersExpand Collapse
serviceAccountID: string

Identifier for API resources. A 26-char nanoid (URL/DNS safe).

minLength1
maxLength255
params: ServiceAccountRetrieveParams { organization_id, expand, xClientRequestID }
organization_id: string

Path param: Organization ID or label identifier

minLength1
maxLength255
expand?: Array<"permissions" | "total_count">

Query param: Fields to expand in the response. Supports "permissions" to include the permissions field with the caller's permissions for the resource. For list organization identities only, "total_count" populates pagination.total_count with the number of identities matching the same filters as the list (excluding cursor and limit). Other operations ignore expand values they do not use.

Accepts one of the following:
"permissions"
"total_count"
xClientRequestID?: string

Header param: Unique request identifier specified by the originating caller and passed along by proxies.

formatuuid
ReturnsExpand Collapse
ServiceAccount { id, created_at, name, 3 more }
id: string

Identifier for API resources. A 26-char nanoid (URL/DNS safe).

minLength1
maxLength255
created_at: string

The time the entity was created in utc

formatdate-time
name: string

A name for the entity to be displayed in UI

updated_at: string

The time the entity was mostly recently updated in utc

formatdate-time
description?: string

Optional description of the service account

permissions?: Record<string, Record<string, boolean>>

Permissions granted to the authenticated principal for this resource. Only populated when the 'expand[]=permissions' query parameter is provided. Keys are resource types (e.g., "organizations"), values are objects mapping permission names to boolean values indicating if the permission is granted.

Retrieve

import KeycardAPI from '@keycardai/api';

const client = new KeycardAPI();

const serviceAccount = await client.organizations.serviceAccounts.retrieve(
  'ab3def8hij2klm9opq5rst7uvw',
  { organization_id: 'x' },
);

console.log(serviceAccount.id);
{
  "id": "ab3def8hij2klm9opq5rst7uvw",
  "created_at": "2019-12-27T18:11:19.117Z",
  "name": "name",
  "updated_at": "2019-12-27T18:11:19.117Z",
  "description": "description",
  "permissions": {
    "organizations": {
      "read": true,
      "update": true
    },
    "users": {
      "read": true,
      "list": true
    }
  }
}
Returns Examples
{
  "id": "ab3def8hij2klm9opq5rst7uvw",
  "created_at": "2019-12-27T18:11:19.117Z",
  "name": "name",
  "updated_at": "2019-12-27T18:11:19.117Z",
  "description": "description",
  "permissions": {
    "organizations": {
      "read": true,
      "update": true
    },
    "users": {
      "read": true,
      "list": true
    }
  }
}