Bulk User Management API

Mit der Bulk User Management API können Sie den Inhalt einer JSON-Datei verwenden, um mehrere Nutzer in einem Vorgang zu erstellen oder zu ändern.

Die Anzahl der Datensätze, die hochgeladen werden können, ist nicht begrenzt. Es wird jedoch empfohlen, Anfragen in kleineren Batches auszuführen.

Dieser Vorgang kann auch im CCAI Platform-Portal ausgeführt werden. Folgen Sie dazu der Anleitung unter Bulk user management (Massenverwaltung von Nutzern).

Die Referenzanwendung Bulk User Sync Tool (Tool für die Bulk-Synchronisierung von Nutzern) führt eine Synchronisierung von Nutzern zwischen einem Verzeichnis wie Google Workspace-Gruppen oder Microsoft Entra ID und CCaaS durch. Diese Referenzanwendung nutzt die Bulk User Management API.

Rollen und Berechtigungen

  • Verwenden Sie die Apps API, indem Sie einen api_user erstellen.

  • Der api_user hat keine Rollen und Berechtigungen. Daher können alle api_users bulk_user management ausführen.

  • Wenn Sie api_user verwenden, können Sie keine detaillierten Berechtigungen festlegen. Der api_user hat also Zugriff auf alle Nutzerfelder.

API-Anmeldedaten hinzufügen

  1. Rufen Sie im CCAI Platform-Portal Einstellungen > Entwicklereinstellungen > API-Anmeldedatenverwaltung auf.

  2. Klicken Sie auf + API-Anmeldedaten hinzufügen. Die Meldung API-Anmeldedaten hinzufügen wird geöffnet.

  3. Geben Sie einen Namen für die Anmeldedaten ein.

  4. Klicken Sie auf Erstellen.

Bulk User Management API verwenden

Für die Verwendung der Bulk User Management API sind zwei API-Aufrufe erforderlich. Einer lädt die JSON-Datei hoch und erstellt den Job, der andere verarbeitet ihn. Sie können auch optionale API-Aufrufe verwenden, um sicherzustellen, dass Ihr Job richtig verarbeitet wird.

  1. Optional: JSON-Vorlage abrufen Dadurch wird die aktuelle Vorlage abgerufen, die alle zusätzlichen Rollen oder Teams enthält, die seit dem Abrufen der vorherigen Vorlage erstellt wurden. Google empfiehlt diesen Schritt.

  2. Optional: Konfigurationsdaten des Nutzers abrufen Dadurch wird eine Liste aller Nutzer (oder eines einzelnen Nutzers, wenn Sie eine E-Mail-Adresse angeben) zum Spiegeln abgerufen.

  3. Laden Sie die JSON-Datei hoch. Sie können einen oder mehrere Nutzer in der Datei hinzufügen oder aktualisieren. Notieren Sie sich die Job-ID.

  4. Verarbeitung der JSON-Datei anfordern. Dadurch wird der Bulk-Job gestartet.

  5. Optional: Status prüfen Geben Sie die Job-ID an, um den Verarbeitungsstatus aufzurufen.

  6. Optional: Aktualisierte Jobliste abrufen Dadurch wird die Liste aller Bulk-Nutzerverwaltungsjobs abgerufen.

  7. Optional: Schemafehlerprotokolle abrufen. Geben Sie die Job-ID an, um die Schemfehlerprotokolle abzurufen.

  8. Optional: Fehler abrufen. Fehler erhalten.

JSON-Datei hochladen

Nutzung

JSON-Datei hochladen

URL

apps/api/v1/bulk/users/upload

Methode

POST / PUT

Anfrage

content-type: multipart/form-data

{
  "id" : {job_id} #optional. Required in case of PUT method.
  "file": {json file}
}

Antwort

Header:

Link: http://ujet.co/apps/api/v1/bulk/users_jobs/12345

Text

{
  "id": 12345, # job_id
  "status": "created"
  "link": "http://ujet.co/apps/api/v1/bulk/users_jobs/12345"
}

JSON-Vorlage abrufen

Nutzung

