Infisical Projects API
The Projects API from Infisical — 10 operation(s) for projects.
The Projects API from Infisical — 10 operation(s) for projects.
openapi: 3.0.3
info:
title: Infisical Admin Projects API
description: List of all available APIs that can be consumed
version: 0.0.1
servers:
- url: https://us.infisical.com
description: Production server (US)
- url: https://eu.infisical.com
description: Production server (EU)
- url: http://localhost:8080
description: Local server
tags:
- name: Projects
paths:
/api/v1/workspace/{workspaceId}/secret-snapshots:
get:
tags:
- Projects
description: Return project secret snapshots ids
parameters:
- schema:
type: string
in: query
name: environment
required: true
description: The environment to get snapshots from.
- schema:
type: string
default: /
in: query
name: path
required: false
description: The secret path to get snapshots from.
- schema:
type: number
default: 0
in: query
name: offset
required: false
description: The offset to start from. If you enter 10, it will start from the 10th snapshot.
- schema:
type: number
default: 20
in: query
name: limit
required: false
description: The number of snapshots to return.
- schema:
type: string
in: path
name: workspaceId
required: true
description: The ID of the project to get snapshots from.
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
secretSnapshots:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
envId:
type: string
format: uuid
folderId:
type: string
format: uuid
parentFolderId:
type: string
format: uuid
nullable: true
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
required:
- id
- envId
- folderId
- createdAt
- updatedAt
additionalProperties: false
required:
- secretSnapshots
additionalProperties: false
'400':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 400
message:
type: string
error:
type: string
details: {}
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'401':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 401
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'403':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 403
message:
type: string
details: {}
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'404':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 404
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'422':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 422
message: {}
error:
type: string
required:
- reqId
- statusCode
- error
additionalProperties: false
'500':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 500
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
/api/v1/projects/{projectId}/secret-snapshots:
get:
tags:
- Projects
description: Return project secret snapshots ids
parameters:
- schema:
type: string
in: query
name: environment
required: true
description: The environment to get snapshots from.
- schema:
type: string
default: /
in: query
name: path
required: false
description: The secret path to get snapshots from.
- schema:
type: number
default: 0
in: query
name: offset
required: false
description: The offset to start from. If you enter 10, it will start from the 10th snapshot.
- schema:
type: number
default: 20
in: query
name: limit
required: false
description: The number of snapshots to return.
- schema:
type: string
in: path
name: projectId
required: true
description: The ID of the project to get snapshots from.
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
secretSnapshots:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
envId:
type: string
format: uuid
folderId:
type: string
format: uuid
parentFolderId:
type: string
format: uuid
nullable: true
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
required:
- id
- envId
- folderId
- createdAt
- updatedAt
additionalProperties: false
required:
- secretSnapshots
additionalProperties: false
'400':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 400
message:
type: string
error:
type: string
details: {}
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'401':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 401
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'403':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 403
message:
type: string
details: {}
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'404':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 404
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'422':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 422
message: {}
error:
type: string
required:
- reqId
- statusCode
- error
additionalProperties: false
'500':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 500
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
/api/v1/workspace/{workspaceId}:
get:
tags:
- Projects
description: Get project
parameters:
- schema:
type: string
in: path
name: workspaceId
required: true
description: The ID of the project.
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
workspace:
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
nullable: true
type:
type: string
defaultProduct:
type: string
nullable: true
slug:
type: string
autoCapitalization:
type: boolean
default: false
nullable: true
orgId:
type: string
format: uuid
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
version:
type: number
default: 1
upgradeStatus:
type: string
nullable: true
pitVersionLimit:
type: number
default: 10
kmsCertificateKeyId:
type: string
format: uuid
nullable: true
auditLogsRetentionDays:
type: number
nullable: true
hasDeleteProtection:
type: boolean
default: false
nullable: true
secretSharing:
type: boolean
default: true
showSnapshotsLegacy:
type: boolean
default: false
secretDetectionIgnoreValues:
type: array
items:
type: string
nullable: true
enforceEncryptedSecretManagerSecretMetadata:
type: boolean
nullable: true
_id:
type: string
environments:
type: array
items:
type: object
properties:
name:
type: string
slug:
type: string
id:
type: string
required:
- name
- slug
- id
additionalProperties: false
required:
- id
- name
- type
- slug
- orgId
- createdAt
- updatedAt
- _id
- environments
additionalProperties: false
additionalProperties: false
'400':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 400
message:
type: string
error:
type: string
details: {}
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'401':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 401
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'403':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 403
message:
type: string
details: {}
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'404':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 404
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'422':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 422
message: {}
error:
type: string
required:
- reqId
- statusCode
- error
additionalProperties: false
'500':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 500
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
delete:
tags:
- Projects
description: Delete project
parameters:
- schema:
type: string
in: path
name: workspaceId
required: true
description: The ID of the project to delete.
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
workspace:
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
nullable: true
type:
type: string
defaultProduct:
type: string
nullable: true
slug:
type: string
autoCapitalization:
type: boolean
default: false
nullable: true
orgId:
type: string
format: uuid
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
version:
type: number
default: 1
upgradeStatus:
type: string
nullable: true
pitVersionLimit:
type: number
default: 10
kmsCertificateKeyId:
type: string
format: uuid
nullable: true
auditLogsRetentionDays:
type: number
nullable: true
hasDeleteProtection:
type: boolean
default: false
nullable: true
secretSharing:
type: boolean
default: true
showSnapshotsLegacy:
type: boolean
default: false
secretDetectionIgnoreValues:
type: array
items:
type: string
nullable: true
enforceEncryptedSecretManagerSecretMetadata:
type: boolean
nullable: true
required:
- id
- name
- type
- slug
- orgId
- createdAt
- updatedAt
additionalProperties: false
additionalProperties: false
'400':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 400
message:
type: string
error:
type: string
details: {}
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'401':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 401
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'403':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 403
message:
type: string
details: {}
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'404':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 404
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
'422':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 422
message: {}
error:
type: string
required:
- reqId
- statusCode
- error
additionalProperties: false
'500':
description: Default Response
content:
application/json:
schema:
type: object
properties:
reqId:
type: string
statusCode:
type: number
enum:
- 500
message:
type: string
error:
type: string
required:
- reqId
- statusCode
- message
- error
additionalProperties: false
patch:
tags:
- Projects
description: Update project
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
maxLength: 64
description: The new name of the project.
description:
type: string
maxLength: 1024
description: An optional description label for the project.
autoCapitalization:
type: boolean
description: Disable or enable auto-capitalization for the project.
hasDeleteProtection:
type: boolean
description: Enable or disable delete protection for the project.
slug:
type: string
maxLength: 64
description: An optional slug for the project. (must be unique within the organization)
secretSharing:
type: boolean
description: Enable or disable secret sharing for the project.
showSnapshotsLegacy:
type: boolean
description: Enable or disable legacy snapshots for the project.
defaultProduct:
type: string
enum:
- secret-manager
- cert-manager
- kms
- ssh
- secret-scanning
- pam
- ai
description: The default product in which the project will open
secretDetectionIgnoreValues:
type: array
items:
type: string
description: The list of secret values to ignore for secret detection.
additionalProperties: false
parameters:
- schema:
type: string
in: path
name: workspaceId
required: true
description: The ID of the project to update.
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
workspace:
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
nullable: true
type:
type: string
defaultProduct:
type: string
nullable: true
slug:
type: string
autoCapitalization:
type: boolean
default: false
nullable: true
orgId:
type: string
format: uuid
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
version:
type: number
default: 1
upgradeStatus:
type: string
nullable: true
pitVersionLimit:
type: number
default: 10
kmsCertificateKeyId:
type: string
format: uuid
nullable: true
auditLogsRetentionDays:
type: number
nullable: true
hasDeleteProtection:
type: boolean
default: false
nullable: true
secretSharing:
type: boolean
default: true
showSnapshotsLegacy:
type: boolean
default: false
secretDetectionIgnoreValues:
type: array
items:
# --- truncated at 32 KB (177 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/infisical/refs/heads/main/openapi/infisical-projects-api-openapi.yml