Compare commits

...

23 Commits

Author SHA1 Message Date
Nico Kroll adb589ef49 New fields for redirecting to a customer url 2025-10-29 08:42:56 +01:00
Nico Kroll fbcb1ff6bb Filters extended for PairSearch 2025-10-20 09:08:40 +02:00
Nico Kroll 68eca53428 Added Motorcycle-Data 2025-10-17 09:41:45 +02:00
Nico Kroll 694582091b Typing error 2025-10-16 15:16:36 +02:00
Nico Kroll 254d3b09ae Search by motorcycles 2025-10-16 14:57:10 +02:00
Nico Kroll 1c7255fa72 Abfrage von Zuhebörteilen, wie z.B. Schläuchen 2025-10-16 11:33:09 +02:00
Nico Kroll 574b8caf49 Reorganization for better understanding 2025-10-16 10:14:28 +02:00
Nico Kroll dacc6cade4 Pair- or Couplesearch implementation
For different dimensions of front and rear axle
2025-10-16 09:25:45 +02:00
Nico Kroll 6d93e58c98 New Endpoint for StockDetails of an article
And some more descriptions for stock coloumns. The clients are using often abbreviations
2025-10-15 11:17:18 +02:00
Nico Kroll 1edeb5178d Raw ProgramIdentifier 2025-10-07 09:28:58 +02:00
Nico Kroll 1e6a843330 Added designations for any UI, to show 2025-09-12 10:27:34 +02:00
Nico Kroll b797105afc Added GuidOnlineService-Parameter 2025-09-04 06:38:13 +02:00
Nico Kroll 741f6c34dd Providing information about top sold articles 2025-08-21 10:28:38 +02:00
Nico Kroll cb2e4d1d60 Added Areas
These are blocks on the page to show custom content. Like typical advertisment-blocks on other websites.
2025-08-21 09:40:40 +02:00
Nico Kroll 7449bb1a06 Wrong type 2025-08-21 07:44:08 +02:00
Nico Kroll 791d46ff6b ShopArticleInformation added. I.e. photos and marketing stuff 2025-08-21 07:40:44 +02:00
Nico Kroll 5b9a836c65 V10 - rework of Blob-Handling 2025-08-20 10:33:58 +02:00
Nico Kroll cec3fa68ad The updated document gets returned 2025-08-20 10:30:59 +02:00
Nico Kroll 00243eb3b5 Small enhancements due to requests 2025-08-05 14:23:49 +02:00
Nico Kroll 8cd8199417 New fields for article references and the function to rearrange the customer storage 2025-06-19 14:05:05 +02:00
Nico Kroll 738aaa0a6d Amount in cart is now a complex object 2025-06-19 13:38:08 +02:00
Nico Kroll 094262e414 Naming in Browsers is stupid.
Yeah :/
2024-10-01 12:00:06 +02:00
Nico Kroll 5bc944a908 Some moments has been missing 2024-09-03 08:06:37 +02:00
4 changed files with 940 additions and 242 deletions

View File

@ -19,6 +19,7 @@ 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

View File

