Unable to create Model: Invalid model specified: Validation Result: warning
0
Hey there,
I get errors importing models that work perfactly fine in swagger editor (editor.swagger.io) but won't be imported to API Gateway:
Your API was not imported due to errors in the Swagger file.
Unable to create model for 'ResponseInfo': Invalid model specified: Validation Result: warnings : [], errors : [Invalid model schema specified, Invalid model schema specified]
Unable to create model for 'Company': Invalid model specified: Validation Result: warnings : [], errors : [Invalid model schema specified]
Unable to create model for 'AccessToken': Invalid model specified: Validation Result: warnings : [], errors : [Invalid model schema specified, Invalid model schema specified, Invalid model schema specified, Invalid model schema specified]
Unable to create model for 'Booking': Invalid model specified: Validation Result: warnings : [], errors : [Invalid model schema specified]
Additionally, these warnings were found:
Unsupported security definition type 'oauth2' for 'auth'. Ignoring.
Unable to insert model 'Response' due to an unsatisfied schema reference.
Unable to insert model 'User' due to an unsatisfied schema reference.
Unable to insert model 'CardStack' due to an unsatisfied schema reference.
Unable to insert model 'Card' due to an unsatisfied schema reference.
Reference to model 'AccessToken' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'CardStack' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'CardStack' in 200 response to method 'GET /cardStacks' not found. Ignoring.
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'CardStack' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'CardStack' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Card' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Card' in 200 response to method 'GET /cards' not found. Ignoring.
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Card' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Card' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Request schema for 'POST /users' has a reference to unknown model 'Company'. Ignoring.
Reference to model 'User' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'User' in 200 response to method 'GET /users' not found. Ignoring.
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method DELETE
Request schema for 'PUT /users/{userID}' has a reference to unknown model 'Company'. Ignoring.
Reference to model 'User' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method PUT
Reference to model 'User' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method GET
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Reference to model 'Response' not found. Ignoring.
Invalid format for model application/json for method POST
Here is my swagger definition:
swagger: '2.0'
info:
title: MilesMarket API
description: This is the definition for the API Gateway of the Miles&More MilesMarket platform.
version: 1.0.0
contact:
name: MilesMarket API Team
url: 'http://www.milesandmore.com'
email: apiteam@milesandmore.com
license:
name: All rights reserved.
url: 'http://www.milesandmore.com'
host: milesmarket.milesandmore.com
basePath: /api/v1
schemes:
- http
- https
tags:
- name: user
description: All user related operations
- name: card
description: All card related operations
consumes:
- application/json
produces:
- application/json
securityDefinitions:
auth:
type: oauth2
tokenUrl: 'https://milesmarket.milesandmore.com/api/v1/user/login'
flow: password
scopes:
user: All user related information
admin: scope of administrative users
api_key:
type: apiKey
in: header
description: |
The API key identifies a specific client application. It serves no security purpose. This key may only be used by the official Luerssen iOS and Android apps.
name: x-api-key
paths:
/auth/login:
post:
tags:
- auth
summary: Login for user that return a bearer token for further authentication
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
parameters:
- name: body
in: body
required: true
schema:
type: object
required:
- email
- password
properties:
email:
description: |
The user name for login
type: string
password:
description: |
The password for login in clear text
type: string
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/AccessToken'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
User credentials provided are not valid
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
/users:
get:
tags:
- user
summary: |
List all users and their profile data regarding the given pagination info. Maximum number of returned items is by default 250.
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
parameters:
- name: body
in: body
required: true
schema:
type: object
properties:
page:
type: integer
description: |
selected page to be requested from user base
format: int32
default: 0
pageSize:
type: integer
description: |
amount of items per page
format: int32
default: 250
orderBy:
type: string
description: |
the user entity property the collection should be ordered by
default: id
order:
type: string
description: |
the user entity property the collection should be ordered by
default: DESC
enum:
- ASC
- DESC
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
type: object
properties:
page:
type: integer
description: |
Current page to be delivered.
format: int32
example: 0
pageSize:
type: integer
description: |
The amount of items delivered per page
format: int32
example: 250
maxItemCount:
type: integer
description: |
The amount of all items that could be delivered by the current request criteria
format: int32
example: 1233
items:
type: array
items:
$ref: '#/definitions/User'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
post:
tags:
- user
summary: |
Register a new user for the system. The user will be created by the user service and DOI Link will be send to the users email address. The new user needs to be activated via DOI.
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
parameters:
- name: body
in: body
required: true
schema:
type: object
required:
- email
- password
properties:
email:
description: |
The users email that is also used to login purpos
type: string
password:
description: |
The password for login in clear text
type: string
firstname:
description: |
The users firstname
type: string
lastname:
description: |
The users lastname
type: string
phoneCountryCode:
description: |
The users phone country code
type: string
phone:
description: |
The users phone number
type: string
company:
$ref: '#/definitions/Company'
responses:
'201':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/User'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'/users/{userID}':
get:
tags:
- user
summary: |
Get a users profile data
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
- user
parameters:
- name: userID
description: |
The unique identifier of the user to accept the doi for
in: path
type: string
required: true
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/User'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'404':
description: |
User unknow. The requested user ressource is not valid.
schema:
$ref: '#/definitions/Response'
put:
tags:
- user
summary: |
Edit users profile data
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
- user
parameters:
- name: userID
description: |
The unique identifier of the user
in: path
type: string
required: true
- name: body
in: body
required: true
schema:
type: object
properties:
firstname:
description: |
The users firstname
type: string
lastname:
description: |
The users lastname
type: string
phoneCountryCode:
description: |
The users phone country code
type: string
phone:
description: |
The users phone number
type: string
status:
type: string
enum:
- active
- inactive
company:
$ref: '#/definitions/Company'
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/User'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'404':
description: |
User unknow. The requested user ressource is not valid.
schema:
$ref: '#/definitions/Response'
delete:
tags:
- user
summary: |
Delete a users profile data
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
- user
parameters:
- name: userID
description: |
The unique identifier of the user to accept the doi for
in: path
type: string
required: true
responses:
'201':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Response'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'404':
description: |
User unknow. The requested user ressource is not valid.
schema:
$ref: '#/definitions/Response'
'/users/{userID}/acceptDOI':
post:
tags:
- user
summary: |
Accept the DOI for a given user with userID and doiToken send to the user via E-Mail
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
parameters:
- name: userID
description: |
The unique identifier of the user to accept the doi for
in: path
type: string
required: true
- name: doiToken
description: |
The doi token that has been send via E-Mail to the user
in: query
type: string
required: true
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Response'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'404':
description: |
User unknow. The requested user ressource is not valid.
schema:
$ref: '#/definitions/Response'
'/users/{userID}/sendPWRecoveryLink':
post:
tags:
- user
summary: |
Generate a PW recovery token and send this token to users email address.
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
parameters:
- name: userID
description: |
The unique identifier of the user
in: path
type: string
required: true
responses:
'201':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Response'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'404':
description: |
User unknow. The requested user ressource is not valid.
schema:
$ref: '#/definitions/Response'
'/users/{userID}/resetPW':
post:
tags:
- user
summary: |
Store newly created password to the users profile.
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
parameters:
- name: userID
description: |
The unique identifier of the user
in: path
type: string
required: true
- name: body
in: body
required: true
schema:
type: object
required:
- recoveryToken
- password
properties:
recoveryToken:
type: string
description: |
The recovery token the user received via email
password:
type: string
description: |
The password given by the user to be stored to the users profile
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Response'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'404':
description: |
User unknow. The requested user ressource is not valid.
schema:
$ref: '#/definitions/Response'
/cards:
get:
tags:
- card
summary: |
List all cards regarding the given pagination info. Maximum number of returned items is by default 250.
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
parameters:
- name: body
in: body
required: true
schema:
type: object
properties:
page:
type: integer
description: |
selected page to be requested from user base
format: int32
default: 0
pageSize:
type: integer
description: |
amount of items per page
format: int32
default: 250
orderBy:
type: string
description: |
the user entity property the collection should be ordered by
default: id
order:
type: string
description: |
the user entity property the collection should be ordered by
default: DESC
enum:
- ASC
- DESC
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
type: object
properties:
page:
type: integer
description: |
Current page to be delivered.
format: int32
example: 0
pageSize:
type: integer
description: |
The amount of items delivered per page
format: int32
example: 250
maxItemCount:
type: integer
description: |
The amount of all items that could be delivered by the current request criteria
format: int32
example: 1233
items:
type: array
items:
$ref: '#/definitions/Card'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
post:
tags:
- card
summary: |
Create a new card
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
- user
parameters:
- name: body
in: body
required: true
schema:
type: object
properties:
type:
type: integer
description: |
Type of card (e.g.: customer_card, info_card, feedback_card) as an integer representing the position of the type element inside the type ENUM
format: int32
headline:
type: string
description: |
The cards headline on the front side of the card
example: Testaktion
subHeadline:
type: string
description: |
The cards sub headline on the front side of the card
example: Mehr infos wir Testaktion
ctaText:
type: string
description: |
Call to action text shown on the front side of the card
example: Mehr...
ctaLink:
type: string
description: |
Call to action link
example: 'http://...'
longDescription:
type: string
description: |
Long description text shown on the front side of the card
example: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.'
titleAssetURI:
type: string
description: |
URI of the asset shown on the front side of the card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
additionalHeadline:
type: string
description: |
An additional headline that can be shown on the back side of the card
example: Rückseitentext
additionalLongDescription:
type: string
description: |
An additional description text that can be shown on the back side of the card
example: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.'
additionalAssetURI:
type: string
description: |
URI of t he asset shown on the back side of the card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
price:
type: string
description: |
Price information that can be shown on the back side of the card
example: 13€
website:
type: string
description: |
Additional website that can be shown on the back side of the card
example: 'http://www.mustermannag.de/testaktion'
legal:
type: string
description: |
Legal information that can be shown on the back side of the card
example: Disclaimer...
street:
type: string
description: |
Adress information (street) to be shown on the back side of the card
example: Teststraße
streetNo:
type: string
description: |
Adress information (streetNo) to be shown on the back side of the card
example: 1
zip:
type: string
description: |
Adress information (zip) to be shown on the back side of the card
example: 12345
city:
type: string
description: |
Adress information (city) to be shown on the back side of the card
example: Musterhausen
countryCode:
type: string
description: |
Adress information (countryCode) to be shown on the back side of the card
example: DE
additionalAdressInfo:
type: string
description: |
Adress information (additional adress info) to be shown on the back side of the card
example: 1. OG
responses:
'201':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Card'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'/cards/{cardID}':
get:
tags:
- card
summary: |
Get card data
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
parameters:
- name: cardID
description: |
The unique identifier of the card
in: path
type: string
required: true
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Card'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
put:
tags:
- card
summary: |
Edit card data
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
- user
parameters:
- name: cardID
description: |
The unique identifier of the card
in: path
type: string
required: true
- name: body
in: body
required: true
schema:
type: object
properties:
type:
type: integer
description: |
Type of card (e.g.: customer_card, info_card, feedback_card) as an integer representing the position of the type element inside the type ENUM
format: int32
headline:
type: string
description: |
The cards headline on the front side of the card
example: Testaktion
subHeadline:
type: string
description: |
The cards sub headline on the front side of the card
example: Mehr infos wir Testaktion
ctaText:
type: string
description: |
Call to action text shown on the front side of the card
example: Mehr...
ctaLink:
type: string
description: |
Call to action link
example: 'http://...'
longDescription:
type: string
description: |
Long description text shown on the front side of the card
example: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.'
titleAssetURI:
type: string
description: |
URI of the asset shown on the front side of the card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
additionalHeadline:
type: string
description: |
An additional headline that can be shown on the back side of the card
example: Rückseitentext
additionalLongDescription:
type: string
description: |
An additional description text that can be shown on the back side of the card
example: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.'
additionalAssetURI:
type: string
description: |
URI of t he asset shown on the back side of the card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
price:
type: string
description: |
Price information that can be shown on the back side of the card
example: 13€
website:
type: string
description: |
Additional website that can be shown on the back side of the card
example: 'http://www.mustermannag.de/testaktion'
legal:
type: string
description: |
Legal information that can be shown on the back side of the card
example: Disclaimer...
street:
type: string
description: |
Adress information (street) to be shown on the back side of the card
example: Teststraße
streetNo:
type: string
description: |
Adress information (streetNo) to be shown on the back side of the card
example: 1
zip:
type: string
description: |
Adress information (zip) to be shown on the back side of the card
example: 12345
city:
type: string
description: |
Adress information (city) to be shown on the back side of the card
example: Musterhausen
countryCode:
type: string
description: |
Adress information (countryCode) to be shown on the back side of the card
example: DE
additionalAdressInfo:
type: string
description: |
Adress information (additional adress info) to be shown on the back side of the card
example: 1. OG
status:
type: integer
format: int32
description: |
Status of card (e.g.: active, inactive, published...) as an integer representing the position of the status element inside the status ENUM
example: 0
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Card'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
delete:
tags:
- card
summary: |
Delete a card
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
- user
parameters:
- name: cardID
description: |
The unique identifier of the card
in: path
type: string
required: true
responses:
'201':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Response'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
/cardStacks:
get:
tags:
- card
summary: |
List all cardStacks and regarding the given pagination info. Maximum number of returned items is by default 250.
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
parameters:
- name: body
in: body
required: true
schema:
type: object
properties:
page:
type: integer
description: |
selected page to be requested from user base
format: int32
default: 0
pageSize:
type: integer
description: |
amount of items per page
format: int32
default: 250
orderBy:
type: string
description: |
the user entity property the collection should be ordered by
default: id
order:
type: string
description: |
the user entity property the collection should be ordered by
default: DESC
enum:
- ASC
- DESC
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
type: object
properties:
page:
type: integer
description: |
Current page to be delivered.
format: int32
example: 0
pageSize:
type: integer
description: |
The amount of items delivered per page
format: int32
example: 250
maxItemCount:
type: integer
description: |
The amount of all items that could be delivered by the current request criteria
format: int32
example: 1233
items:
type: array
items:
$ref: '#/definitions/CardStack'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
post:
tags:
- card
summary: |
Create a new cardStack
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
parameters:
- name: body
in: body
required: true
schema:
type: object
properties:
headline:
type: string
description: |
The cardStacks headline
example: Wien
subHeadline:
type: string
description: |
The cardStacks sub headline
example: Toller Sommer in Wien
titleAssetURI:
type: string
description: |
URI of the asset shown as title of the stack
example: D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
introHeadline:
type: string
description: |
Headline shown on the intro card (first card) of the stack
example: Somme in Wien
introAssetURI:
type: string
description: |
URI of the asset shown on the intro card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_intro.png
introCtaText:
type: string
description: |
Call to action text shown on the intro card
example: Mehr...
startDate:
type: string
format: date
description: |
Start date of the card stack
example: '2017-08-10T00:00:00Z'
endDate:
type: string
format: date
description: |
End date of the card stack
example: '2017-08-10T00:00:00Z'
milageReward:
type: integer
format: int32
description: |
Amount of miles that the user gets assigned if he steps through the whole stack of cards
example: 50
randomSort:
type: boolean
description: Should the cards be sorted randomly
example: false
segmentation:
type: array
description: |
Tagging of the advertisement to configure a unique segmentation
items:
type: string
example: WIEN
legal:
type: string
description: |
Legal information for the whole card stack
example: Disclaimer...
responses:
'201':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/CardStack'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'/cardStacks/{cardStackID}':
get:
tags:
- card
summary: |
Get cardStack data
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
parameters:
- name: cardStackID
description: |
The unique identifier of the cardStack
in: path
type: string
required: true
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/CardStack'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
put:
tags:
- card
summary: |
Edit cardStack data
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
parameters:
- name: cardStackID
description: |
The unique identifier of the card
in: path
type: string
required: true
- name: body
in: body
required: true
schema:
type: object
properties:
headline:
type: string
description: |
The cardStacks headline
example: Wien
subHeadline:
type: string
description: |
The cardStacks sub headline
example: Toller Sommer in Wien
titleAssetURI:
type: string
description: |
URI of the asset shown as title of the stack
example: D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
introHeadline:
type: string
description: |
Headline shown on the intro card (first card) of the stack
example: Somme in Wien
introAssetURI:
type: string
description: |
URI of the asset shown on the intro card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_intro.png
introCtaText:
type: string
description: |
Call to action text shown on the intro card
example: Mehr...
startDate:
type: string
format: date
description: |
Start date of the card stack
example: '2017-08-10T00:00:00Z'
endDate:
type: string
format: date
description: |
End date of the card stack
example: '2017-08-10T00:00:00Z'
milageReward:
type: integer
format: int32
description: |
Amount of miles that the user gets assigned if he steps through the whole stack of cards
example: 50
randomSort:
type: boolean
description: Should the cards be sorted randomly
example: false
segmentation:
type: array
description: |
Tagging of the advertisement to configure a unique segmentation
items:
type: string
example: WIEN
legal:
type: string
description: |
Legal information for the whole card stack
example: Disclaimer...
status:
type: integer
format: int32
description: |
Status of cardStack (e.g.: active, inactive, published...) as an integer representing the position of the status element inside the status ENUM
example: 0
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/CardStack'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
delete:
tags:
- card
summary: |
Delete cardStack
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
parameters:
- name: cardStackID
description: |
The unique identifier of the cardstack
in: path
type: string
required: true
responses:
'201':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Response'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'/cardStacks/{cardStackID}/cards':
post:
tags:
- card
summary: |
Add a card to a cardStack
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
parameters:
- name: cardStackID
description: |
The unique identifier of the card
in: path
type: string
required: true
- name: body
in: body
required: true
schema:
type: object
properties:
cardID:
type: string
description: |
The unique identifier of the card to add to the stack
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1
position:
type: integer
format: int32
description: |
The position of the card inside the stack
example: 2
isBackup:
type: boolean
description: |
Wether or not the added card is a backup card
example: false
responses:
'201':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Response'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
'/cardStacks/{cardStackID}/cards/{cardID}':
delete:
tags:
- card
summary: |
Remove a card from a cardStack
consumes:
- application/json
produces:
- application/json
security:
- api_key: []
- auth:
- admin
parameters:
- name: cardStackID
description: |
The unique identifier of the cardstack
in: path
type: string
required: true
- name: cardID
description: |
The unique identifier of the card
in: path
type: string
required: true
responses:
'200':
description: |
successful operation
headers:
Etag:
description: Unique document identifier
type: string
schema:
$ref: '#/definitions/Response'
'400':
description: |
Bad Request. The request could not be fulfilled due to the incorrect syntax of the request.
schema:
$ref: '#/definitions/Response'
'401':
description: |
Unauthorized. The request could not be fulfilled due to incorrect authentication.
schema:
$ref: '#/definitions/Response'
'403':
description: |
Forbidden. The client is not authorized to access the requested ressource.
schema:
$ref: '#/definitions/Response'
definitions:
Response:
type: object
required:
- code
- message
properties:
code:
description: |
status code uniquely identifying a specific problem.
type: string
example: 100
readOnly: true
message:
description: |
human readable description of the status, providing reasonable insight into why we error occured - if any.
type: string
example: success
readOnly: true
fields:
description: |
affected fields, if any
type: array
readOnly: true
items:
$ref: '#/definitions/ResponseInfo'
ResponseInfo:
type: object
required:
- name
- description
properties:
name:
description: |
name of the field which produced the error
type: string
readOnly: true
description:
description: |
human readable description about the nature of the error (e.g. expected value type vs. actual value)
type: string
readOnly: true
AccessToken:
type: object
properties:
accessToken:
description: |
Access Token (JWT)
type: string
example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ
readOnly: true
expires:
description: |
UTC date and time when the token expires
type: string
format: date
example: '1426420800'
readOnly: true
tokenType:
description: |
bearer
type: string
example: bearer
readOnly: true
scope:
description: |
Scope of the access token
type: string
example: admin
readOnly: true
User:
type: object
properties:
id:
type: string
description: |
A unique identifier for the company record
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1
readOnly: true
email:
description: |
The users email that is also used to login purpos
type: string
example: test@mustermann.de
firstname:
description: |
The users firstname
type: string
example: Test
lastname:
description: |
The users lastname
type: string
example: Mustermann
phoneCountryCode:
description: |
The users phone country code
type: string
example: '+49'
phone:
description: |
The users phone number
type: string
example: 0123 4532345
status:
description: |
Status of user (e.g.: active, inactive...) as an integer representing the position of the status element inside the status ENUM
type: integer
format: int32
example: 0
company:
$ref: '#/definitions/Company'
Company:
type: object
properties:
id:
type: string
description: |
A unique identifier for the company record
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1
readOnly: true
name:
type: string
description: |
The companys name
example: Mustermann AG
email:
type: string
description: |
The companys email adress
example: info@mustermannag.de
website:
type: string
description: |
The companys website
example: www.mustermannag.de
phoneCountryCode:
type: string
description: |
The country dial code of the companys phone number
example: '+49'
phone:
type: string
description: |
The companys phone number
example: 0123 4532345
street:
type: string
description: |
Adress information (street) for the company
example: Teststraße
streetNo:
type: string
description: |
Adress information (streetNo) for the company
example: '1'
zip:
type: string
description: |
Adress information (zip) for the company
example: 12345'
city:
type: string
description: |
Adress information (city) for the company
example: Musterhausen
countryCode:
type: string
description: |
Adress information (country code) for the company
example: DE
additionalAdressInfo:
type: string
description: |
Aditional adress information stored for the company
example: 1. OG
status:
description: |
Status of the company (e.g.: active, inactive...) as an integer representing the position of the status element inside the status ENUM
type: integer
format: int32
example: 0
Card:
type: object
properties:
id:
type: string
description: |
unique identifier of the cards
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1
readOnly: true
type:
type: integer
description: |
Type of card (e.g.: customer_card, info_card, feedback_card) as an integer representing the position of the type element inside the type ENUM
format: int32
example: 0
headline:
type: string
description: |
The cards headline on the front side of the card
example: Testaktion
subHeadline:
type: string
description: |
The cards sub headline on the front side of the card
example: Mehr infos wir Testaktion
ctaText:
type: string
description: |
Call to action text shown on the front side of the card
example: Mehr...
ctaLink:
type: string
description: |
Call to action link
example: 'http://...'
longDescription:
type: string
description: |
Long description text shown on the front side of the card
example: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.'
titleAssetURI:
type: string
description: |
URI of the asset shown on the front side of the card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
additionalHeadline:
type: string
description: |
An additional headline that can be shown on the back side of the card
example: Rückseitentext
additionalLongDescription:
type: string
description: |
An additional description text that can be shown on the back side of the card
example: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.'
additionalAssetURI:
type: string
description: |
URI of t he asset shown on the back side of the card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
price:
type: string
description: |
Price information that can be shown on the back side of the card
example: 13€
website:
type: string
description: |
Additional website that can be shown on the back side of the card
example: 'http://www.mustermannag.de/testaktion'
legal:
type: string
description: |
Legal information that can be shown on the back side of the card
example: Disclaimer...
street:
type: string
description: |
Adress information (street) to be shown on the back side of the card
example: Teststraße
streetNo:
type: string
description: |
Adress information (streetNo) to be shown on the back side of the card
example: 1
zip:
type: string
description: |
Adress information (zip) to be shown on the back side of the card
example: 12345
city:
type: string
description: |
Adress information (city) to be shown on the back side of the card
example: Musterhausen
countryCode:
type: string
description: |
Adress information (countryCode) to be shown on the back side of the card
example: DE
additionalAdressInfo:
type: string
description: |
Adress information (additional adress info) to be shown on the back side of the card
example: 1. OG
status:
type: integer
format: int32
description: |
Status of card (e.g.: active, inactive, published...) as an integer representing the position of the status element inside the status ENUM
example: 0
booking:
$ref: '#/definitions/Booking'
statistics:
$ref: '#/definitions/Statistics'
Booking:
type: object
properties:
id:
type: string
description: |
unique identifier of a booking
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1
readOnly: true
startDate:
type: string
format: date
description: |
The start date for the advertisment periode
example: '2017-08-20T00:00:00Z'
endDate:
type: string
format: date
description: |
The end date for the advertisment periode
example: '2017-08-30T00:00:00Z'
segmentation:
type: array
description: |
Tagging of the advertisement to configure a unique segmentation
items:
type: string
example: WIEN
impressionsPerDay:
type: integer
format: int32
description: |
Amount of impressions per day, the user booked for his advertisement
paymentID:
type: string
description: |
Unique identifier of the corresponding payment if exists
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA2
Statistics:
type: object
properties:
id:
type: string
description: |
unique identifier of the statistic object
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1
impressions:
type: integer
format: int32
description: |
Amount of impressions the advertisement gained
CardStack:
type: object
properties:
id:
type: string
description: |
unique identifier of the cardStack object
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1
readOnly: true
headline:
type: string
description: |
The cardStacks headline
example: Wien
subHeadline:
type: string
description: |
The cardStacks sub headline
example: Toller Sommer in Wien
titleAssetURI:
type: string
description: |
URI of the asset shown as title of the stack
example: D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_title.png
introHeadline:
type: string
description: |
Headline shown on the intro card (first card) of the stack
example: Somme in Wien
introAssetURI:
type: string
description: |
URI of the asset shown on the intro card
example: 2D56CEA4-8BA8-4B4E-81B7-6417E5D14AA1_intro.png
introCtaText:
type: string
description: |
Call to action text shown on the intro card
example: Mehr...
startDate:
type: string
format: date
description: |
Start date of the card stack
example: '2017-08-10T00:00:00Z'
endDate:
type: string
format: date
description: |
End date of the card stack
example: '2017-08-20T00:00:00Z'
milageReward:
type: integer
format: int32
description: |
Amount of miles that the user gets assigned if he steps through the whole stack of cards
example: 50
randomSort:
type: boolean
description: Should the cards be sorted randomly
example: false
segmentation:
type: array
description: |
Tagging of the advertisement to configure a unique segmentation
items:
type: string
example: WIEN
legal:
type: string
description: |
Legal information for the whole card stack
example: Disclaimer...
status:
type: integer
format: int32
description: |
Status of cardStack (e.g.: active, inactive, published...) as an integer representing the position of the status element inside the status ENUM
example: 0
cards:
type: array
items:
$ref: '#/definitions/Card'
backupCards:
type: array
items:
$ref: '#/definitions/Card'
Any ideas?
Language
English
asked 7 years ago3781 viewslg...
1 Answer
- Newest
- Most votes
- Most comments
1
Hello:
Unfortunately there are number of swagger features that may not be natively supported in API Gateway. My best recommendation would be to try to par down your API to only the models that are failing to identify the failing portion of your model.
Regards,
Bob
Relevant content
- asked 2 years agolg...
- Accepted Answerasked 7 months agolg...
- asked a year agolg...
- AWS OFFICIALUpdated 5 months ago
- AWS OFFICIALUpdated 3 years ago
- AWS OFFICIALUpdated a month ago
- AWS OFFICIALUpdated 2 years ago