// Code generated by go-swagger; DO NOT EDIT. package restapi // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command import ( "encoding/json" ) // SwaggerJSON embedded version of the swagger document used at generation time var SwaggerJSON json.RawMessage func init() { SwaggerJSON = json.RawMessage([]byte(`{ "schemes": [ "http", "https" ], "swagger": "2.0", "info": { "description": "Dies ist eine API, die es ermöglicht Daten zu Stunden-, Vertretungs-, oder Klausurplänen zu erhalten.", "title": "Organizer", "termsOfService": "https://organizer.martin-luther.schule/terms", "contact": { "email": "info@jonasfranz.software" }, "license": { "name": "MIT", "url": "https://opensource.org/licenses/MIT" }, "version": "1.0.0" }, "host": "localhost:2101", "basePath": "/v1", "paths": { "/course/{course}/exams": { "get": { "produces": [ "application/json" ], "tags": [ "examination scheduling" ], "summary": "Returns course's exams", "operationId": "getExams", "security": [ { "passwordAuth": [] } ], "parameters": [ { "type": "string", "name": "course", "in": "path", "required": true } ], "responses": { "200": { "description": "Lessons sorted by weekday and period", "schema": { "type": "array", "items": { "$ref": "#/definitions/Exam" } } }, "404": { "description": "Cannot find the course" } } } }, "/course/{course}/replacements": { "get": { "produces": [ "application/json" ], "tags": [ "replacement lessons" ], "summary": "Get replacement lesson of a course/class", "operationId": "getReplacementByCourse", "security": [ { "passwordAuth": [] } ], "parameters": [ { "type": "string", "name": "course", "in": "path", "required": true } ], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/ReplacementLesson" } } } } } }, "/course/{course}/timetable": { "get": { "produces": [ "application/json" ], "tags": [ "timetable" ], "summary": "Returns course's timetable", "operationId": "getTimetable", "security": [ { "passwordAuth": [] } ], "parameters": [ { "type": "string", "name": "course", "in": "path", "required": true } ], "responses": { "200": { "description": "Lessons sorted by weekday, period and teacher.", "schema": { "type": "array", "items": { "$ref": "#/definitions/Lesson" } } }, "404": { "description": "Cannot find the course" } } } }, "/replacement/findAll": { "get": { "produces": [ "application/json" ], "tags": [ "replacement lessons" ], "summary": "Finds all available replacement lessons", "operationId": "findReplacementLessons", "security": [ { "passwordAuth": [] } ], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/ReplacementLesson" } } } } } }, "/replacement/findByDate": { "get": { "produces": [ "application/json" ], "tags": [ "replacement lessons" ], "summary": "Finds replacement lessons by date", "operationId": "findReplacementLessonsByDate", "security": [ { "passwordAuth": [] } ], "parameters": [ { "type": "string", "format": "date", "description": "Date of the searched replacement lessons", "name": "date", "in": "query", "required": true } ], "responses": { "200": { "description": "successful operation", "schema": { "type": "array", "items": { "$ref": "#/definitions/ReplacementLesson" } } }, "410": { "description": "Date is not or no longer available" } } } }, "/replacement/{id}": { "get": { "produces": [ "application/json" ], "tags": [ "replacement lessons" ], "summary": "Get replacement lesson by id", "operationId": "getReplacement", "security": [ { "passwordAuth": [] } ], "parameters": [ { "type": "integer", "format": "int64", "description": "Replacement lesson's id", "name": "id", "in": "path", "required": true } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/ReplacementLesson" } }, "404": { "description": "Cannot find a matching replacement lesson" }, "410": { "description": "The lesson is no longer available." } } } } }, "definitions": { "Exam": { "type": "object", "properties": { "date": { "type": "string", "format": "date" }, "endPeriod": { "description": "The period of the day where the exam ends", "type": "integer", "maximum": 15, "minimum": 1 }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "lesson": { "$ref": "#/definitions/Lesson" }, "startPeriod": { "description": "The period of the day where the exam starts", "type": "integer", "maximum": 15, "minimum": 1 } } }, "Lesson": { "type": "object", "properties": { "additionalInformation": { "description": "An additional information like 'Every 14 days only'", "type": "string" }, "course": { "description": "Class or Course", "type": "string" }, "period": { "description": "The period of the day where the lesson is", "type": "integer", "maximum": 15, "minimum": 1 }, "room": { "type": "string" }, "subject": { "$ref": "#/definitions/Subject" }, "teacher": { "$ref": "#/definitions/Teacher" }, "weekday": { "type": "integer", "maximum": 7, "minimum": 0 } } }, "ReplacementLesson": { "type": "object", "properties": { "date": { "type": "string", "format": "date" }, "id": { "type": "integer", "format": "int64", "x-go-name": "ID" }, "lesson": { "$ref": "#/definitions/Lesson" }, "replacementLesson": { "$ref": "#/definitions/Lesson" } } }, "Subject": { "type": "object", "properties": { "abbreviation": { "description": "The abbreviation of the subject like LB for sports.", "type": "string" }, "name": { "type": "string" } } }, "Teacher": { "type": "object", "properties": { "identifier": { "description": "An unique string that is mostly the abbreviation of the teacher's name", "type": "string" }, "name": { "description": "The family name of the teacher", "type": "string" } } } }, "securityDefinitions": { "passwordAuth": { "type": "basic" } }, "tags": [ { "description": "Information about replacement and canceled lessons", "name": "replacement lessons" }, { "description": "Zugriff auf Stundenpläne", "name": "timetable" }, { "description": "Zugriff auf Klausurtermine", "name": "examination scheduling" } ] }`)) }