Erstellen Sie einen neuen Datensatz (todo) in Blue mit optionalen benutzerdefinierten Feldern, Tags und Zuweisungen.
Erstellen eines Datensatzes
Die createTodo-Mutation ermöglicht es Ihnen, neue Datensätze in Blue mit umfassenden Konfigurationsoptionen, einschließlich benutzerdefinierter Felder, Tags, Zuweisungen und mehr, zu erstellen. Datensätze können in bestimmten Listen erstellt oder automatisch in der Standardliste platziert werden.
Einfaches Beispiel
Erstellen Sie einen einfachen Datensatz mit nur einem Titel:
mutation CreateRecord {
createTodo(
input: {
title: "New Task"
}
) {
id
title
position
}
}
Fortgeschrittenes Beispiel
Erstellen Sie einen Datensatz mit allen verfügbaren Optionen:
mutation CreateRecordAdvanced {
createTodo(
input: {
todoListId: "clm4n8qwx000008l0g4oxdqn7"
title: "Product Launch Planning"
placement: TOP
description: "<p>Complete product launch preparation including marketing materials and documentation.</p>"
startedAt: "2025-01-15T09:00:00Z"
duedAt: "2025-02-01T17:00:00Z"
notify: true
assigneeIds: ["user_123", "user_456"]
tags: [
{ id: "tag_existing_123" }
{ title: "Priority", color: "#ff4b4b" }
{ title: "Marketing" }
]
customFields: [
{
customFieldId: "cf_budget_123"
value: "50000 USD"
}
{
customFieldId: "cf_status_456"
value: "In Progress"
}
]
checklists: [
{
title: "Pre-launch Checklist"
position: 1
}
]
}
) {
id
uid
title
position
startedAt
duedAt
todoList {
id
title
}
users {
id
fullName
}
tags {
id
title
color
}
}
}
Eingabeparameter
CreateTodoInput
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
todoListId |
String | Nein | ID der Todo-Liste, zu der der Datensatz hinzugefügt werden soll. Wenn nicht angegeben, wird die erste Todo-Liste im Projekt verwendet |
title |
String! | ✅ Ja | Titel des Datensatzes (erforderlich) |
position |
Float | Nein | Benutzerdefinierte Position in der Liste. Wenn nicht angegeben, wird der Platzierungsparameter verwendet |
placement |
CreateTodoInputPlacement | Nein | Wo der Datensatz platziert werden soll, wenn die Position nicht angegeben ist (OBEN oder UNTEN) |
startedAt |
DateTime | Nein | Startdatum/-uhrzeit für den Datensatz |
duedAt |
DateTime | Nein | Fälligkeitsdatum/-uhrzeit für den Datensatz |
notify |
Boolean | Nein | Ob Benachrichtigungen für die Erstellung dieses Datensatzes gesendet werden sollen |
description |
String | Nein | HTML-Beschreibungsinhalt (wird bereinigt) |
assigneeIds |
[String!] | Nein | Array von Benutzer-IDs, die diesem Datensatz zugewiesen werden sollen |
checklists |
[CreateChecklistWithoutTodoInput!] | Nein | Array von Checklisten, die mit dem Datensatz erstellt werden sollen |
customFields |
[CreateTodoInputCustomField] | Nein | Array von Werten für benutzerdefinierte Felder |
tags |
[CreateTodoTagInput!] | Nein | Array von Tags, die dem Datensatz angehängt werden sollen |
CreateTodoInputPlacement-Werte
Wert | Beschreibung |
---|---|
TOP |
Oben in der Liste platzieren (höchste Position) |
BOTTOM |
Unten in der Liste platzieren (niedrigste Position) |
CreateTodoTagInput
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
String | Nein* | ID des vorhandenen Tags, das verbunden werden soll |
title |
String | Nein* | Titel des Tags (erstellt neu, wenn nicht vorhanden) |
color |
String | Nein | Hex-Farbe für das neue Tag (Standard ist #4a9fff) |
*Hinweis: Sie müssen entweder id
(für vorhandenes Tag) ODER title
(zum Erstellen/Finden nach Titel) angeben.
CreateTodoInputCustomField
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
customFieldId |
String | Nein | ID des benutzerdefinierten Feldes |
value |
String | Nein | Wert für das benutzerdefinierte Feld (siehe Formatleitfaden unten) |
CreateChecklistWithoutTodoInput
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
title |
String! | ✅ Ja | Titel der Checkliste |
position |
Float | Nein | Position der Checkliste innerhalb des Datensatzes |
Formate für benutzerdefinierte Feldwerte
Beim Festlegen von Werten für benutzerdefinierte Felder verwenden Sie diese Formate basierend auf dem Feldtyp:
Feldtyp | Format | Beispiel |
---|---|---|
CHECKBOX |
"true", "1", or "checked" for checked | "true" |
COUNTRY |
Country name or ISO code | "United States" or "US" |
CURRENCY |
Amount with optional currency | "50000 USD" |
DATE |
YYYY-MM-DD or date range | "2025-01-15" or "2025-01-15,2025-01-20" |
NUMBER |
Numeric value | "42" |
PERCENT |
Numeric value (% optional) | "75" or "75%" |
RATING |
Numeric value within range | "4" (if max is 5) |
PHONE |
International phone format | "+1234567890" |
SELECT_SINGLE |
Custom field option ID | "option_123" |
SELECT_MULTI |
Comma-separated option IDs | "option_1,option_2" |
LOCATION |
Latitude,longitude | "40.7128,-74.0060" |
EMAIL |
Valid email address | "user@example.com" |
URL |
Valid URL | "https://example.com" |
TEXT |
Plain text value | "Any text content" |
Antwortfelder
Die Mutation gibt ein Todo-Objekt mit umfassenden Datensatzdetails zurück:
Feld | Typ | Beschreibung |
---|---|---|
id |
String! | Eindeutige Kennung für den Datensatz |
uid |
String! | Alternative eindeutige Kennung |
title |
String! | Titel des Datensatzes |
position |
Float! | Position in der Liste |
done |
Boolean! | Abschlussstatus |
startedAt |
DateTime | Startdatum/-uhrzeit |
duedAt |
DateTime | Fälligkeitsdatum/-uhrzeit |
todoList |
TodoList | Details zur zugehörigen Todo-Liste |
users |
[User!] | Zugewiesene Benutzer |
tags |
[Tag!] | Zugehörige Tags |
checklists |
[Checklist!] | Zugehörige Checklisten |
customFields |
[CustomFieldValue!] | Werte für benutzerdefinierte Felder |
Erforderliche Berechtigungen
Benutzer müssen über die entsprechenden Projektzugriffsrechte verfügen, um Datensätze zu erstellen:
Zugriffslevel | Kann Datensätze erstellen |
---|---|
OWNER |
✅ Ja |
ADMIN |
✅ Ja |
MEMBER |
✅ Ja |
CLIENT |
✅ Ja |
COMMENT_ONLY |
❌ Nein |
VIEW_ONLY |
❌ Nein |
Die Mutation erfordert, dass das Zugriffslevel des Benutzers OWNER
, ADMIN
, MEMBER
oder CLIENT
ist. Benutzer mit den Rollen VIEW_ONLY
oder COMMENT_ONLY
können keine Datensätze erstellen.
Fehlermeldungen
ProjectNotFoundError
{
"errors": [{
"message": "Project was not found.",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Wann: Kein Projektkontext ist für den Benutzer verfügbar.
TodoListCreateTodoLimitError
{
"errors": [{
"message": "Todo list has reached the maximum number of todos.",
"extensions": {
"code": "TODO_LIST_CREATE_TODO_LIMIT_ERROR"
}
}]
}
Wann: Die Todo-Liste enthält bereits 100.000 Datensätze (maximales Limit).
TodoListNotFoundError
{
"errors": [{
"message": "Todo list was not found.",
"extensions": {
"code": "TODO_LIST_NOT_FOUND"
}
}]
}
Wann: Die angegebene todoListId
existiert nicht oder der Benutzer hat keinen Zugriff.
CustomFieldValueParseError
{
"errors": [{
"message": "Invalid phone number format",
"extensions": {
"code": "CUSTOM_FIELD_VALUE_PARSE_ERROR"
}
}]
}
Wann: Der Wert für das benutzerdefinierte Feld erfüllt nicht die Validierung (z. B. ungültige Telefonnummer, Bewertung außerhalb des Bereichs).
Wichtige Hinweise
Leistung
- Jede Todo-Liste kann bis zu 100.000 Datensätze enthalten
- Das Erstellen von Datensätzen löst mehrere Hintergrundprozesse aus (Webhooks, Automatisierungen, Suchindizierung)
- Batch-Operationen sind effizienter als das Erstellen von Datensätzen einzeln
Geschäftsanalyse
- Positionsbehandlung: Die Standardposition ist 65535.0, wenn weder
position
nochplacement
angegeben sind - Datumslogik:
- Wenn nur
duedAt
angegeben ist, wirdstartedAt
auf den Beginn dieses Tages gesetzt - Wenn nur
startedAt
angegeben ist, wirdduedAt
auf denselben Wert gesetzt
- Wenn nur
- Tag-Erstellung: Neue Tags werden automatisch erstellt, wenn sie mit dem angegebenen Titel/Farbe nicht existieren
- Listenwahl: Wenn kein
todoListId
angegeben ist, wird die erste Todo-Liste im Projekt verwendet
Nebenwirkungen
Das Erstellen eines Datensatzes löst aus:
- Erstellung eines Aktivitätsprotokolleintrags
- Webhook-Benachrichtigungen
- Aktualisierungen des Suchindex
- Ausführung von Automatisierungsregeln (wenn konfiguriert)
- E-Mail-/Push-Benachrichtigungen (wenn
notify: true
) - Berechnungen von benutzerdefinierten Feldern für Formeln und Zeitdauern
- Analysen und Diagrammaktualisierungen
Verwandte Endpunkte
- Datensätze auflisten: Abfragen von Todos, um vorhandene Datensätze abzurufen
- Datensatz aktualisieren: Verwenden Sie die updateTodo-Mutation, um Datensätze zu ändern
- Benutzerdefinierte Felder auflisten: Abfragen, um verfügbare IDs für benutzerdefinierte Felder zu erhalten
- Tags auflisten: Abfragen, um vorhandene Tag-IDs zu erhalten
- Todo-Listen auflisten: Abfragen, um verfügbare IDs für Todo-Listen zu erhalten