Hey,
voor een programma dat wij gebruiken, krijgen we een OpenAPI beschrijving.
Nu heb ik niet het gevoel dat deze leverancier heel goed weet hoe een API beschreven moet worden. Ik heb reeds enkele foutjes eruit kunnen halen, maar ben zelf ook geen ontwikkelaar.
Het proces is dus:
- leverancier maakt OpenAPI beschrijving
- ik download die als yaml file en plak die in editor.swagger.io
- daar klik ik dan "Generate Client" en krijg ik dus een nette client
Daar kan ik dan mee aan de slag.
In de swagger zie ik volgend product:
De beschrijving daarvoor is:
Concreet is mijn probleem dat de links sectie wel in mijn object staat, maar de data sectie niet.
Ik denk dat de kans het grootst is dat de OpenAPI beschrijving niet correct is, dan dat de Swagger generator een fout bevat.
Hoe moet best de structuur:
"data" : [ meerdere_product_objecten ],
"links": 1_links_object
beschreven worden?
voor een programma dat wij gebruiken, krijgen we een OpenAPI beschrijving.
Nu heb ik niet het gevoel dat deze leverancier heel goed weet hoe een API beschreven moet worden. Ik heb reeds enkele foutjes eruit kunnen halen, maar ben zelf ook geen ontwikkelaar.
Het proces is dus:
- leverancier maakt OpenAPI beschrijving
- ik download die als yaml file en plak die in editor.swagger.io
- daar klik ik dan "Generate Client" en krijg ik dus een nette client
Daar kan ik dan mee aan de slag.
In de swagger zie ik volgend product:
JSON:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| { "data": [ { "id": "1", "type": "product", "attributes": { "businessId": "PRD1", "shortDescription": "A short description", "longDescription": "A long description" }, "relationships": { "testCycle": { "data": { "id": "1", "type": "testCycle" } }, "parent": { "data": { "id": "1", "type": "product" } } } } ], "links": { "prev": "string", "next": "string", "first": "string", "last": "string" } } |
De beschrijving daarvoor is:
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| get: operationId: getProducts description: Fetch all the products summary: Retrieve all products parameters: - in: query name: 'page[offset]' schema: type: integer description: The offset from where 10 items will be returned required: false tags: - Products responses: '200': description: Returns all the products content: application/vnd.api+json: schema: required: - data - links allOf: - type: object properties: data: type: array items: $ref: '#/components/schemas/Product' - $ref: '#/components/schemas/Links' |
Concreet is mijn probleem dat de links sectie wel in mijn object staat, maar de data sectie niet.
Ik denk dat de kans het grootst is dat de OpenAPI beschrijving niet correct is, dan dat de Swagger generator een fout bevat.
Hoe moet best de structuur:
"data" : [ meerdere_product_objecten ],
"links": 1_links_object
beschreven worden?