API: Issue with schema.yaml
### Describe the bug The schema for publishing episodes is describing a body as JSON: ``` post: summary: Publish an episode operationId: publish-episode parameters: - name: episodeId in: path description: The id of the episode to publish required: true schema: type: integer format: int64 requestBody: description: Publish parameters required: true content: application/json: schema: $ref: "#/components/schemas/EpisodePublishRequest" ``` While the post for publishing a new episode required multipart/form-data: ``` /episodes/{episodeId}/publish: post: summary: Publish an episode operationId: publish-episode parameters: - name: episodeId in: path description: The id of the episode to publish required: true schema: type: integer format: int64 requestBody: description: Publish parameters required: true content: application/json: schema: $ref: "#/components/schemas/EpisodePublishRequest" ``` BUT the publishing new episode only works if I pass the body as form data, not JSON. ### Steps to reproduce Publishing new episode only works if I pass the body as form data, not JSON. ``` $body = @{ 'publication_method' = 'now' 'created_by' = 1 } $response = Invoke-RestMethod ` -Uri "https://myserver/api/rest/v1/episodes/83/publish" ` -Method Post ` -Headers $headers ` -Form $body ``` ### Expected behavior Expectation is that publishing a the new episode will work as described by the API schema. ### Actual behavior Publishing new episode does not work if you post application/json. ### Context - Castopod: lastest production function - OS: Docker - Browser: Any - Web server: Whatever is in the Docker container ### Possible fixes This schema definition: ``` /episodes/{episodeId}/publish: post: summary: Publish an episode operationId: publish-episode parameters: - name: episodeId in: path description: The id of the episode to publish required: true schema: type: integer format: int64 requestBody: description: Publish parameters required: true content: application/json: schema: $ref: "#/components/schemas/EpisodePublishRequest" ``` Should be ``` /episodes/{episodeId}/publish: post: summary: Publish an episode operationId: publish-episode parameters: - name: episodeId in: path description: The id of the episode to publish required: true schema: type: integer format: int64 requestBody: description: Publish parameters required: true content: multipart/form-data: schema: $ref: "#/components/schemas/EpisodePublishRequest" ``` The bug is content in the requestBody should be multipeart/form-data. I will provide a fix if this is an accurate description of the bug and an actual bug.
issue