Skills
Log in

Rotate addon secrets

Starts a secret rotation for the given addon. MySQL keeps usernames unchanged and defaults to user-facing passwords only; mode=full also rotates internal passwords and restarts the addon during rotation and finalisation. Both MySQL modes retain old passwords until finalised. RabbitMQ also defaults to user-facing, rotating account usernames and passwords only. RabbitMQ mode=full also rotates the Erlang cookie and pauses the entire addon, causing downtime and interrupted connections. The addon can remain paused if rotation fails. Both RabbitMQ modes keep old accounts valid until finalisation. Retries retain the saved rotation mode. New credentials are created with the same permissions; the old credentials remain valid until the rotation is finalised. Redis instead performs a full restart and completes in one step: old credentials are revoked and clients must reconnect with the new password. Redeploy linked services yourself. Redis without persistence is not supported. Redis Sentinel requires at least three replicas. MinIO also restarts all nodes and completes in one step: only the secret key changes, while the access key, users and access keys stay valid. Console sessions, temporary credentials and presigned URLs signed with the old secret key stop working. Restoring a backup taken before the rotation restores the old secret key.

Required permission

Project > Addons > General > Update

Path parameters

    • projectId

      string required
      ID of the project
    • addonId

      string required
      ID of the addon

Request body

  • {object}
    • mode

      string
      MySQL and RabbitMQ: defaults to user-facing. MySQL full rotation also changes internal passwords and restarts the addon during rotation and finalisation. RabbitMQ user-facing rotation changes account usernames and passwords only. RabbitMQ full rotation also changes the Erlang cookie and pauses the entire addon, causing downtime and interrupted connections. The addon can remain paused on failure. Both modes keep old account credentials valid until finalisation. RabbitMQ finalisation does not pause the addon again.
      one of
      user-facing, full

Response body

  • {object}
    Response object.
    • data

      {object} required
      Result data.

    POST /v1/projects/{projectId}/addons/{addonId}/secret-rotation

    POST /v1/teams/{teamId}/projects/{projectId}/addons/{addonId}/secret-rotation

    Example request

    Request body
    curl --header "Content-Type: application/json" \
      --header "Authorization: Bearer NORTHFLANK_API_TOKEN" \
      --request POST \
      --data '{}' \
      https://api.northflank.com/v1/projects/{projectId}/addons/{addonId}/secret-rotation

    Example response

    200 OK

    The operation was performed successfully.

    JSON

    {
      "data": {}
    }

    © 2026 Northflank Ltd. All rights reserved.

    northflank.com / Terms / Privacy / feedback@northflank.com