Back to Infisical

Create

docs/api-reference/endpoints/secret-rotations/openai-service-account/create.mdx

0.162.22.9 KB
Original Source
<Note> Check out the configuration docs for [OpenAI Service Account Rotations](/documentation/platform/secret-rotation/openai-service-account) to learn how to obtain the required parameters. </Note>

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

bash
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

json
{
  "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"
    }
  }
}