ForgeTodomator
el

Todomator

Δημιουργία δελτίων από άλλα συστήματα με το API του Todomator

Todomator · todomator@1.7 todomatorapitokenticketsintegration

Το Todomator εκθέτει τις ενέργειές του μέσω ενός endpoint API: POST /api/ με σώμα JSON { "schema": "<name>", "data": { ... } } (οι διαδρομές API του Total.js· δείτε τη συνταγή διαδρομές API). Η διεύθυνση /api/ προέρχεται από τη γραμμή $api του αρχείου config.

Ταυτοποίηση με το token

Εκτός από τη συνεδρία ενός συνδεδεμένου ατόμου, το API δέχεται ένα token: στείλτε το στην κεφαλίδα x-token ή στην παράμετρο ερωτήματος token. Αν ισούται με τη ρύθμιση token (δείτε ρυθμίσεις), το αίτημα εκτελείται ως ένας ενσωματωμένος χρήστης με όνομα Bot, διαχειριστής με το δικαίωμα bot· οποιοδήποτε άλλο token απορρίπτεται. Χρησιμοποιήστε ένα μακρύ τυχαίο token, κρατήστε το στον διακομιστή σας και στείλτε το μόνο μέσω HTTPS.

Δημιουργία ενός δελτίου

Η κλήση λέγεται tickets_create. Μόνο το name είναι υποχρεωτικό· τα υπόλοιπα είναι προαιρετικά:

ΠεδίοΣημειώσεις
nameο τίτλος
folder ή folderidο φάκελος, με όνομα (το Todomator τον αναζητά) ή με id· το δελτίο παίρνει τη σημαία χρεώσιμου του φακέλου
usersτα άτομα που θα αναλάβουν, με όνομα ή email· ένα άγνωστο άτομο είναι σφάλμα (User "..." not found)
watcheridτα άτομα που το παρακολουθούν, με id (αντίθετα με το users, το σχήμα αυτής της έκδοσης δεν τα δέχεται με όνομα)
statusidpending (προεπιλογή), open, review, postponed, note ή closed
markdown, htmlτο περιεχόμενο
tags, ispriority, isbillable, ispublicετικέτες και σημαίες
date, deadline, workedη ημέρα, μια προθεσμία και τα λεπτά που έχουν ήδη δουλευτεί
attachmentsμια λίστα { name, data } όπου το data είναι το αρχείο σε Base64
reference, source, attrsελεύθερα πεδία για να συνδέσετε το δελτίο με το σύστημά σας
callbackμια διεύθυνση που λαμβάνει το δελτίο
{
	"schema": "tickets_create",
	"data": {
		"name": "The invoice page fails with a 500",
		"folder": "Customer support",
		"users": ["jane@example.com"],
		"markdown": "Reported by the contact form.\n\nSteps: open the invoice and click *Print*.",
		"tags": ["bug"],
		"source": "website",
		"reference": "form-2041"
	}
}

Η απάντηση είναι το id του νέου δελτίου. Τα άτομα που έχουν αναλάβει ειδοποιούνται και ανανεώνονται οι ανοιχτές συνεδρίες των ατόμων που μπορούν να το δουν.

Το callback

Όταν έχει οριστεί το callback, το Todomator στέλνει ένα POST σε αυτή τη διεύθυνση με τα δεδομένα του δελτίου όταν το δελτίο δημιουργείται, ενημερώνεται ή κλωνοποιείται, και όταν προστίθεται ένα σχόλιο (κατά τη δημιουργία και την ενημέρωση στέλνει επίσης τη λίστα των πεδίων που δόθηκαν, keys). Το σύστημά σας μπορεί να το χρησιμοποιήσει για να αντικατοπτρίζει την κατάσταση ενός δελτίου.

Άλλες κλήσεις

Το ίδιο endpoint εξυπηρετεί τις υπόλοιπες ενέργειες, με τα ονόματα του controllers/api.js: tickets (λίστα), tickets_detail/{id}, tickets_update/{id}, tickets_clone/{id}, tickets_remove/{id}, logwork_create, folders, tags και άλλα. Η επίσημη τεκμηρίωση του API βρίσκεται στο docs.totaljs.com/todomator.