What are the Slack Archives?

Itโ€™s a history of our time together in the Slack Community! Thereโ€™s a ton of knowledge in here, so feel free to search through the archives for a possible answer to your question.

Because this space is not active, you wonโ€™t be able to create a new post or comment here. If you have a question or want to start a discussion about something, head over to our categories and pick one to post in! You can always refer back to a post from Slack Archives if needed; just copy the link to use it as a reference..

Hello. I tried to generate the OpenApi schema for glue which has an array inside for the cart patch

UPWG9AYH2
UPWG9AYH2 Posts: 509 ๐Ÿง‘๐Ÿปโ€๐Ÿš€ - Cadet

Hello. I tried to generate the OpenApi schema for glue which has an array inside for the cart patch request. The output of the generation is the following (snippet)

...
RestCartsRequestAttributes:
    properties:
        priceMode:
            type: string
        currency:
            type: string
        store:
            type: string
        discounts:
            items:
                $ref: '#/components/schemas/RestCartsDiscountsTransfer'
...

However, after import this leads in Postman to
{
"data": {
"type": "<string>",
"attributes": {
"priceMode": "<string>",
"currency": "<string>",
"store": "<string>",
"discounts": "schema type not provided"
}
}
}
As you can see, the discounts should be displayed as an array, an error/fault string occurred instead. It seems that the generator does omit the type if it is an array of objects. It should be more

RestCartsRequestAttributes:
    properties:
        priceMode:
            type: string
        currency:
            type: string
        store:
            type: string
        discounts:
            type: array
            items:
                $ref: '#/components/schemas/RestCartsDiscountsTransfer'

And then it works correctly
{
"data": {
"type": "<string>",
"attributes": {
"priceMode": "<string>",
"currency": "<string>",
"store": "<string>",
"discounts": [
{
"displayName": "<string>",
"amount": "<integer>",
"code": "<string>"
},
{
"displayName": "<string>",
"amount": "<integer>",
"code": "<string>"
}
]
}
}
}

Is this a known issue? Best regards

Comments