Skip to content

chore(api): sync OpenAPI contract - #352

Draft
kong[bot] wants to merge 1 commit into
mainfrom
chore/sync-openapi
Draft

kong[bot] wants to merge 1 commit into
mainfrom
chore/sync-openapi

Conversation

@kong

@kong kong Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Summary

API change report

Public API

New Endpoints: 60


POST /forks
GET /lavaflow/global-skills
POST /lavaflow/held-fix-opens
GET /lavaflow/resources
GET /lavaflow/runs
POST /lavaflow/runs
GET /lavaflow/runs/{run_id}
GET /lavaflow/scans
GET /lavaflow/settings
PATCH /lavaflow/settings
PUT /lavaflow/settings
GET /lavaflow/skill-versions
GET /lavaflow/skills
DELETE /lavaflow/skills/{skill_id}
GET /lavaflow/skills/{skill_id}
PATCH /lavaflow/skills/{skill_id}
GET /lavaflow/slack-channels
POST /lavaflow/slack-channels
DELETE /lavaflow/slack-channels/{binding_id}
GET /lavaflow/stats
GET /projects/{id}/capabilities
GET /projects/{id}/databases/{databaseName}/migration-runs
POST /projects/{id}/databases/{databaseName}/migration-runs
GET /projects/{id}/databases/{databaseName}/migration-runs/{runId}
GET /projects/{id}/databases/{databaseName}/migrations
POST /projects/{id}/databases/{databaseName}/migrations/baseline
GET /projects/{id}/frontends/{frontendId}/candidates
POST /projects/{id}/frontends/{frontendId}/candidates
DELETE /projects/{id}/frontends/{frontendId}/candidates/{candidateId}
GET /projects/{id}/frontends/{frontendId}/candidates/{candidateId}
POST /projects/{id}/frontends/{frontendId}/candidates/{candidateId}/deployments
POST /projects/{id}/frontends/{frontendId}/candidates/{candidateId}/promote
GET /projects/{id}/frontends/{frontendId}/serving
POST /projects/{id}/frontends/{frontendId}/serving/rollback
GET /projects/{id}/git-connection/owner-push
GET /projects/{id}/git-deployment-runs
GET /projects/{id}/git-deployment-runs/{runId}
POST /sandbox-file-archives
POST /sandbox-file-parts
GET /sandbox-session-files
GET /share-previews/{share_id}
GET /share-release-drafts
GET /share-releases
POST /share-releases
GET /share-stats
GET /shares
POST /shares
DELETE /shares/{share_id}
GET /shares/{share_id}
PATCH /shares/{share_id}
GET /slack/callback
DELETE /user/sessions
GET /user/sessions
DELETE /user/sessions/{sessionId}
GET /user/slack/channels
GET /user/slack/connections
POST /user/slack/connections
DELETE /user/slack/connections/{connectionId}
POST /user/slack/installations
DELETE /user/tokens/current

Deleted Endpoints: 5


GET /projects/{id}/autofix
PUT /projects/{id}/autofix
GET /projects/{id}/autofix-runs
GET /projects/{id}/autofix-runs/{runId}
POST /projects/{id}/issues/{issueId}/autofix-runs

Modified Endpoints: 286


POST /auth/device/token

  • Responses changed
    • Modified response: 403
      • Description changed from 'access_denied - the approving account's email domain is not in
        allowed_email_domains while allowed_email_domains_mode is
        signup_and_signin. Re-checked here because approval and redemption
        are separate requests.
        ' to 'access_denied - the approving account's canonical email, or the email
        of any of its identities, is not in allowed_email_domains while allowed_email_domains_mode is
        signup_and_signin. Re-checked here because approval and redemption
        are separate requests.
        '

POST /auth/device/verify

  • Responses changed
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

POST /auth/forgot-password

  • Responses changed
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 403
      • Description changed from 'Password reset is disabled for this project' to 'Password reset or email/password is turned off for this project'
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 429
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

POST /auth/logout

  • Responses changed
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

