Infisical Project Identities API
The Project Identities API from Infisical — 7 operation(s) for project identities.
The Project Identities API from Infisical — 7 operation(s) for project identities.
openapi: 3.0.3
info:
title: Infisical Admin Project Identities 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: Project Identities
paths:
/api/v1/projects/{projectId}/identity-memberships/{identityId}:
post:
tags:
- Project Identities
description: Create project identity membership
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
role:
type: string
default: no-access
roles:
type: array
items:
anyOf:
- type: object
properties:
role:
type: string
description: The role slug to assign to the newly created identity project membership.
isTemporary:
type: boolean
enum:
- false
default: false
description: The role slug to assign to the newly created identity project membership.
required:
- role
additionalProperties: false
- type: object
properties:
role:
type: string
description: The role slug to assign to the newly created identity project membership.
isTemporary:
type: boolean
enum:
- true
description: The role slug to assign to the newly created identity project membership.
temporaryMode:
type: string
enum:
- relative
description: The role slug to assign to the newly created identity project membership.
temporaryRange:
type: string
description: The role slug to assign to the newly created identity project membership.
temporaryAccessStartTime:
type: string
format: date-time
description: The role slug to assign to the newly created identity project membership.
required:
- role
- isTemporary
- temporaryMode
- temporaryRange
- temporaryAccessStartTime
additionalProperties: false
description: A list of role slugs to assign to the newly created identity project membership.
additionalProperties: false
parameters:
- schema:
type: string
in: path
name: projectId
required: true
- schema:
type: string
in: path
name: identityId
required: true
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
identityMembership:
type: object
properties:
id:
type: string
format: uuid
projectId:
type: string
identityId:
type: string
format: uuid
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
required:
- id
- projectId
- identityId
- createdAt
- updatedAt
additionalProperties: false
required:
- identityMembership
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:
- Project Identities
description: Update project identity memberships
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
roles:
type: array
items:
anyOf:
- type: object
properties:
role:
type: string
description: The role slug to assign to the newly created identity project membership.
isTemporary:
type: boolean
enum:
- false
default: false
description: Whether the assigned role is temporary. If isTemporary is set true, must provide temporaryMode, temporaryRange and temporaryAccessStartTime.
required:
- role
additionalProperties: false
- type: object
properties:
role:
type: string
description: The role slug to assign to the newly created identity project membership.
isTemporary:
type: boolean
enum:
- true
description: Whether the assigned role is temporary. If isTemporary is set true, must provide temporaryMode, temporaryRange and temporaryAccessStartTime.
temporaryMode:
type: string
enum:
- relative
description: Type of temporary expiry.
temporaryRange:
type: string
description: Expiry time for temporary access. In relative mode it could be 1s, 2m ,3h, etc.
temporaryAccessStartTime:
type: string
format: date-time
description: Time to which the temporary access starts.
required:
- role
- isTemporary
- temporaryMode
- temporaryRange
- temporaryAccessStartTime
additionalProperties: false
minItems: 1
description: A list of role slugs to assign to the identity project membership.
required:
- roles
additionalProperties: false
parameters:
- schema:
type: string
in: path
name: projectId
required: true
description: The ID of the project to update the identity membership for.
- schema:
type: string
in: path
name: identityId
required: true
description: The ID of the machine identity to update the membership for.
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
roles:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
role:
type: string
projectMembershipId:
type: string
format: uuid
customRoleId:
type: string
format: uuid
nullable: true
isTemporary:
type: boolean
default: false
temporaryMode:
type: string
nullable: true
temporaryRange:
type: string
nullable: true
temporaryAccessStartTime:
type: string
format: date-time
nullable: true
temporaryAccessEndTime:
type: string
format: date-time
nullable: true
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
required:
- id
- role
- projectMembershipId
- createdAt
- updatedAt
additionalProperties: false
required:
- roles
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:
- Project Identities
description: Delete project identity memberships
parameters:
- schema:
type: string
in: path
name: projectId
required: true
description: The ID of the project to delete the identity membership from.
- schema:
type: string
in: path
name: identityId
required: true
description: The ID of the machine identity to delete the membership from.
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
identityMembership:
type: object
properties:
id:
type: string
format: uuid
projectId:
type: string
identityId:
type: string
format: uuid
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
required:
- id
- projectId
- identityId
- createdAt
- updatedAt
additionalProperties: false
required:
- identityMembership
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
get:
tags:
- Project Identities
description: Return project identity membership
parameters:
- schema:
type: string
in: path
name: projectId
required: true
description: The ID of the project to get the identity membership for.
- schema:
type: string
in: path
name: identityId
required: true
description: The ID of the machine identity to get the membership for.
security:
- bearerAuth: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
identityMembership:
type: object
properties:
id:
type: string
identityId:
type: string
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
roles:
type: array
items:
type: object
properties:
id:
type: string
role:
type: string
customRoleId:
type: string
nullable: true
customRoleName:
type: string
nullable: true
customRoleSlug:
type: string
nullable: true
isTemporary:
type: boolean
temporaryMode:
type: string
nullable: true
temporaryRange:
type: string
nullable: true
temporaryAccessStartTime:
type: string
format: date-time
nullable: true
temporaryAccessEndTime:
type: string
format: date-time
nullable: true
required:
- id
- role
- isTemporary
additionalProperties: false
lastLoginAuthMethod:
type: string
nullable: true
lastLoginTime:
type: string
format: date-time
nullable: true
identity:
type: object
properties:
name:
type: string
id:
type: string
format: uuid
projectId:
type: string
nullable: true
orgId:
type: string
format: uuid
authMethods:
type: array
items:
type: string
required:
- name
- id
- orgId
- authMethods
additionalProperties: false
project:
type: object
properties:
name:
type: string
id:
type: string
required:
- name
- id
additionalProperties: false
required:
- id
- identityId
- createdAt
- updatedAt
- roles
- identity
- project
additionalProperties: false
required:
- identityMembership
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}/identity-memberships:
get:
tags:
- Project Identities
description: Return project identity memberships
parameters:
- schema:
type: number
minimum: 0
default: 0
in: query
name: offset
required: false
description: The offset to start from. If you enter 10, it will start from the 10th identity membership.
- schema:
type: number
minimum: 1
maximum: 20000
default: 100
in: query
name: limit
required: false
description: The number of identity memberships to return.
- schema:
type: string
enum:
- name
default: name
in: query
name: orderBy
required: false
de
# --- truncated at 32 KB (117 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/infisical/refs/heads/main/openapi/infisical-project-identities-api-openapi.yml