User Invites

Extend invite expiry (deprecated)

POST/invites/{id}/extend
invites:writeextend_invite_legacyDeprecatedSunset 2027-06-30

Pushes an invite's expiry out by days, 30 by default and at most 365, from now.

Deprecated: withdrawn on 2027-06-30. POST /invites/{id}/actions/extend replaces it; every answer carries a Link header with rel="successor-version". This route keeps its old answer: the invite with the stored status and type and offset timestamps. Like the action it extends only an invited invite, else 409 invalid_state. No linked user is 422 invite_has_no_user. It emits no webhook event.

Path parameters

  • idstring (uuid)Required#

    The invite's id, a uuid. An unknown invite, or one outside the token's organisation, returns 404.

Request body

application/json, optional

  • daysinteger#
{
  "days": 60
}

Responses

200

The invite, in the old shape.

LegacyInvite
{
  "data": {
    "id": "7a2b3c4d-5e6f-4a8b-9c0d-1e2f3a4b5c6d",
    "type": "Client",
    "status": "Invited",
    "email": "ada.lovelace@example.com",
    "title": "Ms",
    "first_name": "Ada",
    "last_name": "Lovelace",
    "sso_id": "okta|abc123",
    "onboarding_id": "9f8e7d6c-5b4a-4039-8271-6e5d4c3b2a19",
    "expires_at": "2026-07-15T10:30:00+00:00",
    "invited_at": "2026-06-15T10:30:00+00:00",
    "created_at": "2026-06-15T10:30:00+00:00"
  }
}
401

Authentication failed. error.code is one of invalid_token, expired, revoked.

Error
403

Authorization failed. error.code is one of org_disabled, ip_blocked, missing_scope, scope_disabled, user_disabled.

Error
404

Resource not found (error.code = not_found).

Error
409

The request conflicts with existing state (error.code = conflict), e.g. a compliance flow with the requested name already exists.

Error
422

The request can't be processed (HTTP 422): validation_failed with one ErrorDetail per problem, or a code documented on the operation.

Error
429

Rate limit exceeded (error.code = rate_limited).

Error

Examples

curl -X POST https://your-org-domain/kong/core/api/v2/invites/{id}/extend\
  -H "Authorization: Bearer $HELM_API_KEY"\
  -H "Content-Type: application/json"\
  -d '{
  "days": 60
}'