UNPKG

festivals

Version:
1,998 lines 71.6 kB
{ "swagger": "2.0", "host": "festivals.tech", "basePath": "/api", "info": { "version": "1.0.0", "title": "festivals" }, "tags": [ { "name": "news", "description": "Operation about news" }, { "name": "festivals", "description": "Operation about festivals" }, { "name": "festivals-events", "description": "Operation about festival events" }, { "name": "festivals-categories", "description": "Operation about festival categories" }, { "name": "festivals-places", "description": "Operation about festival places" }, { "name": "festivals-news", "description": "Operation about festival news" } ], "schemes": [ "https" ], "produces": [ "application/vnd.festivals.v1+json", "application/vnd.festivals.v1+xml" ], "security": [ { "oauth2token": [ "public" ] } ], "paths": { "/news": { "get": { "tags": [ "news" ], "summary": "Find news", "description": "Get news collection", "operationId": "getNewsCollection", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "news:get" ] } ], "parameters": [ { "name": "name", "description": "name", "required": false, "type": "string", "in": "query" }, { "name": "updatedAt", "description": "updatedAt", "required": false, "type": "string", "in": "query" }, { "name": "limit", "description": "limit", "required": false, "type": "integer", "in": "query", "default": 100 }, { "name": "offset", "description": "offset", "required": false, "type": "integer", "in": "query" }, { "name": "country", "description": "country", "required": false, "type": "string", "in": "query" }, { "name": "sort", "description": "sort", "required": false, "type": "string", "in": "query" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/NewsCollectionResponse" } } } }, "post": { "tags": [ "news" ], "summary": "Create news", "description": "Create news", "operationId": "createNews", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "news:create" ] } ], "parameters": [ { "in": "body", "name": "newsRequest", "description": "News object", "required": true, "schema": { "$ref": "#/definitions/NewsRequest" } } ], "responses": { "201": { "description": "successful operation", "schema": { "$ref": "#/definitions/NewsResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/news/{news.id}": { "get": { "tags": [ "news" ], "summary": "Get news", "description": "Get news", "operationId": "getNews", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "news:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "News id", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/NewsResponse" } }, "404": { "description": "News not found" } } }, "delete": { "tags": [ "news" ], "summary": "Delete news", "description": "Delete news", "operationId": "deleteNews", "security": [ { "oauth2token": [ "news:delete" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "News id", "required": true, "type": "string" } ], "responses": { "204": { "description": "successful operation" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "News not found" } } }, "put": { "tags": [ "news" ], "summary": "Update news", "description": "Update news", "operationId": "updateNews", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "news:update" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "News id", "required": true, "type": "string" }, { "in": "body", "name": "newsRequest", "description": "News object", "required": true, "schema": { "$ref": "#/definitions/NewsRequest" } } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/NewsResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "News not found" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals": { "get": { "tags": [ "festivals" ], "summary": "Find festivals", "description": "Get festivals collection", "operationId": "getFestivals", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "festivals:get" ] } ], "parameters": [ { "name": "name", "description": "name", "required": false, "type": "string", "in": "query" }, { "name": "description", "description": "description", "required": false, "type": "string", "in": "query" }, { "name": "type", "description": "type", "required": false, "type": "string", "default": "FANTASY", "enum": [ "FANTASY", "WOODSTOCK", "MUSIC" ], "in": "query" }, { "name": "tag", "description": "tag", "required": false, "type": "string", "in": "query" }, { "name": "dateFrom", "description": "dateFrom", "required": false, "type": "string", "in": "query" }, { "name": "dateTo", "description": "dateTo", "required": false, "type": "string", "in": "query" }, { "name": "location.country", "description": "location country", "required": false, "type": "string", "in": "query" }, { "name": "location.name", "description": "location name", "required": false, "type": "string", "in": "query" }, { "name": "location.city", "description": "location city", "required": false, "type": "string", "in": "query" }, { "name": "location.state", "description": "location state", "required": false, "type": "string", "in": "query" }, { "name": "updatedAt", "description": "updatedAt", "required": false, "type": "string", "in": "query" }, { "name": "limit", "description": "limit", "required": false, "type": "integer", "in": "query", "default": 100 }, { "name": "offset", "description": "offset", "required": false, "type": "integer", "in": "query" }, { "name": "sort", "description": "sort", "required": false, "type": "string", "in": "query" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/FestivalsCollectionResponse" } } } }, "post": { "tags": [ "festivals" ], "summary": "Create festival", "description": "Create festival", "operationId": "createFestival", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "festivals:create" ] } ], "parameters": [ { "in": "body", "name": "festivalRequest", "description": "Festival object", "required": true, "schema": { "$ref": "#/definitions/FestivalRequest" } } ], "responses": { "201": { "description": "successful operation", "schema": { "$ref": "#/definitions/FestivalResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}": { "get": { "tags": [ "festivals" ], "summary": "Get festival", "description": "Get festival", "operationId": "getFestival", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "festivals:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/FestivalResponse" } }, "404": { "description": "Festival not found" } } }, "delete": { "tags": [ "festivals" ], "summary": "Delete festival", "description": "Delete festival", "operationId": "deleteFestival", "security": [ { "oauth2token": [ "festivals:delete" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" } ], "responses": { "204": { "description": "successful operation" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not found" } } }, "put": { "tags": [ "festivals" ], "summary": "Update festival", "description": "Update festival", "operationId": "updateFestival", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "festivals:update" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "in": "body", "name": "festivalRequest", "description": "Festival object", "required": true, "schema": { "$ref": "#/definitions/FestivalRequest" } } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/FestivalResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Festival not found" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}/events": { "get": { "tags": [ "festivals-events" ], "summary": "Get festival events", "description": "Get festival events collection", "operationId": "getFestivalEvents", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "events:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "name", "description": "name", "required": false, "type": "string", "in": "query" }, { "name": "description", "description": "description", "required": false, "type": "string", "in": "query" }, { "name": "place.name", "description": "place name", "required": false, "type": "string", "in": "query" }, { "name": "category.name", "description": "category name", "required": false, "type": "string", "in": "query" }, { "name": "dateFrom", "description": "dateFrom", "required": false, "type": "string", "in": "query" }, { "name": "dateTo", "description": "dateTo", "required": false, "type": "string", "in": "query" }, { "name": "author.name", "description": "author name", "required": false, "type": "string", "in": "query" }, { "name": "author.organization", "description": "author organization", "required": false, "type": "string", "in": "query" }, { "name": "updatedAt", "description": "updatedAt", "required": false, "type": "string", "in": "query" }, { "name": "limit", "description": "limit", "required": false, "type": "integer", "in": "query", "default": 100 }, { "name": "offset", "description": "offset", "required": false, "type": "integer", "in": "query" }, { "name": "sort", "description": "sort", "required": false, "type": "string", "in": "query" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/EventsCollectionResponse" } }, "404": { "description": "Not found" } } }, "post": { "tags": [ "festivals-events" ], "summary": "Create festival events", "description": "Create festival events", "operationId": "createFestivalEvent", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "events:create" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "in": "body", "name": "festivalEventRequest", "description": "Festival event object", "required": true, "schema": { "$ref": "#/definitions/EventRequest" } } ], "responses": { "201": { "description": "successful operation", "schema": { "$ref": "#/definitions/EventResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Festival not found" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}/events/{event.id}": { "get": { "tags": [ "festivals-events" ], "summary": "Get festival event", "description": "Get festival event collection", "operationId": "getFestivalEvent", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "events:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "event.id", "in": "path", "description": "Event id", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/EventResponse" } } } }, "delete": { "tags": [ "festivals-events" ], "summary": "Delete festival event", "description": "Delete festival events", "operationId": "deleteFestivalEvent", "security": [ { "oauth2token": [ "events:delete" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "event.id", "in": "path", "description": "Event id", "required": true, "type": "string" } ], "responses": { "204": { "description": "successful operation" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not found" } } }, "put": { "tags": [ "festivals-events" ], "summary": "Update festival events", "description": "Update festival events", "operationId": "updateFestivalEvent", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "events:update" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "event.id", "in": "path", "description": "Event id", "required": true, "type": "string" }, { "in": "body", "name": "festivalEventRequest", "description": "Festival event object", "required": true, "schema": { "$ref": "#/definitions/EventRequest" } } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/EventResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}/categories": { "get": { "tags": [ "festivals-categories" ], "summary": "Get festival categories", "description": "Get festival categories collection", "operationId": "getFestivalCategories", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "categories:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "updatedAt", "description": "updatedAt", "required": false, "type": "string", "in": "query" }, { "name": "parent.id", "description": "category parent id", "required": false, "type": "string", "in": "query" }, { "name": "name", "description": "name", "required": false, "type": "string", "in": "query" }, { "name": "limit", "description": "limit", "required": false, "type": "integer", "in": "query", "default": 100 }, { "name": "offset", "description": "offset", "required": false, "type": "integer", "in": "query" }, { "name": "sort", "description": "sort", "required": false, "type": "string", "in": "query" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/CategoriesCollectionResponse" } }, "404": { "description": "Festival not found" } } }, "post": { "tags": [ "festivals-categories" ], "summary": "Create festival category", "description": "Create festival category", "operationId": "createFestivalCategory", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "categories:create" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "in": "body", "name": "festivalCategoryRequest", "description": "Festival category object", "required": true, "schema": { "$ref": "#/definitions/CategoryRequest" } } ], "responses": { "201": { "description": "successful operation", "schema": { "$ref": "#/definitions/CategoryResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Festival not found" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}/categories/{category.id}": { "get": { "tags": [ "festivals-categories" ], "summary": "Get festival category", "description": "Get festival category", "operationId": "getFestivalCategory", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "categories:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "category.id", "in": "path", "description": "Category id", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/CategoryResponse" } }, "404": { "description": "Not found" } } }, "delete": { "tags": [ "festivals-categories" ], "summary": "Delete festival category", "description": "Delete festival category", "operationId": "deleteFestivalCategory", "security": [ { "oauth2token": [ "categories:delete" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "category.id", "in": "path", "description": "Category id", "required": true, "type": "string" } ], "responses": { "204": { "description": "successful operation" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not found" } } }, "put": { "tags": [ "festivals-categories" ], "summary": "Update festival category", "description": "Update festival category", "operationId": "updateFestivalCategory", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "categories:update" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "category.id", "in": "path", "description": "Category id", "required": true, "type": "string" }, { "in": "body", "name": "festivalCategoryRequest", "description": "Festival category object", "required": true, "schema": { "$ref": "#/definitions/CategoryRequest" } } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/CategoryResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not found" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}/places": { "get": { "tags": [ "festivals-places" ], "summary": "Get festival places", "description": "Get festival places collection", "operationId": "getFestivalPlaces", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "places:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "updatedAt", "description": "updatedAt", "required": false, "type": "string", "in": "query" }, { "name": "parent.id", "description": "place parent id", "required": false, "type": "string", "in": "query" }, { "name": "name", "description": "name", "required": false, "type": "string", "in": "query" }, { "name": "limit", "description": "limit", "required": false, "type": "integer", "in": "query", "default": 100 }, { "name": "offset", "description": "offset", "required": false, "type": "integer", "in": "query" }, { "name": "sort", "description": "sort", "required": false, "type": "string", "in": "query" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/PlacesCollectionResponse" } }, "404": { "description": "Festival not found" } } }, "post": { "tags": [ "festivals-places" ], "summary": "Create festival place", "description": "Create festival place", "operationId": "createFestivalPlace", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "places:create" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "in": "body", "name": "festivalPlaceRequest", "description": "Festival place object", "required": true, "schema": { "$ref": "#/definitions/PlaceRequest" } } ], "responses": { "201": { "description": "successful operation", "schema": { "$ref": "#/definitions/PlaceResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not found" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}/places/{place.id}": { "get": { "tags": [ "festivals-places" ], "summary": "Get festival place", "description": "Get festival place", "operationId": "getFestivalPlace", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "places:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "place.id", "in": "path", "description": "Place id", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/PlaceResponse" } }, "404": { "description": "Festival not found" } } }, "delete": { "tags": [ "festivals-places" ], "summary": "Delete festival place", "description": "Delete festival place", "operationId": "deleteFestivalPlace", "security": [ { "oauth2token": [ "places:delete" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "place.id", "in": "path", "description": "Place id", "required": true, "type": "string" } ], "responses": { "204": { "description": "successful operation" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not found" } } }, "put": { "tags": [ "festivals-places" ], "summary": "Update festival place", "description": "Update festival place", "operationId": "updateFestivalPlace", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "places:update" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "place.id", "in": "path", "description": "Place id", "required": true, "type": "string" }, { "in": "body", "name": "festivalPlaceRequest", "description": "Festival place object", "required": true, "schema": { "$ref": "#/definitions/PlaceRequest" } } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/PlaceResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not found" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}/news": { "get": { "tags": [ "festivals-news" ], "summary": "Find festival news", "description": "Get festival news collection", "operationId": "getFestivalNewsCollection", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "news:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "name", "description": "name", "required": false, "type": "string", "in": "query" }, { "name": "updatedAt", "description": "updatedAt", "required": false, "type": "string", "in": "query" }, { "name": "limit", "description": "limit", "required": false, "type": "integer", "in": "query", "default": 100 }, { "name": "offset", "description": "offset", "required": false, "type": "integer", "in": "query" }, { "name": "sort", "description": "sort", "required": false, "type": "string", "in": "query" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/NewsCollectionResponse" } } } }, "post": { "tags": [ "festivals-news" ], "summary": "Create festival news", "description": "Create festival news", "operationId": "createFestivalNews", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "news:create" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "in": "body", "name": "newsRequest", "description": "News object", "required": true, "schema": { "$ref": "#/definitions/NewsRequest" } } ], "responses": { "201": { "description": "successful operation", "schema": { "$ref": "#/definitions/NewsResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } }, "/festivals/{id}/news/{news.id}": { "get": { "tags": [ "festivals-news" ], "summary": "Get festival news", "description": "Get festival news", "operationId": "getFestivalNews", "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "news:get" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "news.id", "in": "path", "description": "News id", "required": true, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/NewsResponse" } }, "404": { "description": "News not found" } } }, "delete": { "tags": [ "festivals-news" ], "summary": "Delete festival news", "description": "Delete festival news", "operationId": "deleteFestivalNews", "security": [ { "oauth2token": [ "news:delete" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "news.id", "in": "path", "description": "News id", "required": true, "type": "string" } ], "responses": { "204": { "description": "successful operation" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "News not found" } } }, "put": { "tags": [ "festivals-news" ], "summary": "Update festival news", "description": "Update festival news", "operationId": "updateFestivalNews", "consumes": [ "application/vnd.festivals.v1+json" ], "produces": [ "application/vnd.festivals.v1+json" ], "security": [ { "oauth2token": [ "news:update" ] } ], "parameters": [ { "name": "id", "in": "path", "description": "Festival id", "required": true, "type": "string" }, { "name": "news.id", "in": "path", "description": "News id", "required": true, "type": "string" }, { "in": "body", "name": "newsRequest", "description": "News object", "required": true, "schema": { "$ref": "#/definitions/NewsRequest" } } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/NewsResponse" } }, "400": { "description": "Bad request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "News not found" }, "406": { "description": "The request you made is not acceptable" }, "422": { "description": "Invalid parameter value" } } } } }, "securityDefinitions": { "oauth2token": { "type": "oauth2", "flow": "implicit", "authorizationUrl": "https://vehicle-history.io/oauth/authorization", "scopes": { "public": "public API scope", "news:update": "permission to update news", "news:delete": "permission to delete news", "news:get": "permission to get news", "news:create": "permission to create news", "places:update": "permission to update places", "places:delete": "permission to delete places", "places:get": "permission to get places", "places:create": "permission to create places", "categories:update": "permission to update categories", "categories:delete": "permission to delete categories", "categories:get": "permission to get categories", "categories:create": "permission to create categories", "events:update": "permission to update events", "events:delete": "permission to delete events", "events:get": "permission to get events", "events:create": "permission to create events", "festivals:update": "permission to update festivals", "festivals:delete": "permission to delete festivals", "festivals:get": "permission to get festivals", "festivals:create": "permission to create festivals" } } }, "definitions": { "CoordinatesRequest": { "properties": { "lat": { "type": "number", "format": "double", "description": "lat" }, "lon": { "type": "number", "format": "double", "description": "lon" } }, "description": "Geo coordinates", "required": [ "lat", "lon" ] }, "CoordinatesResponse": { "properties": { "lat": { "type": "number", "format": "double", "description": "lat" }, "lon": { "type": "number", "format": "double", "description": "lon" } }, "description": "Geo coordinates", "required": [ "lat", "lon" ] }, "AuthorResponse": { "properties": { "name": { "type": "stri