Hinweis
Projekte können von Zeiterfassern nicht bearbeitet werden. Lesen können Zeiterfasser nur die für sie freigegebenen Projekte.
Alle aktiven Projekte auflisten
GET /projects.xml
Listet alle aktiven Projekte sortiert nach deren Namen auf.
Response : 200 OK
<?xml version="1.0" encoding="UTF-8"?>
<projects type="array">
<project>
...
</project>
<project>
...
</project>
</projects>
Mit dem Parameter name kann die Liste eingeschränkt werden:
GET /projects.xml?name=web
Listet alle Projekte auf, deren Namen 'web' enthält. Groß-/Kleinschreibung wird ignoriert.
Alle archivierten Projekte auflisten
GET /projects/archived.xml
Listet alle archivierten Projekte sortiert nach deren Namen auf. Auch hier ist eine Freitextsuche mit dem Parameter name möglich.
Einzelnes Projekt anzeigen
GET /projects/{id}.xml
Gibt ein einzelnes Projekt zurück.
Response : 200 OK
<?xml version="1.0" encoding="UTF-8"?>
<project>
<id type="integer">123</id>
<name>Website Konzeption</name>
<note></note>
<budget type="integer">0</budget>
<budget-type>minutes</budget>
<archived type="boolean">false</archived>
<customer-id type="integer">2</customer-id>
<customer-name>LilaLaune GmbH</customer-name>
<updated-at type="datetime">2007-12-13T12:12:00+01:00</updated-at>
<created-at type="datetime">2007-12-13T12:12:00+01:00</created-at>
</project>
Erstellen
POST /projects.xml
Erstellt ein neues Projekt. Alle Parameter – bis auf den Namen – sind optional.
- note
- Default: '' (leerer String)
- budget
- in Minuten oder Cents (je nach budget_type) - Default: 0 (kein Budget)
- budget_type
- minutes (Default) oder cents
- archived
- true oder false - Default: false
- customer_id
- Default: nil
Request Body
<project>
<name>Projekt XY</name>
<archived>true</archived>
</project>
Response : 201 Created
<?xml version="1.0" encoding="UTF-8"?>
<project>
<id type="integer">123</id>
<name>Projekt XY</name>
<note></note>
<budget type="integer">0</budget>
<budget-type>minutes</budget>
<archived type="boolean">true</archived>
<customer-id type="integer" nil="true"></customer-id>
<updated-at type="datetime">2008-02-11T22:12:00+01:00</updated-at>
<created-at type="datetime">2008-02-11T22:12:00+01:00</created-at>
</project>
Bearbeiten
PUT /projects/{id}.xml
Aktualisiert ein Projekt mit den übergebenen Parametern.
Request Body
<project>
<note>Go!</note>
</project>
Response : 200 OK
Löschen
DELETE http://demo.mite.yo.lk/projects/{id}.xml
Löscht ein Projekt. Dies ist nur möglich, wenn keine Zeit-Einträge des Projekts existieren.
