Identity & Access Management

Preview — pending review

This reference is generated from the platform API contract and is still under review. Operations, fields, and descriptions can change before publication.

The principals holding the project-creator grant on the subscription

GET
/tenants/{tenantId}/subscriptions/{subscriptionId}/project-creators

Every principal the subscription's owner named a project creator, ordered by principalId. The grant opens project creation under the subscription and NOTHING else: it is not a role assignment, adds no reach, permission or billing access, and gives no say over the subscription itself. The full list is returned in one response (no pagination). Authorization: unreached/unknown subscription 404; no SUBSCRIPTION-level owner grant 403; an API token needs iam:read (403 TOKEN_SCOPE_MISSING). Async & state: Synchronous read; no state change. Errors: 401; 403; 404; 500. Idempotency/Concurrency: Safe; no idempotency key.

Authorization

bearerToken
headerAuthorizationBearer <token>

An API token (pc_live_…) or a service-account key (sak_live_…), created in Identity & Access Management and sent as Authorization: Bearer <token>. Requests are rate limited per credential and per tenant: every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset, and a refused request gets 429 RATE_LIMITED with Retry-After.

Path Parameters

tenantId*string

The tenant id.

subscriptionId*string

The subscription id (unique platform-wide, derived from the tenant id + the subscription's name at creation).

Query Parameters

page?integer

1-based page number.

Range1 <= value
Default1
pageSize?integer

Items per page (max 200). Lists that used to return every row default to the maximum, so a client that does not page keeps seeing up to 200 rows; a larger value is refused with 422.

Range1 <= value <= 200
Default200

Response Body

The subscription's project-creator grants.

application/json
  1. response

Every project-creator grant of a subscription, ordered by principalId (unpaginated).

items*array<>
curl -X GET "https://example.com/tenants/string/subscriptions/string/project-creators"
{  "items": [    {      "principalId": "string",      "grantedBy": "string",      "createdAt": "2019-08-24T14:15:22Z"    }  ]}