{ "GET": { "des": "Returns the API documentation", "per": [], "par": { "URL0": { "des": "Method name", "typ": "varchar(1,30)", "ren": "method_name", "opt": true, "def": null } } }, "cas": { "GET": { "des": "Authenticatation callback (used by third-party OAuth)", "per": [], "par": {}, "opt": { "download": true } }, "POST": { "des": "Login if not already authenticated", "per": [], "par": {} }, "PUT": { "des": "Check if authenticated", "per": [], "par": {} }, "DELETE": { "des": "Logout", "per": [], "par": {} } }, "release": { "GET": { "des": "Pulls project from git branch.", "per": [["admin"]], "par": { "URL0": { "des": "Name of the project to release", "typ": "alphanumeric", "ren": "project", "opt": true, "def": "self" }, "URL1": { "des": "Step to run, if not given, all steps will be run", "typ": "id", "ren": "step", "opt": true } } } }, "excel":{ "POST": { "des": "Import data from an Excel file", "per": [], "par": { } } }, "professor":{ "POST": { "des": "Creates a new professor", "per": [], "par": { "firstName": { "des": "Professor last name.", "typ": "varchar(2,30,alphanumeric)" }, "lastName": { "des": "Professor first name.", "typ": "varchar(2,30,alphanumeric)" }, "category": { "des": "Professor category UID.", "typ": "id" }, "hoursToDo": { "des": "Number of hours professor have to do", "typ": "id" }, "initials": { "des": "Professor initials", "typ": "varchar(2,2,letters)" }, "isAdmin": { "des": "Whether professor is an admin", "typ": "boolean" }, "casLogin": { "des": "Optional CAS username", "typ": "varchar(6,10,letters)", "opt": true } }, "out": { "created_uid": { "des": "Created professor UID", "typ": "id" } } }, "GET": { "des": "Get one or all professors", "per": [], "par": { "URL0": { "des": "Optional professor UID.", "typ": "id", "ren": "prof_id", "opt": true } }, "out": { "professors": { "des": "Teacher list", "typ": "array" } } }, "DELETE": { "des": "Deletes an existing professor", "per": [], "par": { "URL0": { "des": "Professor UID.", "typ": "id", "ren": "prof_id" } }, "out": { "deleted": { "des": "Whether it has been deleted", "typ": "boolean" } } }, "PUT": { "des": "Edits an existing professor", "per": [], "par": { "URL0": { "des": "Optional professor UID.", "typ": "id", "ren": "prof_id" }, "firstName": { "des": "Professor last name.", "typ": "varchar(2,30,alphanumeric)", "opt": true }, "lastName": { "des": "Professor first name.", "typ": "varchar(2,30,alphanumeric)", "opt": true }, "category": { "des": "Professor category UID.", "typ": "id", "opt": true }, "hoursToDo": { "des": "Number of hours professor have to do", "typ": "id", "opt": true }, "initials": { "des": "Professor initials", "typ": "varchar(2,2,letters)", "opt": true }, "isAdmin": { "des": "Whether professor is an admin", "typ": "boolean", "opt": true }, "casLogin": { "des": "Optional CAS username", "typ": "varchar(6,10,letters)", "opt": true } }, "out": { "updated": { "des": "Whether the professor has been updated", "typ": "boolean" } } }, "stats": { "GET":{ "des": "Get statistics of the professor", "per": [], "par":{ "URL0": {"des" : "Id of the professor", "typ": "id", "ren": "idProf", "opt" : false} } } } }, "formation": { "GET":{ "des": "Get all data about a formation", "per": [], "par": { "URL0":{"des" : "Id of the formation", "typ": "id", "ren": "idForm", "opt" : true} } } }, "category": { "GET": { "des" : "Get all data about a professor category", "per": [], "par": { "URL0":{"des" : "Id of the category", "typ": "id", "ren": "idCat", "opt" : true} } } } }