Skip to main content
Project sharing policy and auditable access state. Customer app identity remains isolated under app-auth.

appAccess.getPolicy

Get the effective project policy and explicit environment/preview inheritance.
  • Auth: Organization API key (Authorization: Bearer korve_...) or dashboard session.
  • Minimum role: member
  • Risk: read

Example

Responses

Response body (200)

appAccess.updatePolicy

Replace the application access policy. Each successful mutation increments its version.
  • Auth: Organization API key (Authorization: Bearer korve_...) or dashboard session.
  • Minimum role: admin
  • Risk: dangerous

Request body

Example

Responses

Response body (200)

appAccess.listInvitations

List invitations without their write-only tokens.
  • Auth: Dashboard session only — organization API keys are rejected.
  • Minimum role: admin
  • Risk: read

Query parameters

Example

Responses

Response body (200)

appAccess.createInvitation

Create an invitation. A branded one-time acceptance URL carries the token only in its URL fragment, which browsers never send in the initial HTTP request. The URL is returned once and only the token’s SHA-256 digest is retained.
  • Auth: Dashboard session only — organization API keys are rejected.
  • Minimum role: admin
  • Risk: write · sensitive (elevated blast radius)

Request body

Example

Responses

Response body (201)

appAccess.revokeInvitation

Revoke a pending invitation.
  • Auth: Dashboard session only — organization API keys are rejected.
  • Minimum role: admin
  • Risk: destructive · sensitive (elevated blast radius)

Example

Responses

Response body (200)

appAccess.acceptInvitation

Accept an invitation as a signed-in, verified Korve viewer identity. This identity is separate from customer app-auth.
  • Auth: Dashboard session only — organization API keys are rejected.
  • Minimum role: member
  • Risk: write · sensitive (elevated blast radius)

Request body

Example

Responses

Response body (200)

appAccess.acceptInvitationWithContext

Accept an invitation for the project derived from an active edge-minted login context. The context is not consumed until session exchange.
  • Auth: Dashboard session only — organization API keys are rejected.
  • Minimum role: member
  • Risk: write · sensitive (elevated blast radius)

Request body

Example

Responses

Response body (200)

appAccess.exchangeSession

Consume a one-time edge-minted login context and exchange the verified Korve user session for a scoped application access token. API clients send x-korve-access-token: <token>; Authorization remains reserved for customer application auth. Browsers submit the token to the server-returned callback; the edge responds 303 with __Host-korve_access=<encoded token>; HttpOnly; Secure; SameSite=Lax; Path=/ and no Domain attribute. The central API never trusts browser callback, project, or scope parameters and never sets a cross-origin cookie.
  • Auth: Dashboard session only — organization API keys are rejected.
  • Minimum role: member
  • Risk: write · sensitive (elevated blast radius)

Request body

Example

Responses

Response body (201)

appAccess.listGrants

List project access grants.
  • Auth: Organization API key (Authorization: Bearer korve_...) or dashboard session.
  • Minimum role: admin
  • Risk: read

Query parameters

Example

Responses

Response body (200)

appAccess.revokeGrant

Revoke a grant and every active access session derived from it.
  • Auth: Dashboard session only — organization API keys are rejected.
  • Minimum role: admin
  • Risk: destructive · sensitive (elevated blast radius)

Example

Responses

Response body (200)

appAccess.listSessions

List access-gateway session state without credential material.
  • Auth: Organization API key (Authorization: Bearer korve_...) or dashboard session.
  • Minimum role: admin
  • Risk: read

Query parameters

Example

Responses

Response body (200)

appAccess.revokeSession

Revoke one access session.
  • Auth: Organization API key (Authorization: Bearer korve_...) or dashboard session.
  • Minimum role: admin
  • Risk: destructive · sensitive (elevated blast radius)

Example

Responses

Response body (200)

appAccess.listAudit

List tenant-scoped access policy, invitation, grant, and session audit events.
  • Auth: Organization API key (Authorization: Bearer korve_...) or dashboard session.
  • Minimum role: admin
  • Risk: read

Query parameters

Example

Responses

Response body (200)