Wijs gebruikers toe, voeg gebruikers toe of verwijder gebruikers uit records met behulp van de Blue API
Beheer Record Toewijzingen
De Blue API biedt drie bewerkingen voor het beheren van record toewijzingen: toewijzingen instellen (slimme vervanging), toewijzingen toevoegen en toewijzingen verwijderen. Deze bewerkingen verwerken automatisch activiteitstracering, meldingen, webhooks en realtime updates.
Stel Record Toewijzingen In (Slimme Toewijzing)
Vervangt alle huidige toewijzingen door een nieuwe lijst. Het systeem berekent intelligent welke wijzigingen nodig zijn, verwijdert gebruikers die niet in de nieuwe lijst staan en voegt nieuwe toe.
mutation SetRecordAssignees {
setTodoAssignees(input: {
todoId: "record_abc123"
assigneeIds: ["user_123", "user_456", "user_789"]
}) {
success
operationId
}
}
Voeg Record Toewijzingen Toe
Voegt nieuwe toewijzingen toe zonder bestaande te verwijderen. Alleen gebruikers die nog niet zijn toegewezen, worden toegevoegd.
mutation AddRecordAssignees {
addTodoAssignees(input: {
todoId: "record_abc123"
assigneeIds: ["user_999", "user_111"]
}) {
success
operationId
}
}
Verwijder Record Toewijzingen
Verwijdert specifieke toewijzingen uit een record.
mutation RemoveRecordAssignees {
removeTodoAssignees(input: {
todoId: "record_abc123"
assigneeIds: ["user_456"]
}) {
success
operationId
}
}
Invoervelden
SetTodoAssigneesInput
Parameter | Type | Vereist | Beschrijving |
---|---|---|---|
todoId |
String! | ✅ Ja | De ID van het record waaraan gebruikers moeten worden toegewezen |
assigneeIds |
[String!]! | ✅ Ja | Array van gebruikers-ID's om toe te wijzen (vervangt alle huidige toewijzingen) |
AddTodoAssigneesInput
Parameter | Type | Vereist | Beschrijving |
---|---|---|---|
todoId |
String! | ✅ Ja | De ID van het record waaraan gebruikers moeten worden toegewezen |
assigneeIds |
[String!]! | ✅ Ja | Array van gebruikers-ID's om toe te voegen als toewijzingen |
RemoveTodoAssigneesInput
Parameter | Type | Vereist | Beschrijving |
---|---|---|---|
todoId |
String! | ✅ Ja | De ID van het record waaruit toewijzingen moeten worden verwijderd |
assigneeIds |
[String!]! | ✅ Ja | Array van gebruikers-ID's om te verwijderen uit de toewijzingen |
Antwoordvelden
Veld | Type | Beschrijving |
---|---|---|
success |
Boolean! | Of de bewerking succesvol is voltooid |
operationId |
String | Unieke identificatie voor het volgen van deze bewerking |
Vereiste Machtigingen
Stel/Verwijder Toewijzingen
Rol | Kan Toewijzen/Verwijderen |
---|---|
OWNER |
✅ Ja |
ADMIN |
✅ Ja |
MEMBER |
✅ Ja |
CLIENT |
✅ Ja |
VIEW_ONLY |
❌ Nee |
COMMENT_ONLY |
❌ Nee |
Voeg Toewijzingen Toe
Rol | Kan Toewijzingen Toevoegen |
---|---|
OWNER |
✅ Ja |
ADMIN |
✅ Ja |
MEMBER |
✅ Ja |
CLIENT |
✅ Ja |
VIEW_ONLY |
✅ Ja |
COMMENT_ONLY |
✅ Ja |
Foutreacties
Record Niet Gevonden
{
"errors": [{
"message": "Todo was not found.",
"extensions": {
"code": "TODO_NOT_FOUND"
}
}]
}
Onvoldoende Machtigingen
{
"errors": [{
"message": "You don't have permission to modify this record",
"extensions": {
"code": "FORBIDDEN"
}
}]
}
Ongeldige Invoer
{
"errors": [{
"message": "Variable '$input' got invalid value; Expected non-nullable type 'String!' not to be null.",
"extensions": {
"code": "GRAPHQL_VALIDATION_FAILED"
}
}]
}
Vergelijking van Bewerkingen
Kenmerk | Stel Toewijzingen In | Voeg Toewijzingen Toe | Verwijder Toewijzingen |
---|---|---|---|
Logic | Smart replacement | Incremental addition | Selective removal |
Activity Tracking | ✅ Ja | ❌ Nee | ❌ Nee |
Meldingen | ✅ Ja | ❌ Nee | ❌ Nee |
Webhooks | ✅ Ja | ❌ Nee | ❌ Nee |
Automations | ✅ Ja | ❌ Nee | ❌ Nee |
Permission Level | Stricter | More permissive | Stricter |
Bedrijfslogica
Slimme Toewijzing (setTodoAssignees)
Wanneer u setTodoAssignees
gebruikt, doet het systeem:
- Vergelijkt Lijsten: Analyseert huidige toewijzingen versus nieuwe toewijzingslijst
- Berekeningen Wijzigingen: Bepaalt wie te verwijderen, te behouden en toe te voegen
- Verwijdert Gebruikers: Onttrekt gebruikers die niet in de nieuwe lijst staan
- Voegt Gebruikers Toe: Wijst gebruikers in de nieuwe lijst toe die eerder niet waren toegewezen
- Volgt Activiteit: Maakt activiteitlogboekvermeldingen voor elke wijziging
- Verzendt Meldingen: Stelt nieuw toegewezen gebruikers op de hoogte
- Activeert Webhooks: Vuur toewijzing toegevoegd/verwijderd webhooks af
- Update Grafieken: Markeert analysegrafieken voor verversing
- Realtime Updates: Publiceert updates naar verbonden clients
Eenvoudige Bewerkingen (toevoegen/verwijderen)
De addTodoAssignees
en removeTodoAssignees
bewerkingen bieden basisfunctionaliteit zonder de uitgebreide tracering en meldingsfuncties van setTodoAssignees
.
Belangrijke Opmerkingen
- Projectlidmaatschap: Toewijzingen moeten leden zijn van het project dat het record bevat
- Geen Toewijzingslimieten: Er is geen maximum aantal toewijzingen per record
- Zelftoewijzing: Gebruikers kunnen zichzelf toewijzen als ze de juiste machtigingen hebben
- Lege Arrays: Het verstrekken van een lege
assigneeIds
array aansetTodoAssignees
verwijdert alle toewijzingen - Voorkoming van Duplicaten: Het systeem voorkomt automatisch dubbele toewijzingen
- Database-efficiëntie: Gebruikt een junctiontabel (
TodoUser
) voor schaalbare many-to-many-relaties - Realtime Updates: Alle verbonden clients ontvangen onmiddellijke updates wanneer toewijzingen veranderen
Verkrijg Beschikbare Toewijzingen
Om een lijst van gebruikers te krijgen die aan records in een project kunnen worden toegewezen:
query GetAssignees {
assignees(projectId: "project_abc123") {
id
name
email
avatar
}
}
Deze query retourneert alle projectleden die potentieel aan records kunnen worden toegewezen.
Gerelateerde Bewerkingen
- Lijst Records - Verkrijg records met hun huidige toewijzingen
- Update Record - Wijzig andere recordeigenschappen
- Voeg Opmerking Toe - Voeg opmerkingen toe aan toegewezen records