POST /auth/oauth/exchange

  • Responses changed
    • Modified response: 403
      • Description changed from 'Email confirmation is now required, or the account's email domain is not
        in allowed_email_domains while allowed_email_domains_mode is
        signup_and_signin. Both are re-checked here because the code outlives
        the callback that issued it.
        ' to 'Email confirmation is now required, or the account's canonical email or
        the provider identity's email is not in allowed_email_domains while
        allowed_email_domains_mode is signup_and_signin. Both are re-checked here because the code outlives
        the callback that issued it.
        '

GET /auth/oauth/providers

  • Description changed from 'Get list of OAuth providers linked to current user' to 'Lists the OAuth providers linked to the signed-in user, with the
    user's own account ID at each provider. Match on provider_user_id,
    which never changes, rather than on the login or email. For
    GitHub, it is the numeric user ID that GitHub reports elsewhere, such
    as a webhook's sender.id.
    '
  • Responses changed
    • Modified response: 200
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: providers
                • Items changed
                  • Required changed
                    • New required property: linked_at
                    • New required property: provider
                    • New required property: provider_user_id
                    • New required property: updated_at
                  • Properties changed
                    • New property: provider_login
                    • New property: provider_user_id
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

POST /auth/oauth/{provider}/call-api

  • Responses changed
    • Modified response: 400
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 404
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 500
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 502
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

GET /auth/oauth/{provider}/callback

  • Responses changed
    • New response: 404
    • Modified response: 400
      • Description changed from 'Missing/invalid code or state, the state parameter expired, or the
        flow's stored redirect_url is no longer registered in
        allowed_redirect_urls (re-checked at callback time)
        ' to 'Missing/invalid code or state, the state parameter expired, the
        provider was disabled after the flow started, or the flow's stored
        redirect_url is no longer registered in allowed_redirect_urls (both
        re-checked at callback time)
        '
    • Modified response: 403
      • Description changed from 'The provider's email domain is not in allowed_email_domains. Creating
        an account is refused under signup and signup_and_signin; signing in
        an already-linked account is refused under signup_and_signin.
        ' to 'The provider's email domain is not in allowed_email_domains. Creating
        an account is refused under signup and signup_and_signin; signing in
        an already-linked account is refused under signup_and_signin, as it is
        when the account's canonical email is outside the list. A new account
        at a reserved domain (anonymous.volcano.internal, volcano.local) is
        refused whatever the project allows.
        '

POST /auth/oauth/{provider}/link

  • Responses changed
    • Modified response: 400
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 404
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 409
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

POST /auth/oauth/{provider}/refresh-token

  • Responses changed
    • Modified response: 400
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 404
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

GET /auth/oauth/{provider}/token

  • Responses changed
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 404
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

DELETE /auth/oauth/{provider}/unlink

  • Description changed from 'Remove OAuth provider from user's account.
    Cannot unlink if it's the only authentication method.
    ' to 'Remove OAuth provider from user's account. Refused when the account would
    have no other way to sign in: another linked OAuth provider that's enabled
    for the project, or a password while email/password sign-in is on for the
    project (enable_email_password).
    '
  • Responses changed
    • Modified response: 400
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 404
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'

GET /auth/password-policy

  • Responses changed
    • Modified response: 401
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.' to 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does not include the requested feature or option; upgrading the plan unlocks it. person_required (403) means a project access token tried to change LavaFlow settings, which only the project's owner changes, with a platform token, or that the change needs the owner's own credential that expires, a project repository, and an owner whose GitHub account can push to it; error says which. A 403 without a code leaves the reason unspecified: it can be an access refusal, a reached limit, or a plan check that could not read the owner's plan. Match on the code, not the message text.'
    • Modified response: 404
      • Content changed
        • Modified media type: application/json
          • Schema changed
            • Properties changed
              • Modified property: code
                • Description changed from 'Stable machine-readable error code when a specific recovery path is available. plan_required (403) means the project owner's plan does

Report truncated; see the source commit for the complete contract diff.

Validation

@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@kong
kong Bot force-pushed the chore/sync-openapi branch 14 times, most recently from eeed2d9 to a82f95d Compare October 29, 2026 20:18
@kong
kong Bot force-pushed the chore/sync-openapi branch 14 times, most recently from 9432da9 to 5d95aac Compare October 30, 2026 20:59
@kong
kong Bot force-pushed the chore/sync-openapi branch 29 times, most recently from 3188e2c to 8571653 Compare November 6, 2026 00:33

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant