---
title: "POST /api/v1/app-connections/azure-key-vault"
method: POST
path: "/api/v1/app-connections/azure-key-vault"
tags: ["App Connections"]
---

# POST /api/v1/app-connections/azure-key-vault

`POST /api/v1/app-connections/azure-key-vault`

## Request

- Base URL: `https://us.infisical.com`
- URL: `https://us.infisical.com/api/v1/app-connections/azure-key-vault`
- Auth: none declared

Create an Azure Key Vault Connection.

## Request body

- union
  - object
    - `method` 'oauth', required: The method used to authenticate with Azure Key Vault.
    - `credentials` object, required: The credentials used to connect with Azure Key Vault.
      - `code` string, required
      - `tenantId` string
    - `name` string, required: The name of the Azure Key Vault Connection to create. Must be slug-friendly.
    - `description` string, nullable: An optional description for the Azure Key Vault Connection.
    - `projectId` string: The ID of the project to create the Azure Key Vault Connection in.
    - `isPlatformManagedCredentials` false: Not supported for Azure Key Vault Connections.
    - `gatewayId` string, uuid, nullable: The Gateway ID to use for this connection.
    - `gatewayPoolId` string, uuid, nullable: The Gateway Pool ID to use for this connection.
    - `isAutoRotationEnabled` boolean: Whether or not automatic credential rotation is enabled for the Azure Key Vault Connection.
    - `rotation` object: The credential rotation configuration for the Azure Key Vault Connection.
      - `rotationInterval` integer, required: The interval in days between credential rotations.
      - `rotateAtUtc` object, required
        - `hours` integer, required: The hour (0-23) at which to rotate (UTC timezone).
        - `minutes` integer, required: The minute (0-59) at which to rotate (UTC timezone).
  - object
    - `method` 'client-secret', required: The method used to authenticate with Azure Key Vault.
    - `credentials` object, required: The credentials used to connect with Azure Key Vault.
      - `clientId` string, uuid, required
      - `clientSecret` string, required
      - `tenantId` string, uuid, required
      - `clientSecretKeyId` string, uuid: The Key ID of the client secret in Azure AD. Required when enabling credential rotation so the original secret can be revoked.
    - `name` string, required: The name of the Azure Key Vault Connection to create. Must be slug-friendly.
    - `description` string, nullable: An optional description for the Azure Key Vault Connection.
    - `projectId` string: The ID of the project to create the Azure Key Vault Connection in.
    - `isPlatformManagedCredentials` false: Not supported for Azure Key Vault Connections.
    - `gatewayId` string, uuid, nullable: The Gateway ID to use for this connection.
    - `gatewayPoolId` string, uuid, nullable: The Gateway Pool ID to use for this connection.
    - `isAutoRotationEnabled` boolean: Whether or not automatic credential rotation is enabled for the Azure Key Vault Connection.
    - `rotation` object: The credential rotation configuration for the Azure Key Vault Connection.
      - `rotationInterval` integer, required: The interval in days between credential rotations.
      - `rotateAtUtc` object, required
        - `hours` integer, required: The hour (0-23) at which to rotate (UTC timezone).
        - `minutes` integer, required: The minute (0-59) at which to rotate (UTC timezone).
  - object
    - `method` 'certificate', required: The method used to authenticate with Azure Key Vault.
    - `credentials` object, required: The credentials used to connect with Azure Key Vault.
      - `tenantId` string, uuid, required
      - `clientId` string, uuid, required
      - `certificateBody` string, required
      - `privateKey` string, required
    - `name` string, required: The name of the Azure Key Vault Connection to create. Must be slug-friendly.
    - `description` string, nullable: An optional description for the Azure Key Vault Connection.
    - `projectId` string: The ID of the project to create the Azure Key Vault Connection in.
    - `isPlatformManagedCredentials` false: Not supported for Azure Key Vault Connections.
    - `gatewayId` string, uuid, nullable: The Gateway ID to use for this connection.
    - `gatewayPoolId` string, uuid, nullable: The Gateway Pool ID to use for this connection.
    - `isAutoRotationEnabled` boolean: Whether or not automatic credential rotation is enabled for the Azure Key Vault Connection.
    - `rotation` object: The credential rotation configuration for the Azure Key Vault Connection.
      - `rotationInterval` integer, required: The interval in days between credential rotations.
      - `rotateAtUtc` object, required
        - `hours` integer, required: The hour (0-23) at which to rotate (UTC timezone).
        - `minutes` integer, required: The minute (0-59) at which to rotate (UTC timezone).

