# Training 19 debrief ## The good - We like Spot 😍 ## What to improve - It would be good to have starting guide from scratch - It's not obvious from the docs on what level to apply some properties (`x-expect`). The structure in the Spot spec can be improved. - There's an error in the documentation examples (`content-type` should be `contentType`): https://redocly.com/docs/realm/spot/spot-specification#json-object - VS Code autocomplete doesn't work(validation works). - Add base security schemas support - I would recommend not to use `assert` as default. - successCriteria is very confusing. x-except much better buy-event-ticket.yaml arazzo: 1.0.0 info: title: Buy Event Ticket version: v1 sourceDescriptions: - name: museum-api type: openapi url: museum.yaml # url: https://phronesis-creativara.redocly.app/_spec/products/museum/@v1/museum.yaml x-parameters: - in: header name: Authorization value: Basic dXNlcm5hbWU6cGFzc3dvcmQ= workflows: - workflowId: buyEventTicket steps: - stepId: listSpecialEvents operationId: listSpecialEvents parameters: - name: endDate in: query value: 2023-09-30 outputs: eventId: $response.body.1.eventId ticketDate: $response.body.1.dates.0 x-expect: statusCode: 200 body: 1: name: Solar Telescope Demonstration - stepId: buyMuseumTickets operationId: buyMuseumTickets requestBody: contentType: application/json payload: ticketType: event eventId: $steps.listSpecialEvents.outputs.eventId ticketDate: $steps.listSpecialEvents.outputs.ticketDate email: yaroslav@redocly.com outputs: ticketId: $response.body.ticketId x-expect: statusCode: 201 body: ticketType: event ticketDate: $steps.listSpecialEvents.outputs.ticketDate - stepId: getTicketCode operationId: getTicketCode parameters: - name: ticketId in: path value: $steps.buyMuseumTickets.outputs.ticketId x-expect: statusCode: 500 successCriteria: - condition: $.message == "Mock server error. Could not generate response. No supported media type found in definition." type: jsonpath context: $response.body