h1. Témata závěrečných prací {{>toc}} h2. GET /theses Vrátí všechna témata závěrečných prácí. * *URI:* {{base_url}}/api/3/theses/ * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[Thesis]] * *Formáty:* [[atom]], [[xml]] * *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]] h2. GET /theses/{id} Vrátí téma závěrečné práce podle jejího ID. * *URI:* {{base_url}}/api/3/theses/{id} * *Typ zdroje:* Atom Entry * *Typ obsahu:* [[Thesis]] * *Formáty:* [[atom]], [[xml]] * *Proměnné:* @{id}@ id závěrečné práce * *Parametry:* [[URLParameters#fields|fields]], [[URLParameters#lang|lang]], [[URLParameters#locEnums|locEnums]], [[URLParameters#multilang|multilang]] h2. POST /theses Přidá nové téma závěrečné práce. * *URI:* {{base_url}}/api/3/theses/ * *Typ zdroje:* Atom Entry * *Typ obsahu:* [[Thesis]] * *Formáty:* application/atom+xml, application/xml * **Scope:** urn:ctu:oauth:kosapi:theses.readwrite (privilegovaný) h3. Podmínky * Musí být zadán alespoň český název a cílový obor (z něj plyne katedra a typ práce), nebo český název, katedra a cílový typ práce (bakalářská/diplomová/doktorská). * Pokud stav _není_ [[ThesisState|volné]] (@state != AVAILABLE@), pak musí být zadán student (@student != null@). _(automaticky provede rezervaci a příp. přiřazení tématu)_ * Pokud je zadán student, (@student != null@), pak typ studijního programu (etapa) studenta musí odpovídat typu práce (@student.programme.type = this.type@). * Pokud je zadán cílový obor a student (@branch != null && student != null@), pak obor studenta musí odpovídat cílovému oboru (@student.branch = this.branch@) h3. Ukázka komunikace

POST /api/3/theses HTTP/1.1
Host: kosapi.fit.cvut.cz
Content-Type: application/atom+xml; charset=UTF-8
Authorization: Bearer put-access-token-here




    
        
        
        Prostudujte používané metodiky návrhu...
        Pracovní postup k rozvrhu, Tril, 1998
        KOSapi - verze 3
        KOSapi - third version
        
        RESERVED
        
        
        MASTER
    


Status Code: 201 Created
Content-Length: 0
Date: Mon, 29 Jul 2013 11:42:33 GMT
Location: https://kosapi.fit.cvut.cz/api/3/theses/493466966705
h2. PUT /theses/{id} Modifikuje dané téma závěrečné práce. * *URI:* {{base_url}}/api/3/theses/{id} * *Typ zdroje:* Atom Entry * *Typ obsahu:* [[Thesis]] * *Formáty:* application/atom+xml, application/xml * *Proměnné:* @{id}@ id závěrečné práce * **Scope:** urn:ctu:oauth:kosapi:theses.readwrite (privilegovaný) h3. Podmínky * Pokud je ve stavu [[ThesisState|zadáno]] (@state = ASSIGNED@), lze měnit pouze atribut stavu (@state@). * Pokud _není_ ve stavu [[ThesisState|volné]] (@state != AVAILABLE@), nelze měnit cílový obor (@branch@) ani typ práce (@type@). * Pokud _není_ je ve stavu [[ThesisState|volné]] (@state != AVAILABLE@), nelze měnit přiřazeného studenta (@student@). * …a podmínky z [[Theses#POST-theses| POST /theses]]. h2. DELETE /theses/{id} Odstraní dané téma závěrečné práce. * *URI:* {{base_url}}/api/3/theses/{id} * *Proměnné:* @{id}@ id závěrečné práce * **Scope:** urn:ctu:oauth:kosapi:theses.readwrite (privilegovaný) h3. Podmínky * Téma musí být ve stavu [[ThesisState|volné]] (@state = AVAILABLE@). h2. GET /theses/{id}/reviews Vrátí posudky závěrečné práce. Jedna práce může mít 1-2 vedoucí a 1-4 oponenty, přičemž každý může napsat nejvýše jeden posudek. * *URI:* {{base_url}}/api/3/theses/{id}/reviews * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[ThesisReview]] * *Formáty:* [[atom]], [[xml]] * *Proměnné:* @{id}@ id závěrečné práce * *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]] h2. GET /theses/{id}/files Vrátí metadata o souborech na DSpace asociovaných s danou závěrečnou prací. * *URI:* {{base_url}}/api/3/theses/{id}/files * *Typ zdroje:* Atom Feed * *Typ obsahu:* [[DSpaceFile]] * *Formáty:* [[atom]], [[xml]] * *Proměnné:* @{id}@ id závěrečné práce * *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]] h2. GET /theses/{id}/files/main Vrátí soubor s vlastním textem práce (mělo by jít o PDF). * *URI:* {{base_url}}/api/3/theses/{id}/files/main * *Formáty:* application/pdf * *Proměnné:* @{id}@ id závěrečné práce h2. PUT /theses/{id}/files/main Nahraje PDF soubor s vlastním textem práce. * *URI:* {{base_url}}/api/3/theses/{id}/files/main * *Formáty:* application/pdf * *Proměnné:* @{id}@ id závěrečné práce * **Scope:** urn:ctu:oauth:kosapi:theses.readwrite (privilegovaný) h2. DELETE /theses/{id}/files/main Smaže PDF soubor s vlastním textem práce. * *URI:* {{base_url}}/api/3/theses/{id}/files/main * *Proměnné:* @{id}@ id závěrečné práce * **Scope:** urn:ctu:oauth:kosapi:theses.readwrite (privilegovaný)