What happens?
The Interface Operations for Post, Put, and Patch , e.g. PutAssetAdministrationShellById, have the output parameter payload as mandatory/cardinality=1.
However, the OpenAPI operation describe the response with 204 (No Content) for Patch and Puts, while Posts, return a 201 AND the whole object.
Why is this wrong?
This is inconsistent with the Interface Operation pattern: Either all API Operations return the object, or the cardinality in the Interface operations is wrong.
How should it be fixed?
Option 1: Change the payload to "optional" (mandatory=false) in the Interface Operations.
Option 2: Change OpenAPI from 204 (No Content) to 200 (OK) and return the objects in the response.
Option 3: Introduce a new design decision in Chapter 12 explaining that Put and Patch have a different behaviour than the one defined in the Interface Operations.
What happens?
The Interface Operations for
Post,Put, andPatch, e.g.PutAssetAdministrationShellById, have the output parameterpayloadas mandatory/cardinality=1.However, the OpenAPI operation describe the response with
204 (No Content)for Patch and Puts, while Posts, return a201AND the whole object.Why is this wrong?
This is inconsistent with the Interface Operation pattern: Either all API Operations return the object, or the cardinality in the Interface operations is wrong.
How should it be fixed?
Option 1: Change the
payloadto "optional" (mandatory=false) in the Interface Operations.Option 2: Change OpenAPI from
204 (No Content)to200 (OK)and return the objects in the response.Option 3: Introduce a new design decision in Chapter 12 explaining that Put and Patch have a different behaviour than the one defined in the Interface Operations.