Vorlage

URL

apps/api/v1/bulk/users/template

Methode

GET

Anfrage

(Leer)

Antwort

[
{
"email":"user1@yourcompany.co",
"new_email":user1@yourcompany.cx",
"agent_number":"A-001",
"first_name":"John",
"last_name":"aa",
"status":"Active",
"location":"Mexico",
"max_chat_limit":2,
"max_chat_limit_enabled":0,
"roles": [
{"name":"Admin","value": 0 },
{"name":"Manager","value": 1 },
{"name":"Agent","value": 0 },
{"name":Developer","value": 1 }
]
},
 ...
]

Nutzer deaktivieren

Wenn Sie einen Nutzer deaktivieren möchten, ändern Sie den Wert status in Inactive, z. B. "status":"Inactive".

Verarbeitung der aktuellen JSON-Datei anfordern

Nutzung

Verarbeitung der aktuellen JSON-Datei anfordern

URL

/v1/bulk/users/proceed

Methode

POST

Anfrage

{
   "id": 12345  # job_id
}

Antwort

Header:

Link: http://ujet.co/apps/api/v1/bulk/users_jobs/12345

Text

1{"id": 12345 # job_id3 "status": "valid_scheme",4 "link": "http://ujet.co/apps/api/v1/bulk/users_jobs/12345"5}

Status prüfen

Nutzung

Status prüfen

URL

apps/api/v1/bulk/users/jobs/#{job_id}

Methode

GET

Anfrage

Pfadvariable – job_id

Antwort

{
    "id": 12345,
    "created_at": "2022-01-07T06:40:34.000Z",
    "process_requested_at": "2022-01-07T06:45:34.000Z",
    "filename": "100row.json",
    "total_rows": 100,
    "affected_rows": 52,
    "failed_rows": 0,
    "status": "in_progress",
    "uploaded_user_name": null,
    "proceed_user_name": null,
    "uploaded_api_user_name": "api_user_name_1",
    "proceed_api_user_name": "api_user_name_2",
    "scheme_errors": []
    "update_errors": []
}

Aktualisierte Jobliste abrufen

Nutzung

Liste der Aktualisierungsjobs abrufen

URL

apps/api/v1/bulk/users/jobs

Methode

GET

Anfrage

{
  "page": 1,
  "per_page": 20
}

Antwort

Header

Link: <next link>
Total: 12345
Per-Page: 201

Text

[
    {
        "id": 12345,
        "created_at": "2022-01-07T06:21:10.000Z",
        "process_requested_at": "2022-01-07T06:22:25.000Z",
        "filename": "100row.json",
        "total_rows": 100,
        "affected_rows": 52,
        "failed_rows": 0,
        "status": "in_progress",
        "uploaded_user_name": null,
        "proceed_user_name": null,
        "uploaded_api_user_name": "api_user_name_1",
        "proceed_api_user_name": "api_user_name_2",
        "scheme_errors": [],
        "update_errors": []
    },
    ...
]

Hinweis

Die Ausgabe wird in umgekehrter Reihenfolge der job_id sortiert, sodass die neuesten Daten zuerst angezeigt werden.

Fehlerlogs für Schemas abrufen

Nutzung

Schema-Fehlerlogs abrufen

URL

/v1/bulk/users/errors/scheme/#{job_id}

Methode

GET

Anfrage

Pfadvariable – job_id

Antwort

content-type: application/json

[
  {
    "message": "Must be a valid email",
    "column": 1,
    "row": null
  },
  {
    "message": "Non-empty string",
    "column": 10,
    "row": 10
  }
]

Fehler abrufen

Nutzung

Fehlerlogs für Updates abrufen

URL

/v1/bulk/users/errors/update/#{job_id}

Methode

GET

Anfrage

Pfadvariable – job_id

Antwort

content-type: application/json

1[2 {3 "message": "Must be a valid email",4 "column": 1,5 "row": null,6 "error_type": "warning"7 },8 {9 "message": "Non-empty string",10 "column": 10,11 "row": 10,12 "error_type": "error"13 } 14]