Infisical SSH Host Groups API
The SSH Host Groups API from Infisical — 6 operation(s) for ssh host groups.
The SSH Host Groups API from Infisical — 6 operation(s) for ssh host groups.
openapi: 3.0.3
info:
title: Infisical Admin SSH Host Groups 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: SSH Host Groups
paths:
/api/v1/ssh/host-groups/{sshHostGroupId}:
get:
tags:
- SSH Host Groups
description: Get SSH Host Group
parameters:
- schema:
type: string
in: path
name: sshHostGroupId
required: true
description: The ID of the SSH host group to get.
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
projectId:
type: string
name:
type: string
loginMappings:
type: array
items:
type: object
properties:
loginUser:
type: string
allowedPrincipals:
type: object
properties:
usernames:
type: array
items:
type: string
groups:
type: array
items:
type: string
additionalProperties: false
required:
- loginUser
- allowedPrincipals
additionalProperties: false
required:
- id
- projectId
- name
- loginMappings
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:
- SSH Host Groups
description: Update SSH Host Group
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
minLength: 1
maxLength: 64
description: The name of the SSH host group to update to.
loginMappings:
type: array
items:
type: object
properties:
loginUser:
type: string
allowedPrincipals:
type: object
properties:
usernames:
type: array
items:
type: string
groups:
type: array
items:
type: string
additionalProperties: false
required:
- loginUser
- allowedPrincipals
additionalProperties: false
description: A list of default login mappings to include on each host in the SSH host group. Each login mapping contains a login user and a list of corresponding allowed principals being usernames of users in the Infisical SSH project.
additionalProperties: false
parameters:
- schema:
type: string
in: path
name: sshHostGroupId
required: true
description: The ID of the SSH host group to update.
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
projectId:
type: string
name:
type: string
loginMappings:
type: array
items:
type: object
properties:
loginUser:
type: string
allowedPrincipals:
type: object
properties:
usernames:
type: array
items:
type: string
groups:
type: array
items:
type: string
additionalProperties: false
required:
- loginUser
- allowedPrincipals
additionalProperties: false
required:
- id
- projectId
- name
- loginMappings
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:
- SSH Host Groups
description: Delete SSH Host Group
parameters:
- schema:
type: string
in: path
name: sshHostGroupId
required: true
description: The ID of the SSH host group to delete.
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
projectId:
type: string
name:
type: string
loginMappings:
type: array
items:
type: object
properties:
loginUser:
type: string
allowedPrincipals:
type: object
properties:
usernames:
type: array
items:
type: string
groups:
type: array
items:
type: string
additionalProperties: false
required:
- loginUser
- allowedPrincipals
additionalProperties: false
required:
- id
- projectId
- name
- loginMappings
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/ssh/host-groups:
post:
tags:
- SSH Host Groups
description: Create SSH Host Group
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
projectId:
type: string
description: The ID of the project to create the SSH host group in.
name:
type: string
minLength: 1
maxLength: 64
description: The name of the SSH host group.
loginMappings:
type: array
items:
type: object
properties:
loginUser:
type: string
allowedPrincipals:
type: object
properties:
usernames:
type: array
items:
type: string
groups:
type: array
items:
type: string
additionalProperties: false
required:
- loginUser
- allowedPrincipals
additionalProperties: false
default: []
description: A list of default login mappings to include on each host in the SSH host group. Each login mapping contains a login user and a list of corresponding allowed principals being usernames of users in the Infisical SSH project.
required:
- projectId
- name
additionalProperties: false
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
projectId:
type: string
name:
type: string
loginMappings:
type: array
items:
type: object
properties:
loginUser:
type: string
allowedPrincipals:
type: object
properties:
usernames:
type: array
items:
type: string
groups:
type: array
items:
type: string
additionalProperties: false
required:
- loginUser
- allowedPrincipals
additionalProperties: false
required:
- id
- projectId
- name
- loginMappings
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/ssh/host-groups/{sshHostGroupId}/hosts:
get:
tags:
- SSH Host Groups
description: Get SSH Hosts in a Host Group
parameters:
- schema:
type: string
enum:
- group-members
- non-group-members
in: query
name: filter
required: false
description: The filter to apply to the SSH hosts in the SSH host group.
- schema:
type: string
in: path
name: sshHostGroupId
required: true
description: The ID of the SSH host group to get.
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
hosts:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
hostname:
type: string
alias:
type: string
nullable: true
isPartOfGroup:
type: boolean
joinedGroupAt:
type: string
format: date-time
nullable: true
required:
- id
- hostname
- isPartOfGroup
- joinedGroupAt
additionalProperties: false
totalCount:
type: number
required:
- hosts
- totalCount
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/ssh/host-groups/{sshHostGroupId}/hosts/{hostId}:
post:
tags:
- SSH Host Groups
description: Add an SSH Host to a Host Group
parameters:
- schema:
type: string
in: path
name: sshHostGroupId
required: true
description: The ID of the SSH host group to add the host to.
- schema:
type: string
in: path
name: hostId
required: true
description: The ID of the SSH host to add to the SSH host group.
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
projectId:
type: string
hostname:
type: string
alias:
type: string
# --- truncated at 32 KB (55 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/infisical/refs/heads/main/openapi/infisical-ssh-host-groups-api-openapi.yml