## Response `200`

Default Response

- object
  - `appConnection` union, required
    - object
      - `id` string, uuid, required
      - `name` string, required
      - `description` string, nullable
      - `version` number
      - `orgId` string, uuid, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required
      - `isPlatformManagedCredentials` boolean, nullable
      - `gatewayId` string, uuid, nullable
      - `projectId` string, nullable
      - `isAutoRotationEnabled` boolean
      - `gatewayPoolId` string, uuid, nullable
      - `rotation` object: The credential rotation configuration, if configured.
        - `lastRotationMessage` string, nullable: The message from the last rotation attempt.
        - `rotationInterval` number, required: The interval in days between credential rotations.
        - `nextRotationAt` string, date-time, nullable: The next scheduled rotation time.
        - `rotationStatus` 'success' | 'failed', required: The status of the last rotation attempt.
        - `rotateAtUtc` object, required: The UTC time of day at which rotation should occur.
          - `hours` number, required: The hour (0-23) at which to rotate.
          - `minutes` number, required: The minute (0-59) at which to rotate.
      - `credentialsHash` string
      - `project` object, nullable
        - `name` string, required
        - `id` string, required
        - `type` string, required
        - `slug` string, required
      - `app` 'azure-key-vault', required
      - `method` 'oauth', required
      - `credentials` object, required
        - `tenantId` string
    - object
      - `id` string, uuid, required
      - `name` string, required
      - `description` string, nullable
      - `version` number
      - `orgId` string, uuid, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required
      - `isPlatformManagedCredentials` boolean, nullable
      - `gatewayId` string, uuid, nullable
      - `projectId` string, nullable
      - `isAutoRotationEnabled` boolean
      - `gatewayPoolId` string, uuid, nullable
      - `rotation` object: The credential rotation configuration, if configured.
        - `lastRotationMessage` string, nullable: The message from the last rotation attempt.
        - `rotationInterval` number, required: The interval in days between credential rotations.
        - `nextRotationAt` string, date-time, nullable: The next scheduled rotation time.
        - `rotationStatus` 'success' | 'failed', required: The status of the last rotation attempt.
        - `rotateAtUtc` object, required: The UTC time of day at which rotation should occur.
          - `hours` number, required: The hour (0-23) at which to rotate.
          - `minutes` number, required: The minute (0-59) at which to rotate.
      - `credentialsHash` string
      - `project` object, nullable
        - `name` string, required
        - `id` string, required
        - `type` string, required
        - `slug` string, required
      - `app` 'azure-key-vault', required
      - `method` 'client-secret', required
      - `credentials` object, required
        - `clientId` string, required
        - `tenantId` string, required
    - object
      - `id` string, uuid, required
      - `name` string, required
      - `description` string, nullable
      - `version` number
      - `orgId` string, uuid, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required
      - `isPlatformManagedCredentials` boolean, nullable
      - `gatewayId` string, uuid, nullable
      - `projectId` string, nullable
      - `isAutoRotationEnabled` boolean
      - `gatewayPoolId` string, uuid, nullable
      - `rotation` object: The credential rotation configuration, if configured.
        - `lastRotationMessage` string, nullable: The message from the last rotation attempt.
        - `rotationInterval` number, required: The interval in days between credential rotations.
        - `nextRotationAt` string, date-time, nullable: The next scheduled rotation time.
        - `rotationStatus` 'success' | 'failed', required: The status of the last rotation attempt.
        - `rotateAtUtc` object, required: The UTC time of day at which rotation should occur.
          - `hours` number, required: The hour (0-23) at which to rotate.
          - `minutes` number, required: The minute (0-59) at which to rotate.
      - `credentialsHash` string
      - `project` object, nullable
        - `name` string, required
        - `id` string, required
        - `type` string, required
        - `slug` string, required
      - `app` 'azure-key-vault', required
      - `method` 'certificate', required
      - `credentials` object, required
        - `clientId` string, required
        - `tenantId` string, required

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `404`: Default Response
- `422`: Default Response
- `500`: Default Response

---

[API](https://skmtc.dev/infisical/apis/infisical-api.md) - [All operations](https://skmtc.dev/infisical/apis/infisical-api/llms.txt) - [OpenAPI document](https://skmtc.dev/infisical/apis/infisical-api/revisions/7f940199c899?raw)
