Skip to main content
Check out the configuration docs for OpenAI Service Account Rotations to learn how to obtain the required parameters.
Creates an OpenAI Service Account secret rotation. Infisical will create and rotate project service accounts via your OpenAI connection and write their API keys 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 OpenAI app connection (Admin API key).
environmentstringYesEnvironment slug (e.g. dev, prod).
secretPathstringYesPath where the generated API key secret will be stored.
isAutoRotationEnabledbooleanYesWhether to rotate automatically on the schedule.
rotationIntervalnumberYesDays between rotations (e.g. 30).
rotateAtUtcobjectYesTime of day (UTC) to run rotation: { "hours", "minutes" }.
parameters.projectIdstringYesID of the OpenAI project to create service accounts in (e.g. proj_abc123). Cannot be changed after creation.
parameters.namestringYesName for the generated service account in OpenAI (max 100 characters).
secretsMapping.apiKeystringYesSecret key name to store the generated API key (e.g. OPENAI_API_KEY).
descriptionstringNoOptional description.

Sample request

curl --request POST \
  --url https://us.infisical.com/api/v2/secret-rotations/openai-service-account \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <ACCESS_TOKEN>' \
  --data '{
    "name": "my-openai-rotation",
    "projectId": "<project-id>",
    "description": "OpenAI service account rotation",
    "connectionId": "<openai-connection-id>",
    "environment": "dev",
    "secretPath": "/",
    "isAutoRotationEnabled": true,
    "rotationInterval": 30,
    "rotateAtUtc": { "hours": 0, "minutes": 0 },
    "parameters": {
      "projectId": "proj_abc123",
      "name": "my-app-service-account"
    },
    "secretsMapping": {
      "apiKey": "OPENAI_API_KEY"
    }
  }'

Sample response

{
  "secretRotation": {
    "id": "<rotation-id>",
    "name": "my-openai-rotation",
    "description": "OpenAI service account rotation",
    "secretsMapping": { "apiKey": "OPENAI_API_KEY" },
    "isAutoRotationEnabled": true,
    "activeIndex": 0,
    "connectionId": "<openai-connection-id>",
    "rotationInterval": 30,
    "rotateAtUtc": { "hours": 0, "minutes": 0 },
    "type": "openai-service-account",
    "parameters": {
      "projectId": "proj_abc123",
      "name": "my-app-service-account"
    }
  }
}