KeyEnvKeyEnv
API Reference

Invitations

Team invitation management

Invitations

Team invitation management

List team invitations

GET /api/v1/teams/{teamId}/invitations

Returns pending invitations for a team

Operation ID: listTeamInvitations · Authentication: Authorization: Bearer <token>

Path parameters

NameTypeRequiredDescription
teamIdstring (uuid)yesTeam UUID

Responses

StatusDescriptionBody
200List of invitationsobject[]
401Authentication requiredError
403Insufficient permissionsError

Response body (200)

FieldTypeDescription
idstring (uuid)
team_idstring (uuid)
emailstring (email)
roleenum (admin, member)
invited_bystring (uuid)
expires_atstring (date-time)
created_atstring (date-time)

Example

curl -X GET "https://api.keyenv.dev/api/v1/teams/{teamId}/invitations" \
  -H "Authorization: Bearer $KEYENV_TOKEN"

Revoke invitation

DELETE /api/v1/teams/{teamId}/invitations/{invitationId}

Revokes a pending team invitation

Operation ID: revokeInvitation · Authentication: Authorization: Bearer <token>

Path parameters

NameTypeRequiredDescription
teamIdstring (uuid)yesTeam UUID
invitationIdstring (uuid)yes

Responses

StatusDescriptionBody
204Invitation revoked
401Authentication requiredError
403Insufficient permissionsError
404Resource not foundError

Example

curl -X DELETE "https://api.keyenv.dev/api/v1/teams/{teamId}/invitations/{invitationId}" \
  -H "Authorization: Bearer $KEYENV_TOKEN"

Resend invitation

POST /api/v1/teams/{teamId}/invitations/{invitationId}/resend

Resends a pending team invitation email

Operation ID: resendInvitation · Authentication: Authorization: Bearer <token>

Path parameters

NameTypeRequiredDescription
teamIdstring (uuid)yesTeam UUID
invitationIdstring (uuid)yes

Responses

StatusDescriptionBody
200Invitation resent
401Authentication requiredError
403Insufficient permissionsError
404Resource not foundError

Example

curl -X POST "https://api.keyenv.dev/api/v1/teams/{teamId}/invitations/{invitationId}/resend" \
  -H "Authorization: Bearer $KEYENV_TOKEN"

List my invitations

GET /api/v1/invitations

Returns pending invitations for the current user

Operation ID: listMyInvitations · Authentication: Authorization: Bearer <token>

Responses

StatusDescriptionBody
200List of invitationsobject[]
401Authentication requiredError

Response body (200)

FieldTypeDescription
team_namestring
invited_by_emailstring (email)
roleenum (admin, member)
emailstring (email)
expires_atstring (date-time)
tokenstring

Example

curl -X GET "https://api.keyenv.dev/api/v1/invitations" \
  -H "Authorization: Bearer $KEYENV_TOKEN"

Get invitation by token

GET /api/v1/invitations/{token}

Returns public information about an invitation

Operation ID: getInvitationByToken · Authentication: Authorization: Bearer <token>

Path parameters

NameTypeRequiredDescription
tokenstringyes

Responses

StatusDescriptionBody
200Invitation detailsInvitationPublicInfo
401Authentication requiredError
404Resource not foundError

Response body (200)

FieldTypeDescription
team_namestring
invited_by_emailstring (email)
roleenum (admin, member)
emailstring (email)
expires_atstring (date-time)
tokenstring

Example

curl -X GET "https://api.keyenv.dev/api/v1/invitations/{token}" \
  -H "Authorization: Bearer $KEYENV_TOKEN"

Accept invitation

POST /api/v1/invitations/{token}/accept

Accepts a team invitation and joins the team

Operation ID: acceptInvitation · Authentication: Authorization: Bearer <token>

Path parameters

NameTypeRequiredDescription
tokenstringyes

Responses

StatusDescriptionBody
200Invitation acceptedTeam
401Authentication requiredError
404Resource not foundError

Response body (200)

FieldTypeDescription
idstring (uuid)
namestring
slugstring
planenum (free, team, enterprise)
is_personalboolean
created_atstring (date-time)

Example

curl -X POST "https://api.keyenv.dev/api/v1/invitations/{token}/accept" \
  -H "Authorization: Bearer $KEYENV_TOKEN"

On this page