Clean open api spec

This commit is contained in:
ricardo 2022-04-14 17:43:06 -04:00
parent e8d93e01f9
commit f8dd4159a8

View file

@ -14,6 +14,9 @@ externalDocs:
description: Find out more about Swagger description: Find out more about Swagger
url: http://swagger.io url: http://swagger.io
servers: servers:
# Added by API Auto Mocking Plugin
- description: SwaggerHub API Auto Mocking
url: https://virtserver.swaggerhub.com/RicardoE105/n8n/1.0.0
- url: /api/v1 - url: /api/v1
tags: tags:
- name: users - name: users
@ -29,21 +32,19 @@ paths:
tags: tags:
- users - users
summary: Retrieve all users summary: Retrieve all users
description: Retrieve all users from your instance. Only available for the instance owner. description: Retrieve all users from your instance. Only available for the instance owner
parameters: parameters:
- name: limit - name: limit
in: query in: query
description: The maximum number of items to return description: The maximum number of items to return
required: false required: false
style: form
explode: true
schema: schema:
type: number type: number
example: 100 example: 100
default: 100 default: 100
- name: cursor - name: cursor
in: query in: query
description: Paginate through users by setting the cursor parameter to a nextCursor attribute returned by a previous request's response_metadata. Default value fetches the first "page" of the collection. See pagination for more detail. description: Paginate through users by setting the cursor parameter to a nextCursor attribute returned by a previous request's response. Default value fetches the first "page" of the collection. See pagination for more detail
required: false required: false
style: form style: form
explode: true explode: true
@ -55,16 +56,18 @@ paths:
required: false required: false
style: form style: form
explode: true explode: true
description: Whether to include the role information the user object
schema: schema:
type: boolean type: boolean
example: true example: false
default: false
responses: responses:
"200": "200":
description: Successful operation description: Successful operation
content: content:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/inline_response_200' $ref: '#/components/schemas/UserDetailsResponse'
"401": "401":
description: Unauthorized description: Unauthorized
content: content:
@ -84,7 +87,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/Users' $ref: '#/components/schemas/UserInformation'
required: true required: true
responses: responses:
"200": "200":
@ -92,19 +95,15 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/Users' type: array
items:
$ref: '#/components/schemas/UserInformation'
"401": "401":
description: Unauthorized description: Unauthorized
content: content:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/Error' $ref: '#/components/schemas/Error'
"422":
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/InputValidationError'
/users/{identifier}: /users/{identifier}:
get: get:
x-eov-operation-id: getUser x-eov-operation-id: getUser
@ -119,16 +118,12 @@ paths:
in: path in: path
description: The ID or email of the user description: The ID or email of the user
required: true required: true
style: simple
explode: false
schema: schema:
type: string type: string
format: identifier format: identifier
- name: includeRole - name: includeRole
in: query in: query
required: false required: false
style: form
explode: true
schema: schema:
type: boolean type: boolean
example: true example: true
@ -138,7 +133,7 @@ paths:
content: content:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/User' $ref: '#/components/schemas/UserInformation'
"401": "401":
description: Unauthorized description: Unauthorized
content: content:
@ -158,8 +153,6 @@ paths:
in: path in: path
description: The name that needs to be deleted description: The name that needs to be deleted
required: true required: true
style: simple
explode: false
schema: schema:
type: string type: string
format: identifier format: identifier
@ -167,21 +160,21 @@ paths:
in: query in: query
description: ID of the user to transfer workflows and credentials to. description: ID of the user to transfer workflows and credentials to.
required: false required: false
style: form
explode: true
schema: schema:
type: string type: string
- name: includeRole - name: includeRole
in: query in: query
required: false required: false
style: form
explode: true
schema: schema:
type: boolean type: boolean
example: true example: true
responses: responses:
"200": "200":
description: User deleted successfully description: Successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/UserInformation'
"401": "401":
description: Unauthorized description: Unauthorized
content: content:
@ -192,19 +185,6 @@ paths:
description: User not found description: User not found
components: components:
schemas: schemas:
InputValidationError:
required:
- code
- description
- message
type: object
properties:
code:
type: string
message:
type: string
errors:
$ref: '#/components/schemas/Errors'
Error: Error:
required: required:
- code - code
@ -218,15 +198,7 @@ components:
type: string type: string
description: description:
type: string type: string
Errors: UserInformation:
type: array
items:
$ref: '#/components/schemas/Error'
Users:
type: array
items:
$ref: '#/components/schemas/User'
User:
required: required:
- email - email
type: object type: object
@ -251,7 +223,7 @@ components:
description: User's last name description: User's last name
readOnly: true readOnly: true
example: doe example: doe
pending: isPending:
type: boolean type: boolean
description: Whether the user finished setting up the invitation or not description: Whether the user finished setting up the invitation or not
readOnly: true readOnly: true
@ -265,18 +237,45 @@ components:
description: Last time the user was updaded description: Last time the user was updaded
format: date-time format: date-time
readOnly: true readOnly: true
inline_response_200: globalRole:
$ref: '#/components/schemas/RoleInformation'
UserDetailsResponse:
type: object type: object
properties: properties:
users: data:
type: array type: array
items: items:
$ref: '#/components/schemas/User' $ref: '#/components/schemas/UserInformation'
nextCursor: nextCursor:
type: string type: string
description: Paginate through users by setting the cursor parameter to a nextCursor attribute returned by a previous request. Default value fetches the first "page" of the collection. description: Paginate through users by setting the cursor parameter to a nextCursor attribute returned by a previous request. Default value fetches the first "page" of the collection.
nullable: true nullable: true
example: MTIzZTQ1NjctZTg5Yi0xMmQzLWE0NTYtNDI2NjE0MTc0MDA example: MTIzZTQ1NjctZTg5Yi0xMmQzLWE0NTYtNDI2NjE0MTc0MDA
RoleInformation:
type: object
properties:
id:
type: number
readOnly: true
example: 1
name:
type: string
example: owner
readOnly: true
scope:
type: string
readOnly: true
example: global
createdAt:
type: string
description: Time the role was created
format: date-time
readOnly: true
updatedAt:
type: string
description: Last time the role was updaded
format: date-time
readOnly: true
responses: responses:
NotFound: NotFound:
description: The specified resource was not found description: The specified resource was not found
@ -296,12 +295,6 @@ components:
application/json: application/json:
schema: schema:
$ref: '#/components/schemas/Error' $ref: '#/components/schemas/Error'
UnprocessableEntity:
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/InputValidationError'
securitySchemes: securitySchemes:
ApiKeyAuth: ApiKeyAuth:
type: apiKey type: apiKey