How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Cognite Principals API

**Principal** is an umbrella term for **user accounts** and **service accounts**. Both entities can be uniquely identified, authenticated, and authorized in CDF. Principals are unique within an organization, and therefore also within a project in the organization. Principals can access data and create and run processes (transformations, Functions) in a CDF project.* A **user account** is associated with a **person** who wants to interact with CDF. Each user account has a user profile containing a unique user ID.* A **service account** is associated with an **application** or **process** that wants to interact with CDF, such as an extractor or Cognite Functions, rather than a person.## Authentication for this APIRequests to the Principals API are directed to `auth.cognite.com`, like for organizations.Only OAuth tokens issued by `https://auth.cognite.com` (such as the ones issued when logging into Fusion) are acceptedby the Principals API.It is also possible to obtain a token by initiating a login flow against the authorization server directly. Seethe "Authorizations" sections for more information.## User AccountsThe Principals API lets you query user accounts in an organization, and retrieve profiles.

Cognite Principals API is one of 90 APIs that Cognite publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Principals. The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 5 operations across 5 paths, and defines 28 schemas. It is described by OpenAPI 3.2.0, at version v1.

Requests are made against a single base URL, https://{cluster}.cognitedata.com/api/v1/projects/{project}.

5 operations 5 paths 28 schemas 3 GET2 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
v1
Base URL
https://api.cognitedata.com
Authentication
HTTP Bearer, OAuth 2.0, OAuth 2.0, OAuth 2.0, OpenID Connect
Resource Areas
1

Authentication & Security 5

Cognite Principals API declares 5 security schemes for authenticating requests. It accepts HTTP bearer tokens (OpenID Connect or OAuth2 token) (oidc-token). It supports OAuth 2.0 (oauth2-client-credentials) using the clientCredentials flow, exposing 1 scope. It supports OAuth 2.0 (oauth2-auth-code) using the authorizationCode flow, exposing 1 scope. It supports OAuth 2.0 (oauth2-open-industrial-data) using the clientCredentials flow, exposing 1 scope. It supports OpenID Connect (org-oidc-token) discovered at https://auth.cognite.com/.well-known/openid-configuration. By default, every request must be authenticated.

  • oidc-token — Access token issued by the CDF project's configured identity provider. Access token must be an OpenID Connect token, and the project must be configured to acce…
  • oauth2-client-credentials — Access token issued by the CDF project's configured identity provider. Access token must be an OpenID Connect token, and the project must be configured to acce…
  • oauth2-auth-code — Access token issued by the CDF project's configured identity provider. Access token must be an OpenID Connect token, and the project must be configured to acce…
  • oauth2-open-industrial-data — Auth flow for Open Industrial Data. Get your client secret from https://hub.cognite.com/open-industrial-data-211.
  • org-oidc-token — Access token issued by the Cognite authorization server, and valid for the target organization. The token must be an OpenID Connect token, and it can be obtain…

Paths & Operations 5

Across 5 paths, the API surfaces 5 operations — 3 GET, 2 POST. Each is listed below with its method, path, parameters, and response codes.

Principals 5

Principal is an umbrella term for user accounts and service accounts. Both entities can be uniquely identified, authenticated, and authorized in CDF. Principals are unique within…

GET
/api/v1/principals/me
Get the current caller's information
getMe → 200
GET
/api/v1/orgs/{org}/principals
List principals
listPrincipals 4 params → 200
POST
/api/v1/orgs/{org}/principals/byids
Retrieve principals by reference
getPrincipalsById 1 param body → 200
GET
/api/v1/orgs/{org}/principals/{principal}/sessions
List login sessions
listLoginSessionsForUserPrincipal 4 params → 200400403404
POST
/api/v1/orgs/{org}/principals/{principal}/sessions/revoke
Revoke login sessions
revokeLoginSessionsForUserPrincipal 2 params body → 204400403404

Schemas 28

The contract defines 28 schemas that model the data the API accepts and returns. The most detailed are LoginSessionDto (4 properties), BasePrincipalDto (3 properties), ServiceAccountCreatorUser (2 properties), LoginSessionsListPaginatedDto (2 properties). Each schema is shown below with its type and property counts.

BasePrincipalDto
object
A principal
3 properties 3 required
LoginSessionDto
object
4 properties 3 required
OrgId
string
The ID of an organization
ServiceAccountCreator
The principal that created the entity.
ServiceAccountDescription
string
Longer description of a service account
ServiceAccountName
string
Human-readable name of a service account
Cursor
object
Cursor for paging through results. In general, if a response contains a nextCursor property, it means that there may be more results, and you should pass that…
1 property
PrincipalPictureUrl
string
URL to a picture of the principal
ServiceAccountDto
ReferenceByIdOrExternalId
object
Either a principal ID, or a principal external ID
ReferenceById
object
1 property 1 required
EpochTimestamp
integer
The number of milliseconds since 00:00:00 Thursday, 1 January 1970, Coordinated Universal Time (UTC), minus leap seconds.
PrincipalName
string
Human-readable name of the principal
ReferenceByExternalId
object
1 property 1 required
UserDto
SimpleError
object
Cognite API error.
2 properties 2 required
LoginSessionsListPaginatedDto
object
2 properties 1 required
PrincipalDto
CogniteExternalId
string
The external ID provided by the client. Must be unique for the resource type.
ServiceAccountId
string
Unique identifier of a service account
PrincipalsListResponseDto
object
1 property 1 required
LoginSessionId
string
Unique identifier of a login session.
ServiceAccountCreatorUser
object
The user that created the entity.
2 properties 2 required
PrincipalListByIdsRequestDto
object
2 properties 1 required
UserId
string
The ID of an organization user
PrincipalType
string
The type of a principal
PrincipalsListPaginatedDto
object
2 properties 1 required
PrincipalId
string
Unique identifier of a principal

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

cognite-principals-api-openapi.yml Raw ↑

Other APIs Cognite publishes across the network.

Cognite Data Fusion API
Cognite 3D Asset Mapping API
Cognite 3D Files API
Cognite 3D Jobs API
Cognite 3D Model Revisions API
Cognite 3D Models API
Cognite Annotations API
Cognite Assets API
Cognite Connections API
Cognite Containers API
Cognite Data models API
Cognite Data point subscriptions API
Where this information came from

This is an independent, third-party profile of Cognite Principals API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.