Airia Groups API
The Groups API from Airia — 7 operation(s) for groups.
The Groups API from Airia — 7 operation(s) for groups.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/airia:airia-groups-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Airia Web Groups API
version: 1.0.0
servers:
- url: https://api.airia.ai
tags:
- name: Groups
paths:
/v1/Groups/batch-names:
get:
tags:
- Groups
operationId: Groups_GetGroupNamesByIds2
parameters:
- name: ids
in: query
style: form
explode: true
schema:
type:
- array
- 'null'
items:
type: string
format: guid
x-position: 1
- name: x-correlation-id
in: header
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/EntityNamesResult'
400:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
500:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
summary: Groups get group names by ids2
x-summary-source: derived
/v1/Groups:
get:
tags:
- Groups
operationId: Groups_GetGroups2
parameters:
- name: PageNumber
in: query
schema:
type: integer
format: int32
x-position: 1
- name: PageSize
in: query
schema:
type: integer
format: int32
x-position: 2
- name: SortBy
in: query
schema:
type:
- string
- 'null'
x-position: 3
- name: SortDirection
in: query
schema:
type: string
x-position: 4
- name: filter
in: query
schema:
type:
- string
- 'null'
x-position: 5
- name: prioritizeLeaderGroups
in: query
schema:
type: boolean
default: false
x-position: 6
- name: x-correlation-id
in: header
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/GroupViewModel'
400:
description: ''
401:
description: ''
403:
description: ''
default:
description: ''
summary: Groups get groups2
x-summary-source: derived
post:
tags:
- Groups
operationId: Groups_AddGroup2
parameters:
- name: x-correlation-id
in: header
schema:
type: string
requestBody:
x-name: group
content:
application/json:
schema:
$ref: '#/components/schemas/CreateGroupRequestViewModel'
required: true
x-position: 1
responses:
201:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/GroupViewModel'
400:
description: ''
401:
description: ''
403:
description: ''
409:
description: ''
500:
description: ''
default:
description: ''
summary: Groups add group2
x-summary-source: derived
/v1/Groups/{groupId}:
get:
tags:
- Groups
operationId: Groups_GetGroupsById2
parameters:
- name: groupId
in: path
required: true
schema:
type: string
format: guid
x-position: 1
- name: x-correlation-id
in: header
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/GroupViewModel'
400:
description: ''
404:
description: ''
401:
description: ''
403:
description: ''
default:
description: ''
summary: Groups get groups by id2
x-summary-source: derived
put:
tags:
- Groups
operationId: Groups_UpdateGroup2
parameters:
- name: groupId
in: path
required: true
schema:
type: string
format: guid
x-position: 1
- name: x-correlation-id
in: header
schema:
type: string
requestBody:
x-name: group
content:
application/json:
schema:
$ref: '#/components/schemas/EditGroupRequestViewModel'
required: true
x-position: 2
responses:
200:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/EditGroupRequestViewModel'
400:
description: ''
404:
description: ''
401:
description: ''
403:
description: ''
500:
description: ''
default:
description: ''
summary: Groups update group2
x-summary-source: derived
delete:
tags:
- Groups
operationId: Groups_DeleteGroup2
parameters:
- name: groupId
in: path
required: true
schema:
type: string
x-position: 1
- name: x-correlation-id
in: header
schema:
type: string
responses:
204:
description: ''
400:
description: ''
404:
description: ''
401:
description: ''
403:
description: ''
500:
description: ''
default:
description: ''
summary: Groups delete group2
x-summary-source: derived
/v1/Groups/{groupId}/groups:
post:
tags:
- Groups
operationId: Groups_AssignGroupToUser2
parameters:
- name: groupId
in: path
required: true
schema:
type: string
x-position: 1
- name: x-correlation-id
in: header
schema:
type: string
requestBody:
x-name: groupViewModel
content:
application/json:
schema:
$ref: '#/components/schemas/GroupViewModel'
required: true
x-position: 2
responses:
204:
description: ''
400:
description: ''
404:
description: ''
401:
description: ''
403:
description: ''
500:
description: ''
default:
description: ''
summary: Groups assign group to user2
x-summary-source: derived
/v1/Groups/{groupId}/roles:
post:
tags:
- Groups
operationId: Groups_AssignRoleToGroup2
parameters:
- name: groupId
in: path
required: true
schema:
type: string
x-position: 1
- name: x-correlation-id
in: header
schema:
type: string
requestBody:
x-name: assignUserGroupRoleRequest
content:
application/json:
schema:
$ref: '#/components/schemas/AssignUserGroupRoleRequest'
required: true
x-position: 2
responses:
204:
description: ''
400:
description: ''
401:
description: ''
403:
description: ''
404:
description: ''
default:
description: ''
summary: Groups assign role to group2
x-summary-source: derived
/v1/Groups/AssignRole:
post:
tags:
- Groups
operationId: Groups_AssignRoleToGroupMembers2
parameters:
- name: x-correlation-id
in: header
schema:
type: string
responses:
204:
description: ''
401:
description: ''
403:
description: ''
500:
description: ''
default:
description: ''
summary: Groups assign role to group members2
x-summary-source: derived
/v1/Groups/bulk-invite:
post:
tags:
- Groups
operationId: Groups_BulkInviteGroupUsers2
parameters:
- name: x-correlation-id
in: header
schema:
type: string
requestBody:
x-name: request
content:
application/json:
schema:
$ref: '#/components/schemas/BulkInviteUsersRequest'
required: true
x-position: 1
responses:
200:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/BulkInviteUsersResponse'
400:
description: ''
404:
description: ''
401:
description: ''
summary: Groups bulk invite group users2
x-summary-source: derived
components:
schemas:
EntityNamesResult:
type: object
additionalProperties: false
properties:
names:
type: object
additionalProperties:
type: string
BulkInviteUsersResponse:
type: object
additionalProperties: false
properties:
totalRequested:
type: integer
format: int32
successfullyInvited:
type: integer
format: int32
filteredOut:
type: integer
format: int32
failed:
type: integer
format: int32
successfulInvites:
type: array
items:
$ref: '#/components/schemas/UserInviteResult'
filteredUsers:
type: array
items:
$ref: '#/components/schemas/UserInviteResult'
failedInvites:
type: array
items:
$ref: '#/components/schemas/UserInviteResult'
message:
type: string
CreateGroupRequestViewModel:
type: object
additionalProperties: false
properties:
name:
type: string
roleIds:
type: array
items:
type: string
format: guid
userIds:
type: array
items:
type: string
format: guid
groupLeaderId:
type:
- string
- 'null'
format: guid
projectIds:
type: array
items:
type: string
format: guid
UserInviteResult:
type: object
additionalProperties: false
properties:
userId:
type:
- string
- 'null'
format: guid
email:
type: string
firstName:
type:
- string
- 'null'
lastName:
type:
- string
- 'null'
reason:
type: string
inviteSentDate:
type:
- string
- 'null'
format: date-time
invitationExpirationDate:
type:
- string
- 'null'
format: date-time
EditGroupRequestViewModel:
type: object
additionalProperties: false
properties:
id:
type: string
format: guid
name:
type: string
roleIds:
type:
- array
- 'null'
items:
type: string
format: guid
userIds:
type: array
items:
type: string
format: guid
groupLeaderId:
type:
- string
- 'null'
format: guid
projectIds:
type:
- array
- 'null'
items:
type: string
format: guid
AssignUserGroupRoleRequest:
type: object
additionalProperties: false
properties:
groupId:
type: string
format: guid
roleIds:
type: array
items:
type: string
format: guid
projectIds:
type:
- array
- 'null'
items:
type: string
format: guid
GroupViewModel:
type: object
additionalProperties: false
properties:
id:
type: string
format: guid
name:
type: string
parentId:
type:
- string
- 'null'
createdAt:
type: string
format: date-time
updatedAt:
type:
- string
- 'null'
format: date-time
identityServerGroupId:
type:
- string
- 'null'
format: guid
groupType:
$ref: '#/components/schemas/GroupType'
users:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/UserViewModel'
totalUsers:
type: integer
format: int32
rolesList:
type: array
items:
$ref: '#/components/schemas/RoleViewModel'
isIdpProvisioned:
type: boolean
groupLeader:
oneOf:
- $ref: '#/components/schemas/UserViewModel'
projectIds:
type: array
items:
type: string
format: guid
RoleViewModel:
type: object
additionalProperties: false
properties:
id:
type: string
format: guid
name:
type: string
displayName:
type:
- string
- 'null'
description:
type:
- string
- 'null'
projectId:
type:
- string
- 'null'
format: guid
ProblemDetails:
type: object
additionalProperties: {}
properties:
type:
type:
- string
- 'null'
title:
type:
- string
- 'null'
status:
type:
- integer
- 'null'
format: int32
detail:
type:
- string
- 'null'
instance:
type:
- string
- 'null'
GroupType:
type: string
description: ''
x-enumNames:
- Feature
- Tenant
- Keycloak
- EndpointDiscovered
enum:
- Feature
- Tenant
- Keycloak
- EndpointDiscovered
UserViewModel:
type: object
additionalProperties: false
required:
- id
properties:
id:
type: string
format: guid
identityServerUserId:
type: string
firstName:
type: string
lastName:
type:
- string
- 'null'
email:
type:
- string
- 'null'
phoneNumber:
type:
- string
- 'null'
isActive:
type: boolean
isCurrentLoggedInUser:
type: boolean
lastTenantId:
type:
- string
- 'null'
format: guid
groups:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/GroupViewModel'
roles:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/RoleViewModel'
organizationNames:
type:
- array
- 'null'
items:
type: string
organizationIds:
type:
- array
- 'null'
items:
type: string
format: guid
createdAt:
type:
- string
- 'null'
format: date-time
updatedAt:
type:
- string
- 'null'
format: date-time
lastLogin:
type:
- string
- 'null'
format: date-time
isIdpProvisioned:
type: boolean
projectIds:
type:
- array
- 'null'
items:
type: string
lastInviteSentDate:
type:
- string
- 'null'
format: date-time
invitationExpirationDate:
type:
- string
- 'null'
format: date-time
isEligibleForReinvite:
type: boolean
profileImageUrl:
type:
- string
- 'null'
isDeleted:
type: boolean
departmentId:
type:
- string
- 'null'
format: guid
departmentLabel:
type:
- string
- 'null'
BulkInviteUsersRequest:
type: object
additionalProperties: false
required:
- groupId
properties:
groupId:
type: string
format: guid
minLength: 1
securitySchemes:
ApiKey:
type: apiKey
description: API Key Authentication
name: X-API-Key
in: header
Cookies:
type: apiKey
description: Cookie based Authentication
name: Cookie
in: header
x-generator: NSwag v14.7.1.0 (NJsonSchema v11.6.1.0 (Newtonsoft.Json v13.0.0.0))