mirror of
https://github.com/SecurityBrewery/catalyst.git
synced 2025-12-06 07:12:46 +01:00
85 lines
2.6 KiB
YAML
85 lines
2.6 KiB
YAML
swagger: "2.0"
|
|
info: { version: "", title: "" }
|
|
|
|
paths:
|
|
/groups:
|
|
get:
|
|
tags: [ "groups" ]
|
|
summary: "List groups"
|
|
operationId: "listGroups"
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { type: array, items: { $ref: "#/definitions/Group" } }
|
|
security: [ { roles: [ "group:read" ] } ]
|
|
post:
|
|
tags: [ "groups" ]
|
|
summary: "Create a new group"
|
|
operationId: "createGroup"
|
|
parameters:
|
|
- { name: "group", in: "body", description: "New group", required: true, schema: { $ref: "#/definitions/GroupForm" } }
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { $ref: "#/definitions/GroupResponse" }
|
|
security: [ { roles: [ "group:write" ] } ]
|
|
|
|
/groups/{id}:
|
|
get:
|
|
tags: [ "groups" ]
|
|
summary: "Get a single group"
|
|
operationId: "getGroup"
|
|
parameters:
|
|
- { name: "id", in: "path", description: "Group ID", required: true, type: string }
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { $ref: "#/definitions/GroupResponse" }
|
|
security: [ { roles: [ "group:read" ] } ]
|
|
put:
|
|
tags: [ "groups" ]
|
|
summary: "Update an existing group"
|
|
operationId: "updateGroup"
|
|
parameters:
|
|
- { name: "id", in: "path", description: "Group ID", required: true, type: string }
|
|
- { name: "group", in: "body", description: "Group object that needs to be added", required: true, schema: { $ref: "#/definitions/Group" } }
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { $ref: "#/definitions/Group" }
|
|
security: [ { roles: [ "group:write" ] } ]
|
|
delete:
|
|
tags: [ "groups" ]
|
|
summary: "Delete a group"
|
|
operationId: "deleteGroup"
|
|
parameters:
|
|
- { name: "id", in: "path", description: "Group ID", required: true, type: string }
|
|
responses:
|
|
"204": { description: "successful operation" }
|
|
security: [ { roles: [ "group:write" ] } ]
|
|
|
|
definitions:
|
|
GroupForm:
|
|
type: object
|
|
required: [ name, users ]
|
|
properties:
|
|
id: { type: string }
|
|
name: { type: string }
|
|
users: { type: array, items: { type: string } }
|
|
|
|
Group:
|
|
type: object
|
|
required: [ name, users ]
|
|
properties:
|
|
name: { type: string }
|
|
users: { type: array, items: { type: string } }
|
|
|
|
|
|
GroupResponse:
|
|
type: object
|
|
required: [ id, name, users ]
|
|
properties:
|
|
id: { type: string }
|
|
name: { type: string }
|
|
users: { type: array, items: { type: string } }
|