h1. Předměty {{>toc}} Rozlišují se dvě entity předmětu - předmět (course) a tzv. instance předmětu (coursin). První obsahuje všechny statické údaje předmětu jako je název, způsob zakončení, anotace, osnovy apod. Tyto údaje by měly být po dobu existence předmětu neměnné. Instance předmětu je pak konkrétní instance vypsaná v semestru (tzv. „semestropředmět“) a obsahuje proměnné údaje jako je kapacita, počet obsazených míst apod. h2. GET /courses Vrátí všechny předměty vyučované na ČVUT. Výchozí hodnota parametru [[URLParameters#sem|sem]] je _none_, což zde znamená, že se vypíší pouze obecné atributy platné pro předmět samotný, nikoli jeho instanci v semestru. Pomocí parametru [[URLParameters#sem|sem]] lze vyfiltrovat pouze ty předměty, které jsou/byly vypsané (tzn. existuje jejich instance) v alespoň jednom z daných semestrů (např. _sem=current_ pro aktuální semestr). Zároveň se vypíší i atributy instance předmětu pro dané semestry. Vysvětlení k parametru _detail_ viz dále. * *URI:* {{base_url}}/api/3/courses/ * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[Course]] * *Formáty:* [[atom]], [[xml]] * *Parametry:* [[URLParameters#detail|detail]], [[URLParameters#sem|sem]], [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#limit|limit]], [[URLParameters#locEnums|locEnums]], [[URLParameters#multilang|multilang]], [[URLParameters#offset|offset]], [[URLParameters#orderBy|orderBy]], [[URLParameters#query|query]] * *Rozsah dat:* úplný / záznamy pro celé ČVUT *[[data_restrictions|/?/]]* h2. GET /courses/{code} Vrátí konkrétní předmět podle jeho kódu. Výchozí hodnota parametru [[URLParameters#sem|sem]] je _none_, což zde znamená, že se vypíší pouze obecné atributy platné pro předmět samotný, nikoli jeho instanci v semestru. Pomocí parametru [[URLParameters#sem|sem]] lze zároveň zobrazit i atributy instance předmětu ve vybraném semestru (např. _sem=current_ pro aktuální semestr). Pakliže předmět není/nebyl vypsaný v žádném z daných semestrů (tzn. neexistuje jeho instance pro tyto semestry), tak vrátí kód 404 (Not Found). Ve výchozím nastavení se nevypisují popisné texty předmětu (např. osnova přednášek, požadavky, …), jelikož jejich načítání je pomalé a hodně navyšují velikost vráceného XML. Pro vypsání i popisných textů lze použít parametr _[[URLParameters#detail|detail]]=1_. * *URI:* {{base_url}}/api/3/courses/{code}/ * *Typ zdroje:* Atom Entry * *Typ obsahu:* [[Course]] * *Formáty:* [[atom]], [[xml]] * *Proměnné:* @{code}@ kód předmětu * *Parametry:* [[URLParameters#detail|detail]], [[URLParameters#sem|sem]], [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#locEnums|locEnums]], [[URLParameters#multilang|multilang]] * *Rozsah dat:* úplný / záznamy pro celé ČVUT *[[data_restrictions|/?/]]* h2. GET /courses/{code}/events Vrátí jednorázové akce (instance) předmětu a) v aktuálním semestru, b) ve zvolených semestrech parametrem [[URLParameters#sem|sem]], c) nebo pro všechny semestry (parametr _sem=none_). * *URI:* {{base_url}}/api/3/courses/{code}/events/ * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[CourseEvent]] * *Formáty:* [[atom]], [[xml]] * *Parametry:* [[URLParameters#sem|sem]], [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#limit|limit]], [[URLParameters#locEnums|locEnums]], [[URLParameters#multilang|multilang]], [[URLParameters#offset|offset]], [[URLParameters#orderBy|orderBy]], [[URLParameters#query|query]] * *Rozsah dat:* omezený / záznamy pro danou fakultu *[[data_restrictions|/?/]]* h2. GET /courses/{code}/exams Vrátí zkouškové termíny (instance) předmětu a) v aktuálním semestru, b) ve zvolených semestrech parametrem [[URLParameters#sem|sem]], c) nebo pro všechny semestry (parametr _sem=none_). * *URI:* {{base_url}}/api/3/courses/{code}/exams/ * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[Exam]] * *Formáty:* [[atom]], [[xml]] * *Parametry:* [[URLParameters#sem|sem]], [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#limit|limit]], [[URLParameters#locEnums|locEnums]], [[URLParameters#multilang|multilang]], [[URLParameters#offset|offset]], [[URLParameters#orderBy|orderBy]], [[URLParameters#query|query]] * *Rozsah dat:* omezený / záznamy pro danou fakultu *[[data_restrictions|/?/]]* h2. GET /courses/{code}/parallels Vrátí paralelky (instance) předmětu a) v aktuálním semestru, b) ve zvolených semestrech parametrem [[URLParameters#sem|sem]], c) nebo pro všechny semestry (parametr _sem=none_). * *URI:* {{base_url}}/api/3/courses/{code}/parallels/ * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[Parallel]] * *Formáty:* [[atom]], [[xml]] * *Parametry:* [[URLParameters#sem|sem]], [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#limit|limit]], [[URLParameters#locEnums|locEnums]], [[URLParameters#multilang|multilang]], [[URLParameters#offset|offset]], [[URLParameters#orderBy|orderBy]], [[URLParameters#query|query]] * *Rozsah dat:* omezený / záznamy pro danou fakultu *[[data_restrictions|/?/]]* h2. GET /courses/{code}/students Vrátí studenty zapsané na (instanci) předmětu a) v aktuálním semestru, b) ve zvolených semestrech parametrem [[URLParameters#sem|sem]], c) nebo pro všechny semestry (parametr _sem=none_). * *URI:* {{base_url}}/api/3/courses/{code}/students/ * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[Student]] * *Formáty:* [[atom]], [[xml]] * *Parametry:* [[URLParameters#sem|sem]], [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#limit|limit]], [[URLParameters#locEnums|locEnums]], [[URLParameters#multilang|multilang]], [[URLParameters#offset|offset]], [[URLParameters#orderBy|orderBy]], [[URLParameters#query|query]] * *Rozsah dat:* omezený / záznamy pro danou fakultu *[[data_restrictions|/?/]]* h2. GET /courses/{code}/instances Vrátí všechny instance daného předmětu – pouze atributy instance, nikoli obecné předmětu. Ve většině případech budete chtít použít spíše zdroj [[Courses#GET-coursescode|/courses/{code}]] s parametrem [[URLParameters#sem|sem]]. * *URI:* {{base_url}}/api/3/courses/{code}/instances/ * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[Coursin]] * *Formáty:* [[atom]], [[xml]] * *Proměnné:* @{code}@ kód předmětu * *Parametry:* [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#multilang|multilang]], [[URLParameters#locEnums|locEnums]] * *Rozsah dat:* úplný / záznamy pro celé ČVUT *[[data_restrictions|/?/]]* h2. GET /courses/{code}/branches Vrátí všechny studijní obory, ve kterých je daný předmět zařazený. * *URI:* {{base_url}}/api/3/courses/{code}/branches/ * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[Branche]] * *Formáty:* [[atom]], [[xml]] * *Proměnné:* @{code}@ kód předmětu * *Parametry:* [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#limit|limit]], [[URLParameters#locEnums|locEnums]], [[URLParameters#multilang|multilang]], [[URLParameters#offset|offset]], [[URLParameters#orderBy|orderBy]], [[URLParameters#query|query]] * *Rozsah dat:* úplný / záznamy pro celé ČVUT *[[data_restrictions|/?/]]*