Compare commits
52 Commits
bce8ddcefc
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| eb8630ff24 | |||
| 2960d1bd36 | |||
| 6eda09efbe | |||
| dc1751b852 | |||
| 760da37fe3 | |||
| adb589ef49 | |||
| fbcb1ff6bb | |||
| 68eca53428 | |||
| 694582091b | |||
| 254d3b09ae | |||
| 1c7255fa72 | |||
| 574b8caf49 | |||
| dacc6cade4 | |||
| 6d93e58c98 | |||
| 1edeb5178d | |||
| 1e6a843330 | |||
| b797105afc | |||
| 741f6c34dd | |||
| cb2e4d1d60 | |||
| 7449bb1a06 | |||
| 791d46ff6b | |||
| 5b9a836c65 | |||
| cec3fa68ad | |||
| 00243eb3b5 | |||
| 8cd8199417 | |||
| 738aaa0a6d | |||
| 094262e414 | |||
| 5bc944a908 | |||
| 8b6aa36d36 | |||
| a5aaa63f8a | |||
| a49185ea21 | |||
| 41ef94f527 | |||
| 78ff9504f6 | |||
| b4b5c587fa | |||
| 0bbb294b64 | |||
| 8954cbd05f | |||
| ad34e634ca | |||
| 3360b4c652 | |||
| 4134af8b3c | |||
| 74bac0ea74 | |||
| 6c9a468e10 | |||
| 44cb101990 | |||
| fae00c2a4c | |||
| 8aa53558ca | |||
| 705b1385da | |||
| 15dfdf22d7 | |||
| 6d620be849 | |||
| 1441a8b92d | |||
| 8d386222c1 | |||
| a6bbb8bc99 | |||
| e3b1996245 | |||
| 0f3f7e063c |
@@ -19,9 +19,12 @@ https://www.astera.com/de/type/blog/api-design-best-practices
|
||||
https://www.citusdata.com/blog/2016/03/30/five-ways-to-paginate/
|
||||
https://stackoverflow.blog/2021/10/06/best-practices-for-authentication-and-authorization-for-rest-apis/
|
||||
https://www.akamai.com/blog/security/rest-api-security-best-practices
|
||||
https://jakarta.ee/specifications/data/1.0/
|
||||
|
||||
# Examples
|
||||
|
||||
https://docs.hetzner.cloud/
|
||||
https://opensource.zalando.com/restful-api-guidelines
|
||||
https://kubernetes.io/docs/reference/using-api/api-concepts
|
||||
https://docs.stripe.com/api/prices
|
||||
https://developer.clickup.com/docs/authentication
|
||||
|
||||
@@ -331,6 +331,13 @@ paths:
|
||||
- "Customers"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
- name: "EMailAddressShouldBeUsedToCreateADefaultDocumentDespatch"
|
||||
in: "query"
|
||||
required: false
|
||||
description: "The default - as in our ERP program TyrePro - is: NonCashReceiptDealsOnly, Invoices, CreditNotes and CustomerStorages will get delivered by E-Mail as normal PDF."
|
||||
schema:
|
||||
type: "boolean"
|
||||
default: false
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
@@ -432,6 +439,13 @@ paths:
|
||||
- "Customers"
|
||||
description: "Finds similar accounts. The algorithm uses for example phonetic analysis and more to create the results."
|
||||
parameters:
|
||||
- name: "GuidBranch"
|
||||
in: "query"
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
- name: "Name1"
|
||||
in: "query"
|
||||
required: true
|
||||
@@ -1273,6 +1287,62 @@ paths:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Documents/{Guid}/custommethods/AcceptOffer:
|
||||
post:
|
||||
tags:
|
||||
- "Documents"
|
||||
description: "Accepts an offer. Dependant on the implementation, it could be that the offer is after the operation an order."
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/_HashValueParameter"
|
||||
- name: "Comment"
|
||||
in: "query"
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "Thanks you!"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Document"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Documents/{Guid}/custommethods/RejectOffer:
|
||||
post:
|
||||
tags:
|
||||
- "Documents"
|
||||
description: "Rejects an offer. Dependant on the implementation, the offer keeps beeing open for further responses or gets historic."
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/_HashValueParameter"
|
||||
- name: "Comment"
|
||||
in: "query"
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "The price is higher than excepted. Can you make another offer?"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Document"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/DocumentPositions:
|
||||
get:
|
||||
tags:
|
||||
@@ -3954,13 +4024,13 @@ components:
|
||||
Amount:
|
||||
type: "number"
|
||||
SalesPriceNetSingle:
|
||||
type: "string"
|
||||
type: "number"
|
||||
SalesPriceGrossSingle:
|
||||
type: "string"
|
||||
type: "number"
|
||||
SalesPriceNetTotal:
|
||||
type: "string"
|
||||
type: "number"
|
||||
SalesPriceGrossTotal:
|
||||
type: "string"
|
||||
type: "number"
|
||||
Designation:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
@@ -4123,6 +4193,7 @@ components:
|
||||
- "GuidOnlineSchedulerService"
|
||||
- "GuidBranch"
|
||||
- "IsDefault"
|
||||
- "Hints"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
@@ -4132,6 +4203,22 @@ components:
|
||||
type: "string"
|
||||
IsDefault:
|
||||
type: "string"
|
||||
Hints:
|
||||
type: "array"
|
||||
items:
|
||||
type: "object"
|
||||
required:
|
||||
- "AttentionLevel"
|
||||
- "Hint"
|
||||
properties:
|
||||
AttentionLevel:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Low"
|
||||
- "Mid"
|
||||
- "High"
|
||||
Hint:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
@@ -4192,6 +4279,7 @@ components:
|
||||
- "UsersMayEnterANewLicenceTag"
|
||||
- "IsConnectedWithATyreStorage"
|
||||
- "DeadlineTimeInSecondsSinceMidnight"
|
||||
- "DeadlineTimeInSecondsSinceMidnight"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
@@ -4216,6 +4304,16 @@ components:
|
||||
type: "boolean"
|
||||
DeadlineTimeInSecondsSinceMidnight:
|
||||
type: "integer"
|
||||
RedirectUrlType:
|
||||
type: "string"
|
||||
enum:
|
||||
- "None"
|
||||
- "NewTab"
|
||||
- "SameTab"
|
||||
RedirectUrl:
|
||||
type: "string"
|
||||
RedirectUrlShallBeShownAsOptionalButton:
|
||||
type: "boolean"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
*Currently under heavy development*
|
||||
***Currently under heavy development***
|
||||
|
||||
## Overview
|
||||
# Overview
|
||||
|
||||
Our API follows the REST-API-Principles.
|
||||
|
||||
# URI structure / Products
|
||||
## URI structure / Products
|
||||
|
||||
We will have a bunch of use cases. Some API consumers want to develop
|
||||
- an appointment making service
|
||||
@@ -15,7 +15,7 @@ We will have a bunch of use cases. Some API consumers want to develop
|
||||
|
||||
Because of the variety of requirements, we offer different API products. The naming results to "/api/<product>/...". This allows us to provide different views of the same resource depending on your use case and permissions.
|
||||
|
||||
# Domain
|
||||
## Domain
|
||||
|
||||
We as [PRM Software AG](https://prm-ag.de) offer you this API for our customers and act in that case as a service provider. For requesting the data of a trader, it is neccessary to get the permissions of each trader.
|
||||
|
||||
@@ -23,41 +23,75 @@ Each trader has it's own domain or a generated one by us. The base-URI could be:
|
||||
- https://example-store.de/
|
||||
- https://onlineservices.prod.rz2.prm-ag.de/asd8s76df9/
|
||||
|
||||
# Methods
|
||||
## Methods and resources
|
||||
|
||||
With each call you'll interact with ressources. The verb you do will be the HTTP method.
|
||||
- GET /api/core/users -> Retrieve all customers
|
||||
- GET /api/core/users/1 -> Retrieve data of customer 1
|
||||
- GET /api/core/users/1/permissions -> Retrieve all permissions of customer 1
|
||||
- DELETE /api/core/users/1 -> Delete customer 1
|
||||
- BAN /api/core/users/1 -> Ban customer 1
|
||||
- NOTIFY-GTC-VIOLANCE /api/core/users/1 -> Notifies customer 1 for a violation of the terms and conditions
|
||||
With each call you'll [interact with resources](https://restfulapi.net/http-methods/).
|
||||
|
||||
# Authentication
|
||||
- GET /api/core/Users -> Retrieve all customers
|
||||
- GET /api/core/Users/1 -> Retrieve data of customer 1
|
||||
- GET /api/core/Users/1/Permissions -> Retrieve all permissions of customer 1
|
||||
- POST /api/core/Users -> Create a customer
|
||||
- PATCH /api/core/Users/1 -> Modify some data of customer 1
|
||||
- DELETE /api/core/Users/1 -> Delete customer 1
|
||||
|
||||
# Errors
|
||||
To apply non-CRUD-methods to a resource, we allways use HTTP-POST-methods.
|
||||
|
||||
# Rate Limiting
|
||||
- POST /api/core/Users/1/Ban -> Ban customer 1
|
||||
- POST /api/core/Users/1/NotifyGtcViolance -> Notifies customer 1 for a violation of the terms and conditions
|
||||
|
||||
# Pagination
|
||||
*Yeah. In an ideal world we would use those verbs as HTTP-methods as well, but not all clients and servers support that functionality. And it's not common in the dev-society currently, therefore, we think, most developers would be confused.*
|
||||
|
||||
# Sorting
|
||||
**The character casing of resource names is significant!**
|
||||
|
||||
# Response Resolution
|
||||
## Authorization
|
||||
|
||||
# Caching
|
||||
### Static access tokens
|
||||
|
||||
Within our ERP-system TyrePro, the trader is able to configurate static access tokens. **Use static access tokens only, if you really trust the environment, where they are stored.**
|
||||
|
||||
### Access tokens by authentication
|
||||
|
||||
In our authentication.yaml, you'll find endpoints to authenticate with some users credentials.
|
||||
|
||||
### Passing the parameters
|
||||
|
||||
## TODO
|
||||
The recommended way of passing the access token is within the HTTP-Header 'Authorization: Bearer <token>'. For use cases of temporary sharing or simplified backend to backend calls, you could also pass the access token as query parameter '?AuthorizationToken=<token>'. Please be aware, that in a lot of libraries the request URI (including queryparameters) may get logged.
|
||||
|
||||
GET /api/shop/vehicles
|
||||
GET /api/tyrepro/vehicles
|
||||
GET /api/tiretask/vehicles
|
||||
GET /api/openitem/vehicles
|
||||
GET /api/rdks/vehicles
|
||||
## Errors
|
||||
|
||||
GET /api/vehicles/shopview
|
||||
GET /api/vehicles/tyreproview
|
||||
## Rate Limiting
|
||||
|
||||
## Pagination
|
||||
|
||||
## Sorting
|
||||
|
||||
## Response Resolution
|
||||
|
||||
## Caching
|
||||
|
||||
## Confirmation codes
|
||||
|
||||
some request require an explicit confirmation. There the server creates a confirmation code and a message and the client has to send the request again with the confirmation code. the code is temporary stored at server side.
|
||||
|
||||
## Events
|
||||
|
||||
subscribe to events and get a post request on your side
|
||||
|
||||
## Performance
|
||||
|
||||
response header notice
|
||||
|
||||
# Open-API documentation
|
||||
|
||||
Because of all those general options, we use a minimal documentation style of our Open-API-yaml-files. Example: Even when you will not find the pagination-parameters in the yaml-file, you can use them.
|
||||
The usage of the minimal style will make it easier for you to see what exactly is part of the implementation and what is general. In a scenario of a full documentation the actual implementation details may be skipped in the complexity of general parameters.
|
||||
|
||||
# A typical request flow
|
||||
|
||||
1. Request entering
|
||||
2. URI normalization
|
||||
3. Ressource identification
|
||||
4. Authorization check
|
||||
5. Rate limit check
|
||||
6. Request processing
|
||||
7. Cache postprocessing
|
||||
|
||||
@@ -1,617 +0,0 @@
|
||||
openapi: 3.0.0
|
||||
info:
|
||||
title: "TyrePro-API, Article"
|
||||
version: "1"
|
||||
servers:
|
||||
- url: "https://musterreifen.com/api"
|
||||
description: "Demo server"
|
||||
- url: "https://onlineservices.demo.rz2.prm-ag.de/O6J20ZebmghzkNgrdD759A/api"
|
||||
description: "Development server"
|
||||
paths:
|
||||
/Articles:
|
||||
get:
|
||||
tags:
|
||||
- "Articles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/Article"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Articles/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "Articles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Article"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/MaterialGroups:
|
||||
get:
|
||||
tags:
|
||||
- "MaterialGroups"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/MaterialGroup"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/MaterialGroups/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "MaterialGroups"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/MaterialGroup"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/MaterialSubGroups:
|
||||
get:
|
||||
tags:
|
||||
- "MaterialSubGroups"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/MaterialSubGroup"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/MaterialSubGroups/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "MaterialSubGroups"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/MaterialSubGroup"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/MaterialTypes:
|
||||
get:
|
||||
tags:
|
||||
- "MaterialTypes"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/MaterialType"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/MaterialTypes/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "MaterialTypes"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/MaterialType"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Storages:
|
||||
get:
|
||||
tags:
|
||||
- "Storages"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/Storage"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Storages/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "Storages"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Storage"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/StorageLocations:
|
||||
get:
|
||||
tags:
|
||||
- "StorageLocations"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/StorageLocation"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/StorageLocations/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "StorageLocations"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/StorageLocation"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
components:
|
||||
schemas:
|
||||
GenericError:
|
||||
type: "object"
|
||||
required:
|
||||
- "Message"
|
||||
- "Details"
|
||||
properties:
|
||||
Message:
|
||||
type: "string"
|
||||
Details:
|
||||
type: "string"
|
||||
example:
|
||||
Message: "Ihr Anwender wurde nicht gefunden."
|
||||
Details: "Progress.Lang.AppError\n Ihr Anwender wurde nicht gefunden.\nat sourcecode.line 123"
|
||||
_HashValue:
|
||||
type: "string"
|
||||
description: "HashValue of the object which you'll need to process write-operations."
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
Article:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "GuidMaterialType"
|
||||
- "IsActive"
|
||||
- "Designation"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
GuidMaterialType:
|
||||
type: "string"
|
||||
GuidMaterialGroup:
|
||||
type: "string"
|
||||
GuidMaterialSubGroup:
|
||||
type: "string"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
Designation:
|
||||
type: "string"
|
||||
Manufacturer:
|
||||
type: "string"
|
||||
ManufacturerArticleNumber:
|
||||
type: "string"
|
||||
Ean:
|
||||
type: "string"
|
||||
KronprinzNumber:
|
||||
type: "string"
|
||||
AlcarNumber:
|
||||
type: "string"
|
||||
SuedradNumber:
|
||||
type: "string"
|
||||
DiameterInInch:
|
||||
type: "number"
|
||||
WidthInMm:
|
||||
type: "number"
|
||||
SectionInMm:
|
||||
type: "number"
|
||||
LoadIndex:
|
||||
type: "string"
|
||||
SpeedIndex:
|
||||
type: "string"
|
||||
OffsetInMm:
|
||||
type: "number"
|
||||
HubBoreHoleInMm:
|
||||
type: "number"
|
||||
HoleCount:
|
||||
type: "number"
|
||||
HoleCircleInMm:
|
||||
type: "number"
|
||||
WeightInKg:
|
||||
type: "number"
|
||||
FuelConsumptionClass:
|
||||
type: "string"
|
||||
BrakingPerformanceClass:
|
||||
type: "string"
|
||||
NoiseClass:
|
||||
type: "string"
|
||||
NoiseLevelInDb:
|
||||
type: "number"
|
||||
VehicleClass:
|
||||
type: "string"
|
||||
RegulationNumber:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidMaterialType: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidMaterialGroup: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidMaterialSubGroup: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "Michelin 205/55R16 91H M+S 3PMSF Alpin 6"
|
||||
IsActive: true
|
||||
MaterialGroup:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Designation"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "Sommerreifen"
|
||||
MaterialSubGroup:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Designation"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "RFT-Seal-Sommer-PKW-Reifen"
|
||||
MaterialType:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Designation"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "Reifen"
|
||||
Storage:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "IsActive"
|
||||
- "Designation"
|
||||
- "Number"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
Designation:
|
||||
type: "string"
|
||||
Number:
|
||||
type: "integer"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActive: true
|
||||
Designation: "Reifen"
|
||||
Number: 1
|
||||
StorageLocation:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "IsActive"
|
||||
- "Designation"
|
||||
- "Number"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
GuidStorage:
|
||||
type: "string"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
Designation:
|
||||
type: "string"
|
||||
Number:
|
||||
type: "integer"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActive: true
|
||||
Designation: "Reifen"
|
||||
Number: 1
|
||||
securitySchemes:
|
||||
SessionScheme:
|
||||
type: http
|
||||
scheme: bearer
|
||||
parameters:
|
||||
_HashValueParameter:
|
||||
name: "_HashValue"
|
||||
in: "query"
|
||||
description: "If you want to process a write operation you shall provide the hashvalue of the current view of the object you want to write to. If someone else has written something before you'll get a 412 response code."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
GuidPathParameter:
|
||||
name: "Guid"
|
||||
in: "path"
|
||||
description: "The primary identifier of the entry (in the database)."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActiveParameter:
|
||||
name: "IsActive"
|
||||
in: "query"
|
||||
description: "Only active elements shall be returned. If null both will get returned."
|
||||
required: false
|
||||
schema:
|
||||
type: "boolean"
|
||||
default: null
|
||||
example: true
|
||||
LimitParameter:
|
||||
name: "Limit"
|
||||
in: "query"
|
||||
description: "Limits the number of result entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 1
|
||||
maximum: 2147483647
|
||||
example: 20
|
||||
OffsetParameter:
|
||||
name: "Offset"
|
||||
in: "query"
|
||||
description: "Skip the first number of entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 0
|
||||
maximum: 2147483647
|
||||
example: 0
|
||||
ResponseResolutionDepthParameter:
|
||||
name: "ResponseResolutionDepth"
|
||||
in: "query"
|
||||
description: "If your response object has a field with GuidSomething, this last object will be resolved. Instead of the field GuidSomething you'll get a json object of type Something with it's content. The depth determines how deep this operation shall be. The deeper, the slower your operation will be in general."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: 0
|
||||
minimum: 0
|
||||
maximum: 3
|
||||
example: 1
|
||||
SearchTermParameter:
|
||||
name: "SearchTerm"
|
||||
in: "query"
|
||||
description: "Searches the entries and it's content."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "mc*onald"
|
||||
responses:
|
||||
SessionOfOnlineUserOrHigherRequired:
|
||||
description: "You need a session of type OnlineUser or TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
SessionOfTyreProUserOrHigherRequired:
|
||||
description: "You need a session of type TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
GenericError:
|
||||
description: "Unexpected error like 4XX or 5XX http errors."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,945 +0,0 @@
|
||||
openapi: 3.0.0
|
||||
info:
|
||||
title: "TyrePro-API, Customer and Vehicle"
|
||||
version: "1"
|
||||
servers:
|
||||
- url: "https://musterreifen.com/api"
|
||||
description: "Demo server"
|
||||
- url: "https://onlineservices.demo.rz2.prm-ag.de/O6J20ZebmghzkNgrdD759A/api"
|
||||
description: "Development server"
|
||||
paths:
|
||||
/Customers:
|
||||
get:
|
||||
tags:
|
||||
- "Customers"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/Customer"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfTyreProUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
post:
|
||||
tags:
|
||||
- "Customers"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Customer"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Customer"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfTyreProUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Customers/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "Customers"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Customer"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
patch:
|
||||
tags:
|
||||
- "Customers"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/_HashValueParameter"
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Customer"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Customer"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Customers/{Guid}/DmsFiles:
|
||||
get:
|
||||
tags:
|
||||
- "Customers"
|
||||
- "DmsFiles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/DmsFilesTypeParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/DmsFile"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Customers/custommethods/FindSimilarAccounts:
|
||||
get:
|
||||
tags:
|
||||
- "Customers"
|
||||
description: "Finds similar accounts. The algorithm uses for example phonetic analysis and more to create the results."
|
||||
parameters:
|
||||
- name: "Name1"
|
||||
in: "query"
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "Max Mustermann"
|
||||
- name: "Name2"
|
||||
in: "query"
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
- name: "Name3"
|
||||
in: "query"
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
- name: "Street"
|
||||
in: "query"
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "Musterstraße 123"
|
||||
- name: "Postalcode"
|
||||
in: "query"
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "01234"
|
||||
- name: "Town"
|
||||
in: "query"
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "Musterhausen"
|
||||
- name: "EMailAddress"
|
||||
in: "query"
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "max@mustermann.de"
|
||||
- name: "SalesTaxIdentificationNumber"
|
||||
in: "query"
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
type: "object"
|
||||
required:
|
||||
- "WouldBeChoosenAutomatically"
|
||||
- "GuidCustomer"
|
||||
properties:
|
||||
WouldBeChoosenAutomatically:
|
||||
type: "boolean"
|
||||
AutomaticChoiceDescription:
|
||||
type: "string"
|
||||
NameSimilarityInPercent:
|
||||
type: "number"
|
||||
AddressSimilarityInPercent:
|
||||
type: "number"
|
||||
GuidCustomer:
|
||||
type: "string"
|
||||
example:
|
||||
WouldBeChoosenAutomatically: true
|
||||
AutomaticChoiceDescription: "USt.-IdNr. stimmt überein"
|
||||
NameSimilarityInPercent: 100
|
||||
AddressSimilarityInPercent: 97.4
|
||||
GuidCustomer: "9acea90b-f0d9-2d95-7814-c53b28d87980"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfTyreProUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerVehicles:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerVehicles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/CustomerVehicle"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerVehicles/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerVehicles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/CustomerVehicle"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
patch:
|
||||
tags:
|
||||
- "CustomerVehicles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/_HashValueParameter"
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/CustomerVehicle"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/CustomerVehicle"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerVehicles/{Guid}/CustomerStorages:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerVehicles"
|
||||
- "CustomerStorages"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/CustomerStorage"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerVehicles/{Guid}/DmsFiles:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerVehicles"
|
||||
- "DmsFiles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/DmsFilesTypeParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/DmsFile"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerVehicles/{Guid}/SchedulerAppointments:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerVehicles"
|
||||
- "SchedulerAppointments"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/SchedulerAppointment"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerVehicles/custommethods/GenerateCsvFile:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerVehicles"
|
||||
description: "Generates a CSV-file with all customer vehicle information and delivers the binary file content."
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/ContentDispositionParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
text/csv:
|
||||
schema:
|
||||
type: "string"
|
||||
format: "binary"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
components:
|
||||
schemas:
|
||||
GenericError:
|
||||
type: "object"
|
||||
required:
|
||||
- "Message"
|
||||
- "Details"
|
||||
properties:
|
||||
Message:
|
||||
type: "string"
|
||||
Details:
|
||||
type: "string"
|
||||
example:
|
||||
Message: "Ihr Anwender wurde nicht gefunden."
|
||||
Details: "Progress.Lang.AppError\n Ihr Anwender wurde nicht gefunden.\nat sourcecode.line 123"
|
||||
_HashValue:
|
||||
type: "string"
|
||||
description: "HashValue of the object which you'll need to process write-operations."
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
Customer:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Number"
|
||||
- "IsActive"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
GuidBranch:
|
||||
type: "string"
|
||||
Number:
|
||||
type: "integer"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
Address:
|
||||
$ref: "#/components/schemas/PostalAddress"
|
||||
PhoneNumber:
|
||||
type: "string"
|
||||
FaxNumber:
|
||||
type: "string"
|
||||
MobilphoneNumber:
|
||||
type: "string"
|
||||
EMailAddress:
|
||||
type: "string"
|
||||
HomepageAddress:
|
||||
type: "string"
|
||||
SalesTaxIdentificationNumber:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Number: 123456
|
||||
IsActive: true
|
||||
Address: null
|
||||
PhoneNumber: "0123456789"
|
||||
FaxNumber: null
|
||||
MobilphoneNumber: null
|
||||
MailAddress: "max@mustermann.de"
|
||||
HomepageAddress: null
|
||||
SalesTaxIdentificationNumber: null
|
||||
CustomerStorage:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Number"
|
||||
- "Date"
|
||||
- "IsActive"
|
||||
- "GuidCustomer"
|
||||
- "GuidBranch"
|
||||
- "StorageType"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Number:
|
||||
type: "integer"
|
||||
Date:
|
||||
type: "string"
|
||||
format: "date"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
GuidCustomerVehicle:
|
||||
type: "string"
|
||||
GuidCustomer:
|
||||
type: "string"
|
||||
GuidBranch:
|
||||
type: "string"
|
||||
Comment:
|
||||
type: "string"
|
||||
DriverName:
|
||||
type: "string"
|
||||
ExternalReferenceNumber:
|
||||
type: "string"
|
||||
ShallBeWashed:
|
||||
type: "boolean"
|
||||
ShallBeBalanced:
|
||||
type: "boolean"
|
||||
ShallBeRdksChecked:
|
||||
type: "boolean"
|
||||
RimType:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Carbon"
|
||||
- "AlloyRimOriginal"
|
||||
- "AlloyRimAftermarket"
|
||||
- "SteelRim"
|
||||
- "WithoutRim"
|
||||
- "Unknown"
|
||||
GuidCustomerStorageStatus:
|
||||
type: "string"
|
||||
GuidMaterialGroup:
|
||||
type: "string"
|
||||
StorageType:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Storage"
|
||||
- "Customer"
|
||||
GuidStorage:
|
||||
type: "string"
|
||||
GuidStorageLocation:
|
||||
type: "string"
|
||||
ExternalStorageReferenceNumber:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Number: 123456
|
||||
Date: "2021-02-02"
|
||||
IsActive: true
|
||||
GuidCustomerVehicle: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomer: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Comment: null
|
||||
DriverName: "Max Mustermann Junior"
|
||||
ExternalReferenceNumber: null
|
||||
ShallBeWashed: true
|
||||
ShallBeBalanced: true
|
||||
ShallBeRdksChecked: false
|
||||
RimType: "AlloyRimAftermarket"
|
||||
GuidCustomerStorageStatus: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidMaterialGroup: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
StorageType: "Branch"
|
||||
GuidStorage: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidStorageLocation: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
ExternalStorageReferenceNumber: null
|
||||
CustomerVehicle:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "GuidCustomer"
|
||||
- "IsActive"
|
||||
- "LicenceTagNumber"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
GuidCustomer:
|
||||
type: "string"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
LicenceTagNumber:
|
||||
type: "string"
|
||||
ChassisNumber:
|
||||
type: "string"
|
||||
EgTypeApprovalNumber:
|
||||
type: "string"
|
||||
KbaNumber1:
|
||||
type: "string"
|
||||
KbaNumber2:
|
||||
type: "string"
|
||||
VehicleManufacturer:
|
||||
type: "string"
|
||||
VehicleDesignation:
|
||||
type: "string"
|
||||
VehicleType:
|
||||
type: "string"
|
||||
VehicleModel:
|
||||
type: "string"
|
||||
RegistrationDate:
|
||||
type: "string"
|
||||
format: "date"
|
||||
FuelType:
|
||||
type: "string"
|
||||
DisplacementInCcm:
|
||||
type: "number"
|
||||
PowerInKw:
|
||||
type: "number"
|
||||
MileageInKm:
|
||||
type: "number"
|
||||
TuevDate:
|
||||
type: "string"
|
||||
format: "date"
|
||||
InspectionDate:
|
||||
type: "string"
|
||||
format: "date"
|
||||
UvvDate:
|
||||
type: "string"
|
||||
format: "date"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomer: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActive: true
|
||||
LicenceTagNumber: "A-BC 1234"
|
||||
ChassisNumber: null
|
||||
KbaNumber1: "8004"
|
||||
KbaNumber2: "AHE"
|
||||
VehicleManufacturer: "Skoda"
|
||||
VehicleDesignation: "Octavia"
|
||||
VehicleType: "Limosine"
|
||||
VehicleModel: "1Z, Facelift"
|
||||
RegistrationDate: "2021-02-02"
|
||||
DmsFile:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "TableName"
|
||||
- "GuidOfTableName"
|
||||
- "ProgramIdentifier"
|
||||
- "ProgramIdentifierDesignation"
|
||||
- "Type"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
TableName:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Customer"
|
||||
- "CustomerStorage"
|
||||
- "CustomerVehicle"
|
||||
- "Document"
|
||||
- "SchedulerAppointment"
|
||||
- "DmsFile"
|
||||
GuidOfTableName:
|
||||
type: "string"
|
||||
ProgramIdentifier:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Billing"
|
||||
- "Cub"
|
||||
- "Direct"
|
||||
- "Etirehotel"
|
||||
- "GlMesstechnik"
|
||||
- "GudatSolutions"
|
||||
- "MacsDia"
|
||||
- "OnlineServices"
|
||||
- "Printout"
|
||||
- "PurchaseSource"
|
||||
- "SalesInterchange"
|
||||
- "Somplatzki"
|
||||
- "Zollhof"
|
||||
ProgramIdentifierDesignation:
|
||||
type: "string"
|
||||
Type:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Directory"
|
||||
- "File"
|
||||
Designation:
|
||||
type: "string"
|
||||
GuidDbBlob:
|
||||
type: "string"
|
||||
Description:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
TableName: "DmsFile"
|
||||
GuidOfTableName: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
ProgramIdentifier: "Direct"
|
||||
ProgramIdentifierDesignation: "Manuell hinzugefügte Dateien"
|
||||
Type: "File"
|
||||
GuidDbBlob: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: null
|
||||
Description: null
|
||||
PostalAddress:
|
||||
type: "object"
|
||||
properties:
|
||||
Salutation:
|
||||
type: "string"
|
||||
Name1:
|
||||
type: "string"
|
||||
Name2:
|
||||
type: "string"
|
||||
Name3:
|
||||
type: "string"
|
||||
Street:
|
||||
type: "string"
|
||||
Postalcode:
|
||||
type: "string"
|
||||
Town:
|
||||
type: "string"
|
||||
Township:
|
||||
type: "string"
|
||||
GuidAddressState:
|
||||
type: "string"
|
||||
example:
|
||||
Salutation: "Herr"
|
||||
Name1: "Max Mustermann"
|
||||
Name2: null
|
||||
Name3: null
|
||||
Street: "Musterstra<72>e 123"
|
||||
Postalcode: "01234"
|
||||
Town: "Musterhausen"
|
||||
Township: "Musterviertel"
|
||||
GuidAddressState: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
SchedulerAppointment:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Designation"
|
||||
- "StartMoment"
|
||||
- "EndMoment"
|
||||
- "WasCreatedByOnlineScheduler"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
LicenceTagNumber:
|
||||
type: "string"
|
||||
StartMoment:
|
||||
type: "string"
|
||||
format: "date-time"
|
||||
EndMoment:
|
||||
type: "string"
|
||||
format: "date-time"
|
||||
Comment:
|
||||
type: "string"
|
||||
WasCreatedByOnlineScheduler:
|
||||
type: "boolean"
|
||||
OnlineSchedulerText:
|
||||
type: "string"
|
||||
AppointmentMakerEmailAddress:
|
||||
type: "string"
|
||||
GuidBranch:
|
||||
type: "string"
|
||||
GuidOnlineSchedulerBranch:
|
||||
type: "string"
|
||||
GuidCustomerVehicle:
|
||||
type: "string"
|
||||
GuidCustomerStorage:
|
||||
type: "string"
|
||||
GuidDocument:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "Max Müller, A-BC 1234"
|
||||
LicenceTagNumber: "A-BC 1234"
|
||||
StartMoment: "2021-02-02T10:36:10.172"
|
||||
EndMoment: "2021-02-02T10:36:10.172"
|
||||
Comment: null
|
||||
WasCreatedByOnlineScheduler: true
|
||||
OnlineSchedulerText: "Service: Ich möchte einen Termin für eine Einlagerung haben."
|
||||
AppointmentMakerEmailAddress: "info@prm-ag.de"
|
||||
GuidBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidOnlineSchedulerBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomerVehicle: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomerStorage: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
securitySchemes:
|
||||
SessionScheme:
|
||||
type: http
|
||||
scheme: bearer
|
||||
parameters:
|
||||
_HashValueParameter:
|
||||
name: "_HashValue"
|
||||
in: "query"
|
||||
description: "If you want to process a write operation you shall provide the hashvalue of the current view of the object you want to write to. If someone else has written something before you'll get a 412 response code."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
ContentDispositionParameter:
|
||||
name: "ContentDisposition"
|
||||
in: "query"
|
||||
description: "How the file is deliverd. Inline is inside the same browser tab i.e.. This parameter takes only effect if parameter BinaryResponse=true."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Inline"
|
||||
- "Attachment"
|
||||
default: "Inline"
|
||||
example: "Inline"
|
||||
DmsFilesTypeParameter:
|
||||
name: "Type"
|
||||
in: "query"
|
||||
description: "Filter by type."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Directory"
|
||||
- "File"
|
||||
example: "File"
|
||||
GuidPathParameter:
|
||||
name: "Guid"
|
||||
in: "path"
|
||||
description: "The primary identifier of the entry (in the database)."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActiveParameter:
|
||||
name: "IsActive"
|
||||
in: "query"
|
||||
description: "Only active elements shall be returned. If null both will get returned."
|
||||
required: false
|
||||
schema:
|
||||
type: "boolean"
|
||||
default: null
|
||||
example: true
|
||||
LimitParameter:
|
||||
name: "Limit"
|
||||
in: "query"
|
||||
description: "Limits the number of result entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 1
|
||||
maximum: 2147483647
|
||||
example: 20
|
||||
OffsetParameter:
|
||||
name: "Offset"
|
||||
in: "query"
|
||||
description: "Skip the first number of entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 0
|
||||
maximum: 2147483647
|
||||
example: 0
|
||||
ResponseResolutionDepthParameter:
|
||||
name: "ResponseResolutionDepth"
|
||||
in: "query"
|
||||
description: "If your response object has a field with GuidSomething, this last object will be resolved. Instead of the field GuidSomething you'll get a json object of type Something with it's content. The depth determines how deep this operation shall be. The deeper, the slower your operation will be in general."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: 0
|
||||
minimum: 0
|
||||
maximum: 3
|
||||
example: 1
|
||||
SearchTermParameter:
|
||||
name: "SearchTerm"
|
||||
in: "query"
|
||||
description: "Searches the entries and it's content."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "mc*onald"
|
||||
responses:
|
||||
SessionOfOnlineUserOrHigherRequired:
|
||||
description: "You need a session of type OnlineUser or TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
SessionOfTyreProUserOrHigherRequired:
|
||||
description: "You need a session of type TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
GenericError:
|
||||
description: "Unexpected error like 4XX or 5XX http errors."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,687 +0,0 @@
|
||||
openapi: 3.0.0
|
||||
info:
|
||||
title: "TyrePro-API, CustomerStorage"
|
||||
version: "1"
|
||||
servers:
|
||||
- url: "https://musterreifen.com/api"
|
||||
description: "Demo server"
|
||||
- url: "https://onlineservices.demo.rz2.prm-ag.de/O6J20ZebmghzkNgrdD759A/api"
|
||||
description: "Development server"
|
||||
paths:
|
||||
/CustomerStorages:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStorages"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/CustomerStorage"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerStorages/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStorages"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/CustomerStorage"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerStorages/{Guid}/CustomerStoragePositions:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStorages"
|
||||
- "CustomerStoragePositions"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/CustomerStoragePosition"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerStorages/{Guid}/DmsFiles:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStorages"
|
||||
- "DmsFiles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/DmsFilesTypeParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/DmsFile"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerStorages/{Guid}/SchedulerAppointments:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStorages"
|
||||
- "SchedulerAppointments"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/SchedulerAppointment"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerStoragePositions:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStoragePositions"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/CustomerStoragePosition"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerStoragePositions/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStoragePositions"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/CustomerStoragePosition"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerStorageStatus:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStorageStatus"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/CustomerStorageStatus"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/CustomerStorageStatus/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "CustomerStorageStatus"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/CustomerStorageStatus"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
components:
|
||||
schemas:
|
||||
GenericError:
|
||||
type: "object"
|
||||
required:
|
||||
- "Message"
|
||||
- "Details"
|
||||
properties:
|
||||
Message:
|
||||
type: "string"
|
||||
Details:
|
||||
type: "string"
|
||||
example:
|
||||
Message: "Ihr Anwender wurde nicht gefunden."
|
||||
Details: "Progress.Lang.AppError\n Ihr Anwender wurde nicht gefunden.\nat sourcecode.line 123"
|
||||
_HashValue:
|
||||
type: "string"
|
||||
description: "HashValue of the object which you'll need to process write-operations."
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
CustomerStorage:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Number"
|
||||
- "Date"
|
||||
- "IsActive"
|
||||
- "GuidCustomer"
|
||||
- "GuidBranch"
|
||||
- "StorageType"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Number:
|
||||
type: "integer"
|
||||
Date:
|
||||
type: "string"
|
||||
format: "date"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
GuidCustomerVehicle:
|
||||
type: "string"
|
||||
GuidCustomer:
|
||||
type: "string"
|
||||
GuidBranch:
|
||||
type: "string"
|
||||
Comment:
|
||||
type: "string"
|
||||
DriverName:
|
||||
type: "string"
|
||||
ExternalReferenceNumber:
|
||||
type: "string"
|
||||
ShallBeWashed:
|
||||
type: "boolean"
|
||||
ShallBeBalanced:
|
||||
type: "boolean"
|
||||
ShallBeRdksChecked:
|
||||
type: "boolean"
|
||||
RimType:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Carbon"
|
||||
- "AlloyRimOriginal"
|
||||
- "AlloyRimAftermarket"
|
||||
- "SteelRim"
|
||||
- "WithoutRim"
|
||||
- "Unknown"
|
||||
GuidCustomerStorageStatus:
|
||||
type: "string"
|
||||
GuidMaterialGroup:
|
||||
type: "string"
|
||||
StorageType:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Storage"
|
||||
- "Customer"
|
||||
GuidStorage:
|
||||
type: "string"
|
||||
GuidStorageLocation:
|
||||
type: "string"
|
||||
ExternalStorageReferenceNumber:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Number: 123456
|
||||
Date: "2021-02-02"
|
||||
IsActive: true
|
||||
GuidCustomerVehicle: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomer: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Comment: null
|
||||
DriverName: "Max Mustermann Junior"
|
||||
ExternalReferenceNumber: null
|
||||
ShallBeWashed: true
|
||||
ShallBeBalanced: true
|
||||
ShallBeRdksChecked: false
|
||||
RimType: "AlloyRimAftermarket"
|
||||
GuidCustomerStorageStatus: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidMaterialGroup: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
StorageType: "Branch"
|
||||
GuidStorage: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidStorageLocation: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
ExternalStorageReferenceNumber: null
|
||||
CustomerStoragePosition:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "GuidCustomerStorage"
|
||||
- "PositionDescription"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
GuidCustomerStorage:
|
||||
type: "string"
|
||||
PositionDescription:
|
||||
type: "string"
|
||||
enum:
|
||||
- "FR"
|
||||
- "FL"
|
||||
- "RR"
|
||||
- "RL"
|
||||
GuidArticleOfTyre:
|
||||
type: "string"
|
||||
TyreDimension:
|
||||
type: "string"
|
||||
TyreManufacturer:
|
||||
type: "string"
|
||||
TyreProfile:
|
||||
type: "string"
|
||||
TyreProfileDepthInMillimeters:
|
||||
type: "number"
|
||||
TyreDotYear:
|
||||
type: "integer"
|
||||
TyreDotWeek:
|
||||
type: "integer"
|
||||
RimDimension:
|
||||
type: "string"
|
||||
RimManufacturer:
|
||||
type: "string"
|
||||
GuidCustomerStorageStatus:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomerStorage: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
PositionDescription: "FR"
|
||||
GuidArticleOfTyre: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
TyreDimension: null
|
||||
TyreManufacturer: null
|
||||
TyreProfile: null
|
||||
TyreProfileDepthInMillimeters: 5.6
|
||||
TyreDotYear: 21
|
||||
TyreDotWeek: 42
|
||||
RimDimension: "7x17"
|
||||
RimManufacturer: "AEZ"
|
||||
GuidCustomerStorageStatus: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
CustomerStorageStatus:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Designation"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "In Ordnung"
|
||||
DmsFile:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "TableName"
|
||||
- "GuidOfTableName"
|
||||
- "ProgramIdentifier"
|
||||
- "ProgramIdentifierDesignation"
|
||||
- "Type"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
TableName:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Customer"
|
||||
- "CustomerStorage"
|
||||
- "CustomerVehicle"
|
||||
- "Document"
|
||||
- "SchedulerAppointment"
|
||||
- "DmsFile"
|
||||
GuidOfTableName:
|
||||
type: "string"
|
||||
ProgramIdentifier:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Billing"
|
||||
- "Cub"
|
||||
- "Direct"
|
||||
- "Etirehotel"
|
||||
- "GlMesstechnik"
|
||||
- "GudatSolutions"
|
||||
- "MacsDia"
|
||||
- "OnlineServices"
|
||||
- "Printout"
|
||||
- "PurchaseSource"
|
||||
- "SalesInterchange"
|
||||
- "Somplatzki"
|
||||
- "Zollhof"
|
||||
ProgramIdentifierDesignation:
|
||||
type: "string"
|
||||
Type:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Directory"
|
||||
- "File"
|
||||
Designation:
|
||||
type: "string"
|
||||
GuidDbBlob:
|
||||
type: "string"
|
||||
Description:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
TableName: "DmsFile"
|
||||
GuidOfTableName: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
ProgramIdentifier: "Direct"
|
||||
ProgramIdentifierDesignation: "Manuell hinzugefügte Dateien"
|
||||
Type: "File"
|
||||
GuidDbBlob: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: null
|
||||
Description: null
|
||||
SchedulerAppointment:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Designation"
|
||||
- "StartMoment"
|
||||
- "EndMoment"
|
||||
- "WasCreatedByOnlineScheduler"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
LicenceTagNumber:
|
||||
type: "string"
|
||||
StartMoment:
|
||||
type: "string"
|
||||
format: "date-time"
|
||||
EndMoment:
|
||||
type: "string"
|
||||
format: "date-time"
|
||||
Comment:
|
||||
type: "string"
|
||||
WasCreatedByOnlineScheduler:
|
||||
type: "boolean"
|
||||
OnlineSchedulerText:
|
||||
type: "string"
|
||||
AppointmentMakerEmailAddress:
|
||||
type: "string"
|
||||
GuidBranch:
|
||||
type: "string"
|
||||
GuidOnlineSchedulerBranch:
|
||||
type: "string"
|
||||
GuidCustomerVehicle:
|
||||
type: "string"
|
||||
GuidCustomerStorage:
|
||||
type: "string"
|
||||
GuidDocument:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "Max Müller, A-BC 1234"
|
||||
LicenceTagNumber: "A-BC 1234"
|
||||
StartMoment: "2021-02-02T10:36:10.172"
|
||||
EndMoment: "2021-02-02T10:36:10.172"
|
||||
Comment: null
|
||||
WasCreatedByOnlineScheduler: true
|
||||
OnlineSchedulerText: "Service: Ich möchte einen Termin für eine Einlagerung haben."
|
||||
AppointmentMakerEmailAddress: "info@prm-ag.de"
|
||||
GuidBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidOnlineSchedulerBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomerVehicle: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomerStorage: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
securitySchemes:
|
||||
SessionScheme:
|
||||
type: http
|
||||
scheme: bearer
|
||||
parameters:
|
||||
_HashValueParameter:
|
||||
name: "_HashValue"
|
||||
in: "query"
|
||||
description: "If you want to process a write operation you shall provide the hashvalue of the current view of the object you want to write to. If someone else has written something before you'll get a 412 response code."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
DmsFilesTypeParameter:
|
||||
name: "Type"
|
||||
in: "query"
|
||||
description: "Filter by type."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Directory"
|
||||
- "File"
|
||||
example: "File"
|
||||
GuidPathParameter:
|
||||
name: "Guid"
|
||||
in: "path"
|
||||
description: "The primary identifier of the entry (in the database)."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActiveParameter:
|
||||
name: "IsActive"
|
||||
in: "query"
|
||||
description: "Only active elements shall be returned. If null both will get returned."
|
||||
required: false
|
||||
schema:
|
||||
type: "boolean"
|
||||
default: null
|
||||
example: true
|
||||
LimitParameter:
|
||||
name: "Limit"
|
||||
in: "query"
|
||||
description: "Limits the number of result entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 1
|
||||
maximum: 2147483647
|
||||
example: 20
|
||||
OffsetParameter:
|
||||
name: "Offset"
|
||||
in: "query"
|
||||
description: "Skip the first number of entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 0
|
||||
maximum: 2147483647
|
||||
example: 0
|
||||
ResponseResolutionDepthParameter:
|
||||
name: "ResponseResolutionDepth"
|
||||
in: "query"
|
||||
description: "If your response object has a field with GuidSomething, this last object will be resolved. Instead of the field GuidSomething you'll get a json object of type Something with it's content. The depth determines how deep this operation shall be. The deeper, the slower your operation will be in general."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: 0
|
||||
minimum: 0
|
||||
maximum: 3
|
||||
example: 1
|
||||
SearchTermParameter:
|
||||
name: "SearchTerm"
|
||||
in: "query"
|
||||
description: "Searches the entries and it's content."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "mc*onald"
|
||||
responses:
|
||||
SessionOfOnlineUserOrHigherRequired:
|
||||
description: "You need a session of type OnlineUser or TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
SessionOfTyreProUserOrHigherRequired:
|
||||
description: "You need a session of type TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
GenericError:
|
||||
description: "Unexpected error like 4XX or 5XX http errors."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,660 +0,0 @@
|
||||
openapi: 3.0.0
|
||||
info:
|
||||
title: "TyrePro-API, Document"
|
||||
version: "1"
|
||||
servers:
|
||||
- url: "https://musterreifen.com/api"
|
||||
description: "Demo server"
|
||||
- url: "https://onlineservices.demo.rz2.prm-ag.de/O6J20ZebmghzkNgrdD759A/api"
|
||||
description: "Development server"
|
||||
paths:
|
||||
/Documents:
|
||||
get:
|
||||
tags:
|
||||
- "Documents"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
- name: "Type"
|
||||
in: "query"
|
||||
required: false
|
||||
description: "Type of the document. Remember: a finished invoice is not active anymore. So try the combinations of Type and IsActive to find your documents."
|
||||
schema:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Offer"
|
||||
- "Order"
|
||||
- "DeliveryNote"
|
||||
- "Invoice"
|
||||
- "CreditNote"
|
||||
example: "Invoice"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/Document"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Documents/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "Documents"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/Document"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Documents/{Guid}/DocumentPositions:
|
||||
get:
|
||||
tags:
|
||||
- "Documents"
|
||||
- "DocumentPositions"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/DocumentPosition"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Documents/{Guid}/DmsFiles:
|
||||
get:
|
||||
tags:
|
||||
- "Documents"
|
||||
- "DmsFiles"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/DmsFilesTypeParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/DmsFile"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/Documents/{Guid}/SchedulerAppointments:
|
||||
get:
|
||||
tags:
|
||||
- "Documents"
|
||||
- "SchedulerAppointments"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/IsActiveParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/SchedulerAppointment"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/DocumentPositions:
|
||||
get:
|
||||
tags:
|
||||
- "DocumentPositions"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/DocumentPosition"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/DocumentPositions/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "DocumentPositions"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/DocumentPosition"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
components:
|
||||
schemas:
|
||||
GenericError:
|
||||
type: "object"
|
||||
required:
|
||||
- "Message"
|
||||
- "Details"
|
||||
properties:
|
||||
Message:
|
||||
type: "string"
|
||||
Details:
|
||||
type: "string"
|
||||
example:
|
||||
Message: "Ihr Anwender wurde nicht gefunden."
|
||||
Details: "Progress.Lang.AppError\n Ihr Anwender wurde nicht gefunden.\nat sourcecode.line 123"
|
||||
_HashValue:
|
||||
type: "string"
|
||||
description: "HashValue of the object which you'll need to process write-operations."
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
DmsFile:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "TableName"
|
||||
- "GuidOfTableName"
|
||||
- "ProgramIdentifier"
|
||||
- "ProgramIdentifierDesignation"
|
||||
- "Type"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
TableName:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Customer"
|
||||
- "CustomerStorage"
|
||||
- "CustomerVehicle"
|
||||
- "Document"
|
||||
- "SchedulerAppointment"
|
||||
- "DmsFile"
|
||||
GuidOfTableName:
|
||||
type: "string"
|
||||
ProgramIdentifier:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Billing"
|
||||
- "Cub"
|
||||
- "Direct"
|
||||
- "Etirehotel"
|
||||
- "GlMesstechnik"
|
||||
- "GudatSolutions"
|
||||
- "MacsDia"
|
||||
- "OnlineServices"
|
||||
- "Printout"
|
||||
- "PurchaseSource"
|
||||
- "SalesInterchange"
|
||||
- "Somplatzki"
|
||||
- "Zollhof"
|
||||
ProgramIdentifierDesignation:
|
||||
type: "string"
|
||||
Type:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Directory"
|
||||
- "File"
|
||||
Designation:
|
||||
type: "string"
|
||||
GuidDbBlob:
|
||||
type: "string"
|
||||
Description:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
TableName: "DmsFile"
|
||||
GuidOfTableName: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
ProgramIdentifier: "Direct"
|
||||
ProgramIdentifierDesignation: "Manuell hinzugefügte Dateien"
|
||||
Type: "File"
|
||||
GuidDbBlob: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: null
|
||||
Description: null
|
||||
Document:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "IsActive"
|
||||
- "Type"
|
||||
- "Date"
|
||||
- "Number"
|
||||
- "GuidBranch"
|
||||
- "GuidCustomer"
|
||||
- "CreationMoment"
|
||||
- "LastModificationMoment"
|
||||
- "Address"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
Type:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Offer"
|
||||
- "Order"
|
||||
- "DeliveryNote"
|
||||
- "Invoice"
|
||||
- "CreditNote"
|
||||
Date:
|
||||
type: "string"
|
||||
format: "date"
|
||||
Number:
|
||||
type: "number"
|
||||
GuidBranch:
|
||||
type: "string"
|
||||
GuidCustomer:
|
||||
type: "string"
|
||||
GuidCustomerVehicle:
|
||||
type: "string"
|
||||
CreationMoment:
|
||||
type: "string"
|
||||
format: "date-time"
|
||||
LastModificationMoment:
|
||||
type: "string"
|
||||
format: "date-time"
|
||||
Address:
|
||||
$ref: "#/components/schemas/PostalAddress"
|
||||
DeliveryAddress:
|
||||
$ref: "#/components/schemas/PostalAddress"
|
||||
InvoiceAddress:
|
||||
$ref: "#/components/schemas/PostalAddress"
|
||||
GuidDocumentOfOffer:
|
||||
type: "string"
|
||||
GuidDocumentOfOrder:
|
||||
type: "string"
|
||||
GuidDocumentOfDeliveryNote:
|
||||
type: "string"
|
||||
GuidDocumentOfInvoice:
|
||||
type: "string"
|
||||
GuidDocumentOfCreditNote:
|
||||
type: "string"
|
||||
GuidEmployeeOfSeller:
|
||||
type: "string"
|
||||
SalesPriceNet:
|
||||
type: "number"
|
||||
SalesPriceGross:
|
||||
type: "number"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActive: true
|
||||
Type: "Order"
|
||||
Date: "2021-02-02"
|
||||
Number: 123456
|
||||
Guidbranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomer: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
CreationMoment: "2021-02-02T10:36:10.172"
|
||||
LastModificationMoment: "2021-02-02T10:36:10.172"
|
||||
Address: null
|
||||
DeliveryAddress: null
|
||||
InvoiceAddress: null
|
||||
SalesPriceNet: 42.12
|
||||
SalesPriceGross: 50.12
|
||||
DocumentPosition:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "GuidDocument"
|
||||
- "Number"
|
||||
- "Type"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
GuidDocument:
|
||||
type: "string"
|
||||
Number:
|
||||
type: "number"
|
||||
Type:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Article"
|
||||
- "Text"
|
||||
- "Sum"
|
||||
- "Set"
|
||||
GuidArticle:
|
||||
type: "string"
|
||||
Amount:
|
||||
type: "number"
|
||||
SalesPriceNetSingle:
|
||||
type: "string"
|
||||
SalesPriceGrossSingle:
|
||||
type: "string"
|
||||
SalesPriceNetTotal:
|
||||
type: "string"
|
||||
SalesPriceGrossTotal:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidDocument: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Number: 1
|
||||
Type: "Article"
|
||||
GuidArticle: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Amount: 4
|
||||
SalesPriceNetSingle: 42.12
|
||||
SalesPriceGrossSingle: 50.12
|
||||
SalesPriceNetTotal: 168.48
|
||||
SalesPriceGrossTotal: 200.48
|
||||
PostalAddress:
|
||||
type: "object"
|
||||
properties:
|
||||
Salutation:
|
||||
type: "string"
|
||||
Name1:
|
||||
type: "string"
|
||||
Name2:
|
||||
type: "string"
|
||||
Name3:
|
||||
type: "string"
|
||||
Street:
|
||||
type: "string"
|
||||
Postalcode:
|
||||
type: "string"
|
||||
Town:
|
||||
type: "string"
|
||||
Township:
|
||||
type: "string"
|
||||
GuidAddressState:
|
||||
type: "string"
|
||||
example:
|
||||
Salutation: "Herr"
|
||||
Name1: "Max Mustermann"
|
||||
Name2: null
|
||||
Name3: null
|
||||
Street: "Musterstra<72>e 123"
|
||||
Postalcode: "01234"
|
||||
Town: "Musterhausen"
|
||||
Township: "Musterviertel"
|
||||
GuidAddressState: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
SchedulerAppointment:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Designation"
|
||||
- "StartMoment"
|
||||
- "EndMoment"
|
||||
- "WasCreatedByOnlineScheduler"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
LicenceTagNumber:
|
||||
type: "string"
|
||||
StartMoment:
|
||||
type: "string"
|
||||
format: "date-time"
|
||||
EndMoment:
|
||||
type: "string"
|
||||
format: "date-time"
|
||||
Comment:
|
||||
type: "string"
|
||||
WasCreatedByOnlineScheduler:
|
||||
type: "boolean"
|
||||
OnlineSchedulerText:
|
||||
type: "string"
|
||||
AppointmentMakerEmailAddress:
|
||||
type: "string"
|
||||
GuidBranch:
|
||||
type: "string"
|
||||
GuidOnlineSchedulerBranch:
|
||||
type: "string"
|
||||
GuidCustomerVehicle:
|
||||
type: "string"
|
||||
GuidCustomerStorage:
|
||||
type: "string"
|
||||
GuidDocument:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "Max Müller, A-BC 1234"
|
||||
LicenceTagNumber: "A-BC 1234"
|
||||
StartMoment: "2021-02-02T10:36:10.172"
|
||||
EndMoment: "2021-02-02T10:36:10.172"
|
||||
Comment: null
|
||||
WasCreatedByOnlineScheduler: true
|
||||
OnlineSchedulerText: "Service: Ich möchte einen Termin für eine Einlagerung haben."
|
||||
AppointmentMakerEmailAddress: "info@prm-ag.de"
|
||||
GuidBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidOnlineSchedulerBranch: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomerVehicle: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidCustomerStorage: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
securitySchemes:
|
||||
SessionScheme:
|
||||
type: http
|
||||
scheme: bearer
|
||||
parameters:
|
||||
_HashValueParameter:
|
||||
name: "_HashValue"
|
||||
in: "query"
|
||||
description: "If you want to process a write operation you shall provide the hashvalue of the current view of the object you want to write to. If someone else has written something before you'll get a 412 response code."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
DmsFilesTypeParameter:
|
||||
name: "Type"
|
||||
in: "query"
|
||||
description: "Filter by type."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Directory"
|
||||
- "File"
|
||||
example: "File"
|
||||
GuidPathParameter:
|
||||
name: "Guid"
|
||||
in: "path"
|
||||
description: "The primary identifier of the entry (in the database)."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActiveParameter:
|
||||
name: "IsActive"
|
||||
in: "query"
|
||||
description: "Only active elements shall be returned. If null both will get returned."
|
||||
required: false
|
||||
schema:
|
||||
type: "boolean"
|
||||
default: null
|
||||
example: true
|
||||
LimitParameter:
|
||||
name: "Limit"
|
||||
in: "query"
|
||||
description: "Limits the number of result entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 1
|
||||
maximum: 2147483647
|
||||
example: 20
|
||||
OffsetParameter:
|
||||
name: "Offset"
|
||||
in: "query"
|
||||
description: "Skip the first number of entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 0
|
||||
maximum: 2147483647
|
||||
example: 0
|
||||
ResponseResolutionDepthParameter:
|
||||
name: "ResponseResolutionDepth"
|
||||
in: "query"
|
||||
description: "If your response object has a field with GuidSomething, this last object will be resolved. Instead of the field GuidSomething you'll get a json object of type Something with it's content. The depth determines how deep this operation shall be. The deeper, the slower your operation will be in general."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: 0
|
||||
minimum: 0
|
||||
maximum: 3
|
||||
example: 1
|
||||
SearchTermParameter:
|
||||
name: "SearchTerm"
|
||||
in: "query"
|
||||
description: "Searches the entries and it's content."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "mc*onald"
|
||||
responses:
|
||||
SessionOfOnlineUserOrHigherRequired:
|
||||
description: "You need a session of type OnlineUser or TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
SessionOfTyreProUserOrHigherRequired:
|
||||
description: "You need a session of type TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
GenericError:
|
||||
description: "Unexpected error like 4XX or 5XX http errors."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,725 +0,0 @@
|
||||
openapi: 3.0.0
|
||||
info:
|
||||
title: "TyrePro-API, OnlineService"
|
||||
version: "1"
|
||||
servers:
|
||||
- url: "https://musterreifen.com/api"
|
||||
description: "Demo server"
|
||||
- url: "https://onlineservices.demo.rz2.prm-ag.de/O6J20ZebmghzkNgrdD759A/api"
|
||||
description: "Development server"
|
||||
paths:
|
||||
/OnlineServiceDomainFooterModules:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServiceDomainFooterModules"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
- name: "GuidOnlineServiceDomain"
|
||||
in: "query"
|
||||
required: false
|
||||
description: "Parentreference. Required if your session is not TyreProUser or higher."
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/OnlineServiceDomainFooterModule"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfTyreProUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServiceDomainFooterModules/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServiceDomainFooterModules"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/OnlineServiceDomainFooterModule"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServiceDomains:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServiceDomains"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
- name: "Domain"
|
||||
in: "query"
|
||||
description: "When the parameter is not given the results will be filtered by your calling domain."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "shop.musterreifen.de"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/OnlineServiceDomain"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServiceDomains/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServiceDomains"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/OnlineServiceDomain"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServiceDomains/{Guid}/OnlineServiceDomainFooterModules:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServiceDomains"
|
||||
- "OnlineServiceDomainFooterModules"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/OnlineServiceDomainFooterModule"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServiceDomains/{Guid}/OnlineServices:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServiceDomains"
|
||||
- "OnlineServices"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/OnlineService"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServiceDomains/{Guid}/custommethods/GenerateCssFile:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServiceDomains"
|
||||
description: "Generates a CSS-file with the colors as css-variables and delivers the binary file content."
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ContentDispositionParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
text/css:
|
||||
schema:
|
||||
type: "string"
|
||||
format: "binary"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServices:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServices"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
- name: "GuidOnlineServiceDomain"
|
||||
in: "query"
|
||||
required: false
|
||||
description: "Parentreference. Required if your session is not TyreProUser or higher."
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/OnlineService"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfTyreProUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServices/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServices"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/OnlineService"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineServices/{Guid}/OnlineSchedulerServices:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineServices"
|
||||
- "OnlineSchedulerServices"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/ResponseResolutionDepthParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/OnlineSchedulerService"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineUsers:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineUsers"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/OffsetParameter"
|
||||
- $ref: "#/components/parameters/LimitParameter"
|
||||
- $ref: "#/components/parameters/SearchTermParameter"
|
||||
- $ref: "#/components/parameters/UsernameParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
headers:
|
||||
TotalNumberOfEntries:
|
||||
schema:
|
||||
type: integer
|
||||
description: The total number of results of this operation. Please be aware that this number could be wrong if the parameter SearchTerm is used, due to processing the SearchTerm over the acutal result array.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: "array"
|
||||
items:
|
||||
$ref: "#/components/schemas/OnlineUser"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfTyreProUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineUsers/{Guid}:
|
||||
get:
|
||||
tags:
|
||||
- "OnlineUsers"
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/OnlineUser"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
/OnlineUsers/{Guid}/custommethods/SetPassword:
|
||||
post:
|
||||
tags:
|
||||
- "OnlineUsers"
|
||||
description: "Sets a (new) password."
|
||||
parameters:
|
||||
- $ref: "#/components/parameters/GuidPathParameter"
|
||||
- $ref: "#/components/parameters/PasswordHashValueParameter"
|
||||
responses:
|
||||
200:
|
||||
description: "successful operation"
|
||||
401:
|
||||
$ref: "#/components/responses/SessionOfOnlineUserOrHigherRequired"
|
||||
default:
|
||||
$ref: "#/components/responses/GenericError"
|
||||
security:
|
||||
- SessionScheme: []
|
||||
components:
|
||||
schemas:
|
||||
GenericError:
|
||||
type: "object"
|
||||
required:
|
||||
- "Message"
|
||||
- "Details"
|
||||
properties:
|
||||
Message:
|
||||
type: "string"
|
||||
Details:
|
||||
type: "string"
|
||||
example:
|
||||
Message: "Ihr Anwender wurde nicht gefunden."
|
||||
Details: "Progress.Lang.AppError\n Ihr Anwender wurde nicht gefunden.\nat sourcecode.line 123"
|
||||
_HashValue:
|
||||
type: "string"
|
||||
description: "HashValue of the object which you'll need to process write-operations."
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
OnlineSchedulerService:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "GuidOnlineService"
|
||||
- "Designation"
|
||||
- "IsDefault"
|
||||
- "CalendarType"
|
||||
- "UsersHaveToEnterALicenceTag"
|
||||
- "UsersMayEnterANewLicenceTag"
|
||||
- "IsConnectedWithATyreStorage"
|
||||
- "DeadlineTimeInSecondsSinceMidnight"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
GuidOnlineService:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
IsVisible:
|
||||
type: "boolean"
|
||||
IsDefault:
|
||||
type: "boolean"
|
||||
CalendarType:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Date"
|
||||
- "DateAndTime"
|
||||
UsersHaveToEnterALicenceTag:
|
||||
type: "boolean"
|
||||
UsersMayEnterANewLicenceTag:
|
||||
type: "boolean"
|
||||
IsConnectedWithATyreStorage:
|
||||
type: "boolean"
|
||||
DeadlineTimeInSecondsSinceMidnight:
|
||||
type: "integer"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidOnlineService: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "Termin für eine Einlagerung."
|
||||
IsVisible: true
|
||||
IsDefault: true
|
||||
CalendarType: "Date"
|
||||
UsersHaveToEnterALicenceTag: true
|
||||
UsersMayEnterANewLicenceTag: false
|
||||
IsConnectedWithATyreStorage: true
|
||||
DeadlineTimeInSecondsSinceMidnight: 43200
|
||||
OnlineServiceDomainFooterModule:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Designation"
|
||||
- "IsLegalNotice"
|
||||
- "ContentType"
|
||||
- "Content"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
IsLegalNotice:
|
||||
type: "boolean"
|
||||
ContentType:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Link"
|
||||
- "Text"
|
||||
Content:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "Facebook"
|
||||
ContentType: "Link"
|
||||
Content: "https://example.domain/foo?bar=true"
|
||||
OnlineServiceDomain:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Domain"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
CompanyName:
|
||||
type: "string"
|
||||
Domain:
|
||||
type: "string"
|
||||
GuidDbBlobHeaderLogo:
|
||||
type: "string"
|
||||
GuidDbBlobFooterLogo:
|
||||
type: "string"
|
||||
BodyBackgroundColor:
|
||||
type: "string"
|
||||
FormBackgroundColor:
|
||||
type: "string"
|
||||
PrimaryColor:
|
||||
type: "string"
|
||||
SecondaryColor:
|
||||
type: "string"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "9acea90b-f0d9-2d95-7814-c53b28d87980"
|
||||
Domain: "musterreifen.com"
|
||||
GuidDbBlobHeaderLogo: "9acea90b-f0d9-2d95-7814-c53b28d87980"
|
||||
GuidDbBlobFooterLogo: null
|
||||
BodyBackgroundColor: null
|
||||
FormBackgroundColor: "rgb(255,0,0)"
|
||||
PrimaryColor: null
|
||||
SecondaryColor: null
|
||||
OnlineService:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "GuidOnlineServiceDomain"
|
||||
- "Designation"
|
||||
- "IsVisible"
|
||||
- "IsDefault"
|
||||
- "Type"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
GuidOnlineServiceDomain:
|
||||
type: "string"
|
||||
GuidOnlineServiceOfScheduler:
|
||||
type: "string"
|
||||
Designation:
|
||||
type: "string"
|
||||
IsVisible:
|
||||
type: "boolean"
|
||||
IsDefault:
|
||||
type: "boolean"
|
||||
Type:
|
||||
type: "string"
|
||||
enum:
|
||||
- "CustomerInformation"
|
||||
- "Scheduler"
|
||||
- "Shop"
|
||||
UrlExtension:
|
||||
type: "string"
|
||||
NewUsersMayRegister:
|
||||
type: "boolean"
|
||||
OneClickPurchaseIsAllowed:
|
||||
type: "boolean"
|
||||
TyreProArticleColorsShallBeUsed:
|
||||
type: "boolean"
|
||||
DefaultArticleAmount:
|
||||
type: "number"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
GuidOnlineServiceDomain: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Designation: "B2B-Shop"
|
||||
IsVisible: true
|
||||
IsDefault: true
|
||||
Type: "Shop"
|
||||
UrlExtension: "Shop"
|
||||
NewUsersMayRegister: false
|
||||
OneClickPurchaseIsAllowed: true
|
||||
TyreProArticleColorsShallBeUsed: true
|
||||
DefaultArticleAmount: 4
|
||||
OnlineUser:
|
||||
type: "object"
|
||||
required:
|
||||
- "Guid"
|
||||
- "Username"
|
||||
- "IsActive"
|
||||
- "GuidCustomer"
|
||||
- "MayChangeTheMainAddress"
|
||||
- "FullTaxPercentage"
|
||||
- "ReducedTaxPercentage"
|
||||
properties:
|
||||
Guid:
|
||||
type: "string"
|
||||
Username:
|
||||
type: "string"
|
||||
IsActive:
|
||||
type: "boolean"
|
||||
GuidCustomer:
|
||||
type: "string"
|
||||
MayChangeTheMainAddress:
|
||||
type: "boolean"
|
||||
FullTaxPercentage:
|
||||
type: "number"
|
||||
ReducedTaxPercentage:
|
||||
type: "number"
|
||||
_HashValue:
|
||||
$ref: "#/components/schemas/_HashValue"
|
||||
example:
|
||||
Guid: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
Username: "Mustermann"
|
||||
IsActive: true
|
||||
GuidCustomer: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
MayChangeTheMainAddress: true
|
||||
FullTaxPercentage: 19
|
||||
ReducedTaxPercentage: 7
|
||||
securitySchemes:
|
||||
SessionScheme:
|
||||
type: http
|
||||
scheme: bearer
|
||||
parameters:
|
||||
_HashValueParameter:
|
||||
name: "_HashValue"
|
||||
in: "query"
|
||||
description: "If you want to process a write operation you shall provide the hashvalue of the current view of the object you want to write to. If someone else has written something before you'll get a 412 response code."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "f50df554352ac91635f900026860e3371a71999d"
|
||||
ContentDispositionParameter:
|
||||
name: "ContentDisposition"
|
||||
in: "query"
|
||||
description: "How the file is deliverd. Inline is inside the same browser tab i.e.. This parameter takes only effect if parameter BinaryResponse=true."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
enum:
|
||||
- "Inline"
|
||||
- "Attachment"
|
||||
default: "Inline"
|
||||
example: "Inline"
|
||||
GuidPathParameter:
|
||||
name: "Guid"
|
||||
in: "path"
|
||||
description: "The primary identifier of the entry (in the database)."
|
||||
required: true
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "ebb89e89-8d25-809e-7814-c53b686ae164"
|
||||
IsActiveParameter:
|
||||
name: "IsActive"
|
||||
in: "query"
|
||||
description: "Only active elements shall be returned. If null both will get returned."
|
||||
required: false
|
||||
schema:
|
||||
type: "boolean"
|
||||
default: null
|
||||
example: true
|
||||
LimitParameter:
|
||||
name: "Limit"
|
||||
in: "query"
|
||||
description: "Limits the number of result entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 1
|
||||
maximum: 2147483647
|
||||
example: 20
|
||||
OffsetParameter:
|
||||
name: "Offset"
|
||||
in: "query"
|
||||
description: "Skip the first number of entries."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: null
|
||||
minimum: 0
|
||||
maximum: 2147483647
|
||||
example: 0
|
||||
PasswordHashValueParameter:
|
||||
name: "PasswordHashValue"
|
||||
in: "query"
|
||||
description: "The SHA-1-value of the password. The hash should be formatted as a hex-encoded string."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "e099b5c2aef873f5e2612da35056bd2287a3c404"
|
||||
ResponseResolutionDepthParameter:
|
||||
name: "ResponseResolutionDepth"
|
||||
in: "query"
|
||||
description: "If your response object has a field with GuidSomething, this last object will be resolved. Instead of the field GuidSomething you'll get a json object of type Something with it's content. The depth determines how deep this operation shall be. The deeper, the slower your operation will be in general."
|
||||
required: false
|
||||
schema:
|
||||
type: "integer"
|
||||
default: 0
|
||||
minimum: 0
|
||||
maximum: 3
|
||||
example: 1
|
||||
SearchTermParameter:
|
||||
name: "SearchTerm"
|
||||
in: "query"
|
||||
description: "Searches the entries and it's content."
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
example: "mc*onald"
|
||||
UsernameParameter:
|
||||
name: "Username"
|
||||
in: "query"
|
||||
required: false
|
||||
schema:
|
||||
type: "string"
|
||||
default: null
|
||||
responses:
|
||||
SessionOfOnlineUserOrHigherRequired:
|
||||
description: "You need a session of type OnlineUser or TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
SessionOfTyreProUserOrHigherRequired:
|
||||
description: "You need a session of type TyreProUser."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
GenericError:
|
||||
description: "Unexpected error like 4XX or 5XX http errors."
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/GenericError"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -8,6 +8,10 @@ servers:
|
||||
- url: "https://onlineservices.demo.rz2.prm-ag.de/O6J20ZebmghzkNgrdD759A/api"
|
||||
description: "Development server"
|
||||
paths:
|
||||
|
||||
|
||||
|
||||
|
||||
/AddressStates:
|
||||
get:
|
||||
tags:
|
||||
File diff suppressed because it is too large
Load Diff
2592
src/v2/shop.yaml
Normal file
2592
src/v2/shop.yaml
Normal file
File diff suppressed because it is too large
Load Diff
2106
src/v2/tpms.yaml
Normal file
2106
src/v2/tpms.yaml
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user