mirror of
https://github.com/SecurityBrewery/catalyst.git
synced 2025-12-06 07:12:46 +01:00
95 lines
3.6 KiB
YAML
95 lines
3.6 KiB
YAML
swagger: "2.0"
|
|
info: { version: "", title: "" }
|
|
|
|
paths:
|
|
/currentuserdata:
|
|
get:
|
|
tags: [ "userdata" ]
|
|
summary: "Get current user data"
|
|
operationId: "currentUserData"
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { $ref: "#/definitions/UserDataResponse" }
|
|
examples:
|
|
test: { id: bob, name: "Bob Bad", email: "bob@example.org" }
|
|
security: [ { roles: [ "currentuserdata:read" ] } ]
|
|
put:
|
|
tags: [ "userdata" ]
|
|
summary: "Update current user data"
|
|
operationId: "updateCurrentUserData"
|
|
parameters:
|
|
- { name: "userdata", in: "body", description: "User data object that needs to be added", required: true, schema: { $ref: "#/definitions/UserData" }, x-example: { name: "Bob Bad", email: "bob@example.org" } }
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { $ref: "#/definitions/UserDataResponse" }
|
|
examples:
|
|
test: { id: bob, name: "Bob Bad", email: "bob@example.org" }
|
|
security: [ { roles: [ "currentuserdata:write" ] } ]
|
|
|
|
/userdata:
|
|
get:
|
|
tags: [ "userdata" ]
|
|
summary: "List userdata"
|
|
operationId: "listUserData"
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { type: array, items: { $ref: "#/definitions/UserDataResponse" } }
|
|
examples:
|
|
test:
|
|
- { id: bob, name: "Bob Bad", email: "bob@example.org" }
|
|
security: [ { roles: [ "userdata:read" ] } ]
|
|
|
|
/userdata/{id}:
|
|
get:
|
|
tags: [ "userdata" ]
|
|
summary: "Get a single user data"
|
|
operationId: "getUserData"
|
|
parameters:
|
|
- { name: "id", in: "path", description: "User Data ID", required: true, type: string, x-example: "bob" }
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { $ref: "#/definitions/UserDataResponse" }
|
|
examples:
|
|
test:
|
|
id: bob
|
|
name: "Bob Bad"
|
|
email: "bob@example.org"
|
|
security: [ { roles: [ "userdata:read" ] } ]
|
|
put:
|
|
tags: [ "userdata" ]
|
|
summary: "Update an existing user data"
|
|
operationId: "updateUserData"
|
|
parameters:
|
|
- { name: "id", in: "path", description: "User Data ID", required: true, type: string, x-example: "bob" }
|
|
- { name: "userdata", in: "body", description: "User data object that needs to be added", required: true, schema: { $ref: "#/definitions/UserData" }, x-example: { name: "Bob Bad", email: "bob@example.org", blocked: false } }
|
|
responses:
|
|
"200":
|
|
description: "successful operation"
|
|
schema: { $ref: "#/definitions/UserDataResponse" }
|
|
examples:
|
|
test: { id: bob, name: "Bob Bad", email: "bob@example.org" }
|
|
security: [ { roles: [ "userdata:write" ] } ]
|
|
|
|
definitions:
|
|
UserData:
|
|
type: object
|
|
properties:
|
|
name: { type: string, x-example: "Robert Smith" }
|
|
email: { type: string, x-example: "bob@example.org" }
|
|
image: { type: string, x-display: "custom-avatar" }
|
|
timeformat: { title: "Time Format (https://moment.github.io/luxon/docs/manual/formatting.html#table-of-tokens)", type: string }
|
|
|
|
UserDataResponse:
|
|
type: object
|
|
required: [ id ]
|
|
properties:
|
|
id: { type: string }
|
|
name: { type: string, x-example: "Robert Smith" }
|
|
email: { type: string, x-example: "bob@example.org" }
|
|
image: { type: string, x-display: "custom-avatar" }
|
|
timeformat: { title: "Time Format (https://moment.github.io/luxon/docs/manual/formatting.html#table-of-tokens)", type: string }
|