Skip to main content
Check out the configuration docs for Supabase API Key Rotations to learn how to obtain the required parameters.
Creates a Supabase API Key secret rotation. Infisical will create and rotate API keys via your Supabase connection and write them to the specified secret path.

Request body

FieldTypeRequiredDescription
namestringYesA unique name for the rotation (max 100 characters).
projectIdstring (UUID)YesThe project ID.
connectionIdstring (UUID)YesID of the Supabase app connection.
environmentstringYesEnvironment slug (e.g. dev, prod).
secretPathstringYesPath where the generated API key secret will be stored.
isAutoRotationEnabledbooleanNoWhether to rotate automatically on the schedule. Defaults to true.
rotationIntervalnumberYesDays between rotations (minimum 1).
rotateAtUtcobjectNoTime of day (UTC) to run rotation: { "hours", "minutes" }. Defaults to { "hours": 0, "minutes": 0 }.
parameters.projectRefstringYesThe reference ID of the Supabase project to rotate the API key for.
parameters.keyTypestringYesThe type of the API key to rotate: "publishable" or "secret".
secretsMapping.apiKeystringYesSecret key name to store the generated API key (e.g. SUPABASE_SECRET_API_KEY).
descriptionstringNoOptional description.

Sample request

curl --request POST \
  --url https://us.infisical.com/api/v2/secret-rotations/supabase-api-key \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <ACCESS_TOKEN>' \
  --data '{
    "name": "my-supabase-rotation",
    "projectId": "<project-id>",
    "description": "Supabase API key rotation",
    "connectionId": "<supabase-connection-id>",
    "environment": "dev",
    "secretPath": "/",
    "isAutoRotationEnabled": true,
    "rotationInterval": 30,
    "rotateAtUtc": { "hours": 0, "minutes": 0 },
    "parameters": {
      "projectRef": "<supabase-project-ref>",
      "keyType": "secret"
    },
    "secretsMapping": {
      "apiKey": "SUPABASE_SECRET_API_KEY"
    }
  }'

Sample response

{
  "secretRotation": {
    "id": "<rotation-id>",
    "name": "my-supabase-rotation",
    "description": "Supabase API key rotation",
    "secretsMapping": { "apiKey": "SUPABASE_SECRET_API_KEY" },
    "isAutoRotationEnabled": true,
    "activeIndex": 0,
    "connectionId": "<supabase-connection-id>",
    "rotationInterval": 30,
    "rotateAtUtc": { "hours": 0, "minutes": 0 },
    "type": "supabase-api-key",
    "parameters": {
      "projectRef": "<supabase-project-ref>",
      "keyType": "secret"
    }
  }
}