Aufgaben in CentralStationCRM

API Navigation

Allgemeines: Grundlagen Authentifizierung Fehlerbehandlung Datenstruktur

Hauptmodelle: Personen Firmen Angebote Projekte Aufgaben

Sonstiges: Anschriften Kontaktdaten Wichtige Daten Individuelle Felder Positionen Notizen Dateianhänge Tags

Die Kür: Webhooks Nutzer Aktivitäten Filter Gruppen Individuelle Feld Typen

Aufgaben verhalten sich von den Actions (index, show, create, update, delete) her wie die Personen. Das Datenbank Modell unterscheidet sich jedoch deutlich. Es stehen folgende Felder zur Verfügung:

Feldname Feldtyp Beschreibung
id INTEGER ID der Aufgabe (Read only)
account_id INTEGER ID des Accounts (Read only)
attachable_id INTEGER ID des verknüpften Objektes, zum Beispiel Person, Firma, Angebot oder Projekt.
attachable_type VARCHAR(20) Typ des verknüpften Objektes, z.B. Person, Company, Deal oder Project.
badge VARCHAR(20) Kategorie der Aufgabe. Möglich sind: task, call, meeting, email, preparation und other.
finished BOOLEAN Erledigte Aufgaben sind true, offene Aufgaben false.
name VARCHAR(255) Text / Beschreibung der Aufgabe (Pflichtfeld)
precise_time TIMESTAMP Zeitpunkt der Fälligkeit
user_id INTEGER ID des verantwortlichen Users, wenn die Aufgabe zu einem User gehört.
created_by_user_id INTEGER ID des Users, der die Aufgabe angelegt hat (automatisch gesetzt).
updated_by_user_id INTEGER ID des Users, der die Aufgabe zuletzt bearbeitet hat (automatisch gesetzt).
created_at TIMESTAMP Zeitpunkt der Erstellung (automatisch gesetzt, read only)
updated_at TIMESTAMP Zeitpunkt des letzten Updates (automatisch gesetzt, read only)

Die Aufgaben können außerdem über die verschachtelten Routen des Hauptobjektes aufgerufen werden. So können beispielsweise alle Aufgaben des Angebotes mit einer bestimmten ID abgerufen werden.

Beispiel für verschachtelte Routen
curl -X GET https://accountname.centralstationcrm.net/api/deals/:deal_id/tasks.json

[
{"task":{"id":90,"account_id":21,"user_id":64,"attachable_id":32,"attachable_type":"Deal",
"finished":true,"comments_count":0,"name":"Angebot mailen",
"precise_time":"2010-11-07T23:59:59.000+01:00","end_time":null,"fuzzy":null,"entire_day":null,
"created_by_user_id":64,"updated_by_user_id":64,"created_at":"2010-10-30T21:34:12.000+02:00",
"updated_at":"2010-10-30T22:04:39.000+02:00","badge":"email"}},

{"task":{"id":147,"account_id":21,"user_id":64,"attachable_id":32,"attachable_type":"Deal",
"finished":true,"comments_count":0,"name":"Nachhaken bis kommenden Freitag",
"precise_time":"2010-12-07T17:00:00.000+01:00","end_time":null,"fuzzy":null,"entire_day":null,
"created_by_user_id":64,"updated_by_user_id":64,"created_at":"2010-12-07T16:12:19.000+01:00",
"updated_at":"2010-12-16T12:19:43.000+01:00","badge":"task"}}

... 

]

Action: Index

GET /tasks.json
Die Sortierung kann mit dem Parameter order beeinflusst werden. Möglich sind zum Beispiel "created_at-asc" (Erstellzeitpunkt) oder "updated_at-desc" (letzte Bearbeitung). Wenn das order Statement übergeben wird, sollte sowohl das Sortierkriterium, als auch die Sortierrichtung (asc oder desc) übergeben werden, da wir je nach Kriterium unterschiedliche Standard-Sortierungen wählen (zB. aufsteigend bei der Sortierung nach Alphabet und absteigend bei der Sortierung nach dem Erstelldatum). Standard ist asc (aufsteigend) nach name (Alphabet).

Verschachtelte Unterobjekte (optional)
Bei dem Aufruf der Index Funktion können die Unterobjekte über den includes Parameter im Format includes:'attachable user' direkt mit ausgeliefert werden. Mögliche Optionen sind: attachable user. Um alle genannten Optionen zu bekommen kann includes:'all' gesetzt werden.

Methods (optional)
Über den methods Parameter können einzelne Daten direkt in den JSON Hash eingebunden werden. Möglich ist methods=responsible_user_natural_name für den vollen Namen des verantwortlichen Nutzers.