Projekte

Attribute

Die Repräsentation des Projekts enthält neben den wichtigsten Eigenschaften ausserdem:
  • Eigene Felder, falls vorhanden (Custom Properties)
  • Projektleiter (Leader)
  • Kunde (Customer)
  • Leistungen (Tasks)
  • Zugewiesene Mitarbeiter (Contracts)
Die Attribute hourly_rate (Stundensatz) und billing_variant (Abrechnungsart) sind voneinander abhängig. Bei Abrechnungsart "project" (einheitlicher Stundensatz) ist dies der hinterlegte Wert, bei den Abrechnungsarten "task" (nach Leistung) und "user" (nach Person) ist dies der gemittelte Stundensatz. Die Werte beim Attribut hourly_rate auf Ebene Task und Contract sind nur bei entsprechender Abrechnungsart ausschlaggebend.

{
        "id": 1234567,
        "identifier": "P001",
        "name": "Website Support",
        "active": true,
        "billable": true,
        "finish_date": "2018-12-31",
        "currency": "EUR",
        "billing_tax": 19.0,
        "billing_variant": "project",
        "billing_address": "Beispiel AG\nHerr Maier\nBeispielstrasse...",
        "budget": 18200,
        "hourly_rate": 150,
        "info": "Abrechnung jährlich",
        "custom_properties": {
            "Project Management": "https://basecamp.com/123456"
        },
        "leader": {
            "id": 933590696,
            "firstname": "Michael",
            "lastname": "Mustermann"
        },
        "customer": {
            "id": 1233434,
            "name": "Beispiel AG"
        },
        "tasks": [
            {
                "id": 125112,
                "name": "Projektleitung",
                "billable": true,
                "active": true,
                "budget": null,
                "hourly_rate": 0
            },
            {
                "id": 125111,
                "name": "Entwicklung",
                "billable": true,
                "active": true,
                "budget": null,
                "hourly_rate": 0
            }
        ],
        "contracts": [
            {
                "id": 458639048,
                "user_id": 933590696,
                "firstname": "Michael",
                "lastname": "Mustermann",
                "billable": true,                
                "active": true,
                "budget": null,
                "hourly_rate": 0
            },
            {
                "id": 458672097,
                "user_id": 933589591,
                "firstname": "Nicola",
                "lastname": "Piccinini",
                "billable": true,
                "active": true,
                "budget": null,
                "hourly_rate": 0
            }
        ]
    },


GET projects

Abruf aller Projekte:

curl -X GET \
  https://{domain}.mocoapp.com/api/v1/projects \
  -H 'authorization: Token token={api-key}'

Die Antwort liefert ein Array mit vollständigen Projektinformationen (siehe Attribute).

Zusätzlich sind folgende Parameter möglich:
  • include_archived – true/false


GET projects/{id}

Abruf eines einzelnen Projekts:

curl -X GET \
  https://{domain}.mocoapp.com/api/v1/projects/{123} \
  -H 'Authorization: Token token={api-key}'

Die Antwort ist die Repräsentation eines einzelnen Projekts.


POST projects

Erstellen eines Projekts:

curl -X POST \
  https://{domain}.mocoapp.com/api/v1/projects \
  -H 'authorization: Token token={api-key}' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -d 'name=Website Relaunch&currency=EUR&leader_id=123456&customer_id=234567'

Pflichtfelder sind mit Stern (*) markiert:
  • name* – "Relaunch Website"
  • currency* – "EUR"
  • finish_date* – "2018-12-31"
  • leader_id* – 123456 (ID eines Benutzers)
  • customer_id* – 234567 (ID eines Kunden)
  • identifier* – "P-123" (nur falls der Nummernkreis auf manuell gestellt ist)
  • billing_address – "Beispiel AG\nBeispielstrasse 123\n12345 Berlin"
  • billing_tax – 19.0
  • billing_variant – "project", "task" oder "user" (Abrechnungsart, Standard: "project")
  • hourly_rate – 150
  • budget – 20000
  • custom_properties – {"PO-Nummer": "123-ABC"}
  • info – "Eine Info zum Projekt..."


PUT projects/{id}

Aktualisieren eines Projekts:

curl -X PUT \
  https://{domain}.mocoapp.com/api/v1/projects/{123} \
  -H 'authorization: Token token={api-key}' \
  -H 'content-type: application/x-www-form-urlencoded' \
  -d 'budget=25000'

Felder sind analog zur Erstellung.


DELETE projects/{id}

Das Löschen eines Projekts ist über die API nicht möglich.


PUT projects/123/archive

Archivieren eines Projekts:

curl -X PUT \
  https://{domain}.mocoapp.com/api/v1/projects/{123}/archive \
  -H 'authorization: Token token={api-key}' \
  -H 'content-type: application/x-www-form-urlencoded'


PUT projects/123/unarchive

Freigeben eines archivierten Projekts:

curl -X PUT \
  https://{domain}.mocoapp.com/api/v1/projects/{123}/unarchive \
  -H 'authorization: Token token={api-key}' \
  -H 'content-type: application/x-www-form-urlencoded'


Mehr zu API...
30 Tage gratis

Account sofort startbereit. Voller Funktionsumfang. Ohne Zahlungsangaben.