Erstellen Sie ein neues workforceIntegration-Objekt .
Sie können festlegen, für welche Entitäten Sie synchrone Änderungsbenachrichtigungen für Schichten erhalten möchten, und Entitäten zum Konfigurieren der Filterung nach WFM Regelberechtigung festlegen, einschließlich Austauschanforderungen.
Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.
Berechtigungstyp
Berechtigungen mit den geringsten Berechtigungen
Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto)
WorkforceIntegration.ReadWrite.All
Nicht verfügbar.
Delegiert (persönliches Microsoft-Konto)
Nicht unterstützt
Nicht unterstützt
Anwendung
Nicht unterstützt
Nicht unterstützt
Hinweis: Diese API unterstützt Administratorberechtigungen. Benutzer mit Administratorrollen können auf Gruppen zugreifen, in denen sie kein Mitglied sind.
In der folgenden Tabelle sind die Eigenschaften aufgeführt, die Sie beim Erstellen eines workforceIntegration-Objekts verwenden können.
Eigenschaft
Typ
Beschreibung
apiVersion
Int32
API-Version für die Rückruf-URL. Beginnen Sie mit 1.
displayName
Zeichenfolge
Name der Personalintegration.
eligibilityFilteringEnabledEntities
eligibilityFilteringEnabledEntities
Unterstützung zum Anzeigen von berechtigungsgefilterten Ergebnissen. Mögliche Werte: none, swapRequest, offerShiftRequest, unknownFutureValue, timeOffReason. Verwenden Sie den Anforderungsheader Prefer: include-unknown-enum-members , um den folgenden Wert in dieser verteilbaren Enumeration abzurufen: timeOffReason.
Die Verschlüsselungsressource für die Personalintegration.
isActive
Boolescher Wert
Gibt an, ob diese Personalintegration derzeit aktiv und verfügbar ist.
supportedEntities
workforceIntegrationSupportedEntities
Die für synchrone Änderungsbenachrichtigungen unterstützten Schichtenentitäten. Wechselt zurück zur angegebenen URL, wenn Clientänderungen an den in dieser Eigenschaft angegebenen Entitäten auftreten. Standardmäßig werden keine Entitäten für Änderungsbenachrichtigungen unterstützt. Mögliche Werte: none, shift, swapRequest, userShiftPreferences, openShift, openShiftRequest, offerShiftRequest, unknownFutureValue, timeOffReason, timeOff, timeOffRequest. Verwenden Sie den Anforderungsheader Prefer: include-unknown-enum-members , um die folgenden Werte in dieser verteilbaren Enumeration abzurufen: timeOffReason , timeOff , timeOffRequest.
url
Zeichenfolge
Url für die Mitarbeiterintegration, die für Rückrufe aus dem Schichtdienst verwendet wird.
Antwort
Bei erfolgreicher Ausführung gibt die Methode einen 201 Created Antwortcode und ein neues workforceIntegration-Objekt im Antworttext zurück.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new WorkforceIntegration
{
DisplayName = "ABCWorkforceIntegration",
ApiVersion = 1,
IsActive = true,
Encryption = new WorkforceIntegrationEncryption
{
Protocol = WorkforceIntegrationEncryptionProtocol.SharedSecret,
Secret = "My Secret",
},
Url = "https://ABCWorkforceIntegration.com/Contoso/",
SupportedEntities = WorkforceIntegrationSupportedEntities.Shift | WorkforceIntegrationSupportedEntities.SwapRequest,
EligibilityFilteringEnabledEntities = EligibilityFilteringEnabledEntities.SwapRequest,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teamwork.WorkforceIntegrations.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
WorkforceIntegration workforceIntegration = new WorkforceIntegration();
workforceIntegration.setDisplayName("ABCWorkforceIntegration");
workforceIntegration.setApiVersion(1);
workforceIntegration.setIsActive(true);
WorkforceIntegrationEncryption encryption = new WorkforceIntegrationEncryption();
encryption.setProtocol(WorkforceIntegrationEncryptionProtocol.SharedSecret);
encryption.setSecret("My Secret");
workforceIntegration.setEncryption(encryption);
workforceIntegration.setUrl("https://ABCWorkforceIntegration.com/Contoso/");
workforceIntegration.setSupportedEntities(EnumSet.of(WorkforceIntegrationSupportedEntities.Shift, WorkforceIntegrationSupportedEntities.SwapRequest));
workforceIntegration.setEligibilityFilteringEnabledEntities(EnumSet.of(EligibilityFilteringEnabledEntities.SwapRequest));
WorkforceIntegration result = graphClient.teamwork().workforceIntegrations().post(workforceIntegration);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\WorkforceIntegration;
use Microsoft\Graph\Generated\Models\WorkforceIntegrationEncryption;
use Microsoft\Graph\Generated\Models\WorkforceIntegrationEncryptionProtocol;
use Microsoft\Graph\Generated\Models\WorkforceIntegrationSupportedEntities;
use Microsoft\Graph\Generated\Models\EligibilityFilteringEnabledEntities;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new WorkforceIntegration();
$requestBody->setDisplayName('ABCWorkforceIntegration');
$requestBody->setApiVersion(1);
$requestBody->setIsActive(true);
$encryption = new WorkforceIntegrationEncryption();
$encryption->setProtocol(new WorkforceIntegrationEncryptionProtocol('sharedSecret'));
$encryption->setSecret('My Secret');
$requestBody->setEncryption($encryption);
$requestBody->setUrl('https://ABCWorkforceIntegration.com/Contoso/');
$requestBody->setSupportedEntities(new WorkforceIntegrationSupportedEntities('shift,SwapRequest'));
$requestBody->setEligibilityFilteringEnabledEntities(new EligibilityFilteringEnabledEntities('swapRequest'));
$result = $graphServiceClient->teamwork()->workforceIntegrations()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.workforce_integration import WorkforceIntegration
from msgraph.generated.models.workforce_integration_encryption import WorkforceIntegrationEncryption
from msgraph.generated.models.workforce_integration_encryption_protocol import WorkforceIntegrationEncryptionProtocol
from msgraph.generated.models.workforce_integration_supported_entities import WorkforceIntegrationSupportedEntities
from msgraph.generated.models.eligibility_filtering_enabled_entities import EligibilityFilteringEnabledEntities
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = WorkforceIntegration(
display_name = "ABCWorkforceIntegration",
api_version = 1,
is_active = True,
encryption = WorkforceIntegrationEncryption(
protocol = WorkforceIntegrationEncryptionProtocol.SharedSecret,
secret = "My Secret",
),
url = "https://ABCWorkforceIntegration.com/Contoso/",
supported_entities = WorkforceIntegrationSupportedEntities.Shift | WorkforceIntegrationSupportedEntities.SwapRequest,
eligibility_filtering_enabled_entities = EligibilityFilteringEnabledEntities.SwapRequest,
)
result = await graph_client.teamwork.workforce_integrations.post(request_body)
Informationen zum Aktualisieren einer vorhandenen Mitarbeiterintegration mit aktiviertem SwapRequest für die Berechtigungsfilterung finden Sie unter Aktualisieren.
Beispiel für das Abrufen berechtigter Schichten, wenn SwapRequest in "eligibilityFilteringEnabledEntities" enthalten ist
Die Interaktion zwischen der Schichten-App und den Endpunkten für die Integration von Mitarbeitern folgt dem vorhandenen Muster.
Anforderung
Das folgende Beispiel zeigt eine Anforderung, die von Schichten an den Workforce Integration-Endpunkt gesendet wird, um berechtigte Schichten für eine Austauschanforderung abzurufen.