@ -1287,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:
@ -4206,6 +4262,7 @@ components:
- "UsersMayEnterANewLicenceTag"
- "IsConnectedWithATyreStorage"
- "DeadlineTimeInSecondsSinceMidnight"
- "DeadlineTimeInSecondsSinceMidnight"
properties:
Guid:
type: "string"
@ -4230,6 +4287,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:

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
openapi: 3.0.0
info:
title: "TyrePro-API, TPMS"
version: "Version 4"
version: "Version 7"
servers:
- url: "https://musterreifen.com/api/tpms"
description: "Development server"
@ -167,6 +167,23 @@ paths:
$ref: "#/components/responses/GenericError"
security:
- SessionScheme: []
/CustomerStorages/{Guid}/custommethods/Rearrange:
post:
tags:
- "TPMS / customer storage"
parameters:
- $ref: "#/components/parameters/GuidPathParameter"
responses:
200:
description: "successful operation"
content:
application/json:
schema:
$ref: "#/components/schemas/CustomerStorage"
default:
$ref: "#/components/responses/GenericError"
security:
- SessionScheme: []
/CustomerStoragePositions/{Guid}:
get:
tags:
@ -572,6 +589,7 @@ paths:
$ref: "#/components/schemas/Customer"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/CustomerStorages:
@ -599,6 +617,7 @@ paths:
$ref: "#/components/schemas/CustomerStorage"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/CustomerVehicles:
@ -625,6 +644,7 @@ paths:
$ref: "#/components/schemas/CustomerVehicle"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/CustomerVehicles/{Guid}/CustomerStorages:
@ -653,6 +673,7 @@ paths:
$ref: "#/components/schemas/CustomerStorage"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/CustomerVehicles/{Guid}/TpmsMeasurements:
@ -680,6 +701,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurement"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
post:
@ -702,6 +724,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurement"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/DbBlobs/{Guid}:
@ -722,6 +745,7 @@ paths:
$ref: "#/components/schemas/DbBlob"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/DmsFiles:
@ -743,6 +767,7 @@ paths:
$ref: "#/components/schemas/DmsFile"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/Documents:
@ -782,6 +807,7 @@ paths:
$ref: "#/components/schemas/Document"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/Documents/{Guid}:
@ -799,6 +825,7 @@ paths:
$ref: "#/components/schemas/Document"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/Employees:
@ -826,6 +853,7 @@ paths:
$ref: "#/components/schemas/Employee"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/Employees/{Guid}:
@ -843,6 +871,7 @@ paths:
$ref: "#/components/schemas/Employee"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/TpmsMeasurements:
@ -864,6 +893,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurement"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/TpmsMeasurements/{Guid}:
@ -881,6 +911,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurement"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
patch:
@ -904,6 +935,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurement"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/TpmsMeasurements/{Guid}/DmsFiles:
@ -931,6 +963,7 @@ paths:
$ref: "#/components/schemas/DmsFile"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
post:
@ -953,6 +986,7 @@ paths:
$ref: "#/components/schemas/DmsFile"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/TpmsMeasurements/{Guid}/TpmsMeasurementPositions:
@ -980,6 +1014,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurementPosition"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
post:
@ -1002,6 +1037,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurementPosition"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/TpmsMeasurementPositions:
@ -1023,6 +1059,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurementPosition"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/TpmsMeasurementPositions/{Guid}:
@ -1040,6 +1077,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurementPosition"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
patch:
@ -1063,6 +1101,7 @@ paths:
$ref: "#/components/schemas/TpmsMeasurementPosition"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/TpmsMeasurementPositions/{Guid}/DmsFiles:
@ -1090,6 +1129,7 @@ paths:
$ref: "#/components/schemas/DmsFile"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
post:
@ -1112,6 +1152,7 @@ paths:
$ref: "#/components/schemas/DmsFile"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/VehicleTypes:
@ -1139,6 +1180,7 @@ paths:
$ref: "#/components/schemas/VehicleType"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
/VehicleTypes/{Guid}:
@ -1156,6 +1198,7 @@ paths:
$ref: "#/components/schemas/VehicleType"
default:
$ref: "#/components/responses/GenericError"
deprecated: true
security:
- SessionScheme: []
components:
@ -1233,10 +1276,13 @@ components:
type: "object"
required:
- "Guid"
- "Score"
- "Number"
properties:
Guid:
type: "string"
Score:
type: "number"
Number:
type: "integer"
Name1:
@ -1255,11 +1301,14 @@ components:
type: "object"
required:
- "Guid"
- "Score"
- "GuidCustomer"
- "CustomerNumber"
properties:
Guid:
type: "string"
Score:
type: "number"
LicenceTagNumber:
type: "string"
GuidCustomer:
@ -1274,14 +1323,24 @@ components:
type: "object"
required:
- "Guid"
- "Score"
- "Number"
- "ContractStartDate"
- "IsActive"
- "GuidCustomer"
- "CustomerNumber"
properties:
Guid:
type: "string"
Score:
type: "number"
Number:
type: "integer"
ContractStartDate:
type: "string"
format: "date"
IsActive:
type: "boolean"
DimensionFrontLeft:
type: "string"
LicenceTagNumber:
@ -1294,12 +1353,19 @@ components:
type: "integer"
CustomerName1:
type: "string"
StorageDesignation:
type: "string"
StoragePlaceDesignation:
type: "string"
RemoteStorageReference:
type: "string"
Documents:
type: "array"
items:
type: "object"
required:
- "Guid"
- "Score"
- "DocumentTypeDesignation"
- "Date"
- "Number"
@ -1310,6 +1376,8 @@ components:
properties:
Guid:
type: "string"
Score:
type: "number"
DocumentTypeDesignation:
type: "string"
Date:
@ -1339,12 +1407,15 @@ components:
type: "object"
required:
- "Guid"
- "Score"
- "StartMoment"
- "Designation"
- "WasCreatedByOnlineScheduler"
properties:
Guid:
type: "string"
Score:
type: "number"
StartMoment:
type: "string"
format: "date-time"
@ -1393,6 +1464,8 @@ components:
type: "string"
GuidStorageLocation:
type: "string"
RemoteStorageReference:
type: "string"
CommentExternal:
type: "string"
CommentInternal:
@ -1405,6 +1478,7 @@ components:
- "Guid"
- "GuidCustomerStorage"
- "PositionDescription"
- "PositionDescriptionDesignation"
properties:
Guid:
type: "string"
@ -1414,6 +1488,10 @@ components:
readOnly: true
PositionDescription:
type: "string"
PositionDescriptionDesignation:
type: "string"
GuidArticleTyre:
type: "string"
TyreDimension:
type: "string"
TyreManufacturer:
@ -1430,6 +1508,8 @@ components:
type: "integer"
TyreDotWeek:
type: "integer"
GuidArticleRim:
type: "string"
RimDimension:
type: "string"
RimManufacturer:
@ -1445,6 +1525,8 @@ components:
- "SteelRim"
- "WithoutRim"
- "Unknown"
GuidArticleTpms:
type: "string"
TpmsSensorId:
type: "string"
TpmsSensorBatteryInPercent:
@ -1476,10 +1558,13 @@ components:
type: "object"
readOnly: true
required:
- "Guid"
- "Type"
- "Designation"
- "Axles"
properties:
Guid:
type: "string"
Type:
type: "string"
enum:
@ -1503,6 +1588,7 @@ components:
- "IsDrivingAxle"
- "IsReserveAxle"
- "IsSteeringAxle"
- "Designation"
- "Positions"
properties:
BlockNumberFrontToBack:
@ -1513,6 +1599,8 @@ components:
type: "boolean"
IsSteeringAxle:
type: "boolean"
Designation:
type: "string"
Positions:
type: "array"
items:
@ -1520,11 +1608,14 @@ components:
required:
- "BlockNumberLeftToRight"
- "PositionDescription"
- "Designation"
properties:
BlockNumberLeftToRight:
type: "integer"
PositionDescription:
type: "string"
Designation:
type: "string"
ChassisNumber:
type: "string"
EgTypeApprovalNumber:
@ -1569,6 +1660,7 @@ components:
type: "object"
required:
- "Guid"
- "ProgramIdentifier"
- "ProgramIdentifierDesignation"
- "Type"
- "Designation"
@ -1580,6 +1672,9 @@ components:
ProgramIdentifierDesignation:
type: "string"
readOnly: true
ProgramIdentifier:
type: "string"
readOnly: true
Type:
type: "string"
enum: