Skip to content

Instantly share code, notes, and snippets.

@LuisMuniz
Created September 30, 2019 13:01
Show Gist options
  • Select an option

  • Save LuisMuniz/50ea33b8cc701ceb818a616cb61efe97 to your computer and use it in GitHub Desktop.

Select an option

Save LuisMuniz/50ea33b8cc701ceb818a616cb61efe97 to your computer and use it in GitHub Desktop.
openapi: 3.0.0
info:
version: '1.0.0'
title: 'SONY Sales Reports API'
description: |
**TODO: Provide description here**
externalDocs:
description: SONY-GW - Architectural Overview
url: https://confluence.b2boost.io/display/TECHDOC/SONY-GW+-+Architectural+Overview
paths:
/api/users/unconfigured:
get:
description: |
**Authorization: ROLE_ADMIN, ROLE_HEADQUARTERS, application: sales-reporting-sony**
Will return the list of users having role `ROLE_UNCONFIGURED_USER` and in the domain `SONY`.
The list can be paginated and sorted
security:
- XAuthentication: []
tags:
- user management
summary: List unconfigured users
parameters:
- $ref: '#/components/parameters/PaginationFrom'
- $ref: '#/components/parameters/PaginationSize'
- $ref: '#/components/parameters/SortColumn'
- $ref: '#/components/parameters/SortOrder'
responses:
200:
description: List of unconfigured users
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/UnconfiguredUserProfile'
components:
securitySchemes:
XAuthentication:
type: apiKey
in: header
name: X-Authentication
description: "JWT B64-encoded access token passed as custom http header"
parameters:
PaginationFrom:
in: query
name: from
description: The offset in the resultset to place the pagination window
schema:
type: integer
default: 0
minimum: 0
required: false
PaginationSize:
in: query
name: size
description: The pagination window size
schema:
type: integer
default: 10
maximum: 1000
required: false
SortOrder:
in: query
name: order
description: The sort order
schema:
type: string
default: asc
required: false
SortColumn:
in: query
name: sort
description: The sort column
schema:
type: string
default: id
required: false
schemas:
UnconfiguredUserProfile:
type: object
allOf:
- $ref: '#/components/schemas/MinimalUserProfile'
example:
domain: SONY
username: [email protected]
firstName: Elaeanor
lastName: Rigby
email: [email protected]
locale: en_UK
roles:
- ROLE_UNCONFIGURED_USER
MinimalUserProfile:
type: object
allOf:
- $ref: '#/components/schemas/MinimalUserProfileUpdate'
properties:
id:
type: integer
format: int64
description: User Id
domain:
type: string
description: The authentication domain that this profile is restricted to.
username:
type: string
example:
id: 121
domain: SONY
username: [email protected]
firstName: Elaeanor
lastName: Rigby
email: [email protected]
locale: en_UK
roles:
- ROLE_USER
- ROLE_ADMIN
MinimalUserProfileUpdate:
type: object
properties:
firstName:
type: string
lastName:
type: string
email:
type: string
format: email
description: Email of the new user
locale:
type: string
description: String representation of a locale
roles:
type: array
items:
type: string
description: The Authorization roles granted to the user in the given application.
example:
domain: SONY
username: [email protected]
firstName: Elaeanor
lastName: Rigby
email: [email protected]
locale: en_UK
roles:
- ROLE_USER
- ROLE_ADMIN
CustomError:
type: object
properties:
code:
type: integer
extendedErrorCode:
type: string
message:
type: string
stackTrace:
type: string
context:
type: object
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment