Поделиться через


Создание рабочей силыИнтеграция

Пространство имен: microsoft.graph

Создайте объект workforceIntegration . Вы можете настроить, для каких сущностей вы хотите получать синхронные уведомления об изменениях shifts, и настроить сущности для настройки фильтрации по WFM правилам, для которых допустимо, включая запросы на переключение.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) WorkforceIntegration.ReadWrite.All Недоступно.
Делегированные (личная учетная запись Майкрософт) Не поддерживается. Не поддерживается.
Для приложений Не поддерживается. Не поддерживается.

Примечание. Этот API поддерживает разрешения администратора. Глобальные администраторы могут получать доступ к группам, членом которых они не являются.

HTTP-запрос

POST /teamwork/workforceIntegrations

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json. Обязательно.
MS-APP-ACTS-AS Идентификатор пользователя (GUID). Требуется только в том случае, если маркер авторизации является маркером приложения; В противном случае — необязательно.

Текст запроса

В тексте запроса укажите представление объекта workforceIntegration в формате JSON.

Отклик

В случае успешного выполнения этот метод возвращает код отклика 201 Created и новый объект workforceIntegration в теле отклика.

Примеры

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/v1.0/teamwork/workforceIntegrations
Content-type: application/json

{
  "displayName": "displayName-value",
  "apiVersion": 99,
  "encryption": {
    "protocol": "protocol-value",
    "secret": "secret-value"
  },
  "isActive": true,
  "url": "url-value",
  "supportedEntities": "supportedEntities-value"
}

Отклик

Ниже показан пример отклика.

Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

HTTP/1.1 201 Created
Content-type: application/json

{
  "displayName": "displayName-value",
  "apiVersion": 99,
  "encryption": {
    "protocol": "protocol-value",
    "secret": "secret-value"
  },
  "isActive": true,
  "url": "url-value",
  "supportedEntities": "supportedEntities-value"
}

Примеры вариантов использования сущности WorkforceIntegration для фильтрации по WFM правилам допустимости

Вариант использования: создайте новый объект WorkforceIntegration с поддержкой SwapRequest для фильтрации соответствия требованиям

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/v1.0/teamwork/workforceIntegrations/
{
  "displayName": "ABCWorkforceIntegration",
  "apiVersion": 1,
  "isActive": true,
  "encryption": {
    "protocol": "sharedSecret",
    "secret": "My Secret"
  },
  "url": "https://ABCWorkforceIntegration.com/Contoso/",
  "supports": "Shift,SwapRequest",
  "eligibilityFilteringEnabledEntities": "SwapRequest"
}
Authorization: Bearer {token}
Content-type: application/json

Отклик

Ниже показан пример отклика.

HTTP/1.1 200 OK
{
  "id": "c5d0c76b-80c4-481c-be50-923cd8d680a1",
  "displayName": "ABCWorkforceIntegration",
  "apiVersion": 1,
  "isActive": true,
  "encryption": {
    "protocol": "sharedSecret",
    "secret": null
  },
  "url": "https://abcWorkforceIntegration.com/Contoso/",
  "supports": "Shift,SwapRequest",
  "eligibilityFilteringEnabledEntities": "SwapRequest"
}

Сведения о том, как обновить существующую рабочую группу с поддержкой SwapRequest для фильтрации допустимости, см. в разделе Обновление.

Пример получения допустимых сдвигов, если SwapRequest включен в параметр eligibleyFilteringEnabledEntities

Взаимодействие между приложением Shifts и конечными точками интеграции рабочей силы будет соответствовать существующему шаблону.

Запрос

В следующем примере показан запрос, сделанный shifts к конечной точке интеграции рабочей силы для получения подходящих смен для запроса на переключение.

POST https://abcWorkforceIntegration.com/Contoso/{apiVersion}/team/{teamId}/read
Accept-Language: en-us
{
  "requests": [
  {
     "id": "{shiftId}",
     "method": "GET”,
     "url": “/shifts/{shiftId}/requestableShifts?requestType={requestType}&startDateTime={startDateTime}&endDateTime={endDateTime}”
   }]
}

Отклик

Ниже приведен пример ответа от службы интеграции рабочей силы.

HTTP/1.1 200 OK
{
  "responses": [
  {
    "body": {
      "SHFT_6548f642-cbc1-4228-8621-054327576457",
      "SHFT_6548f642-cbc1-4228-8621-054327571234"
  }
    "id": "{shiftId}",
    "status: 200,
    "body": {
       "data": [{ShiftId}, {ShiftId}...]
       "error": null
    }
  ]
}