Skip to content

Workday

INFO

Le connecteur Workday est un connecteur de type Scripted API. Veuillez vous référer à la documentation du Script API pour plus de détails.

Le connecteur Workday permet la synchronisation des données entre Workday et RAC/M Identity. Pour ce faire, le connecteur utilise l'API SOAP de Workday. Il a été développé et testé avec la version 40 de l'API. La documentation de l'API est disponible au https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.0/Human_Resources.html.

Actuellement, le script ne supporte que les opérations de lecture sur l'objet "Worker". En particulier, l'appel effectué pour récupérer les utilisateurs est Get_Workers, documenté au https://community.workday.com/sites/default/files/file-hosting/productionapi/Human_Resources/v40.0/Get_Workers.html

Comme tous les scripts utilisés par le connecteur Scripted API, celui-ci peut être modifié pour répondre à des besoins spécifiques. Vous pouvez vous référer aux autres scripts de référence afin de voir comment les scripts peuvent être modifiés.

Configuration

Les paramètres suivants sont nécessaires:

ConfigurationDescription
Script PathChemin vers le script Groovy. Ex: /usr/local/racm-identity/ICF/reference-scripts/scripted-api-1.9.0.0/workday.groovy
Voir la section Création du script.
API URLURL de l'API à laquelle se connecter.
Preferred Authentication MethodMéthode d'authentification à utiliser (oauth2) uniquement.
Authentication URLURL utilisée pour l'authentification.(https://wd3-impl-services1.workday.com/ccx/service/{client}/Human_Resources/v43.2)
Custom Secret 1 à 5Secrets personnalisés pouvant être utilisés par le script, chiffrés et manipulés de manière sécurisée.
Custom Config 1 à 5Configurations personnalisées pouvant être utilisées par le script.
Custom Secret 2Optionnel: La configuration pourrait demander refresh_token avec la version 44.1 de Workday. Défini dans le script workday.groovy

Configuration avancée

ConfigurationDescription
TimeoutDélai d'attente en millisecondes.
Authentication URLURL utilisée pour l'authentification.
UsernameNom d'utilisateur à utiliser pour l'authentification.
PasswordMot de passe à utiliser pour l'authentification.
User TokenJeton utilisateur à utiliser pour l'authentification.
Thread Pool SizeNombre de threads à utiliser pour les opérations concurrentes. Laisser vide pour utiliser tous les threads disponibles.
Time between retriesTemps d'attente avant qu'une requête HTTP ne soit réessayée. Laisser vide pour utiliser 500 ms par défaut.
Bearer TokenLe bearer token à utiliser pour l'authentification.

Authentification

Le connecteur utilise le protocole OAuth2 pour s'authentifier auprès de l'API. Nous pouvons nous référer au connect scripté :

Script API

Fils d'exécution (Threads)

Le connecteur Workday supporte les opérations concurrentes. Pour ce faire, il utilise un groupement de fils d'exécution (Thread pool). Cela permet d'effectuer plusieurs appels à l'API en parallèle afin d'augmenter la performance. Cela est particulièrement utile lors de l'importation d'un très grand nombre d'utilisateurs. Le nombre de fils d'exécution à utiliser peut être configuré via le paramètre Thread Pool Size. Laissez ce paramètre vide pour utiliser tous les fils d'exécution disponibles.

Test avec curl avec un basic auth

  • Remplacer {client} par le nom de votre instance client chez Workday.
  • Remplacer {user} par votre nom de compte.
  • Remplacer {password} par votre mot de passe.
bash
curl -v -k -H "Content-Type: text/xml;charset=UTF-8" -H "SOAPAction: ''" -X POST --data '
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <env:Header>
        <wsse:Security env:mustUnderstand="1">
            <wsse:UsernameToken>
                <wsse:Username>{user}@{client}</wsse:Username>
                <wsse:Password
                    Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">{password}</wsse:Password>
            </wsse:UsernameToken>
        </wsse:Security>
    </env:Header>

    <env:Body>
        <wd:Get_Workers_Request xmlns:wd="urn:com.workday/bsvc" wd:version="v43.2">
            <wd:Request_Criteria>
                <wd:Transaction_Log_Criteria_Data>
                    <wd:Transaction_Type_References>
                    </wd:Transaction_Type_References>
                </wd:Transaction_Log_Criteria_Data>
                <wd:Include_Subordinate_Organizations>true</wd:Include_Subordinate_Organizations>
                <wd:Exclude_Inactive_Workers>true</wd:Exclude_Inactive_Workers>
                <wd:Exclude_Employees>false</wd:Exclude_Employees>
                <wd:Exclude_Contingent_Workers>true</wd:Exclude_Contingent_Workers>
            </wd:Request_Criteria>
            <wd:Response_Filter>
                <wd:Page>1</wd:Page>
                <wd:Count>1</wd:Count>
            </wd:Response_Filter>
            <wd:Response_Group>
                <wd:Include_Reference>true</wd:Include_Reference>
                <wd:Include_Personal_Information>true</wd:Include_Personal_Information>
                <wd:Show_All_Personal_Information>true</wd:Show_All_Personal_Information>
                <wd:Include_Additional_Jobs>true</wd:Include_Additional_Jobs>
                <wd:Include_Employment_Information>true</wd:Include_Employment_Information>
                <wd:Include_Compensation>true</wd:Include_Compensation>
                <wd:Include_Organizations>true</wd:Include_Organizations>
                <wd:Exclude_Organization_Support_Role_Data>true</wd:Exclude_Organization_Support_Role_Data>
                <wd:Exclude_Location_Hierarchies>true</wd:Exclude_Location_Hierarchies>
                <wd:Exclude_Cost_Centers>true</wd:Exclude_Cost_Centers>
                <wd:Exclude_Cost_Center_Hierarchies>true</wd:Exclude_Cost_Center_Hierarchies>
                <wd:Exclude_Companies>true</wd:Exclude_Companies>
                <wd:Exclude_Company_Hierarchies>true</wd:Exclude_Company_Hierarchies>
                <wd:Exclude_Matrix_Organizations>true</wd:Exclude_Matrix_Organizations>
                <wd:Exclude_Pay_Groups>true</wd:Exclude_Pay_Groups>
                <wd:Exclude_Regions>true</wd:Exclude_Regions>
                <wd:Exclude_Region_Hierarchies>true</wd:Exclude_Region_Hierarchies>
                <wd:Exclude_Supervisory_Organizations>true</wd:Exclude_Supervisory_Organizations>
                <wd:Exclude_Teams>true</wd:Exclude_Teams>
                <wd:Exclude_Custom_Organizations>true</wd:Exclude_Custom_Organizations>
                <wd:Include_Roles>true</wd:Include_Roles>
                <wd:Include_Management_Chain_Data>true</wd:Include_Management_Chain_Data>
                <wd:Include_Multiple_Managers_in_Management_Chain_Data>true</wd:Include_Multiple_Managers_in_Management_Chain_Data>
                <wd:Include_Benefit_Enrollments>true</wd:Include_Benefit_Enrollments>
                <wd:Include_Benefit_Eligibility>true</wd:Include_Benefit_Eligibility>
                <wd:Include_Related_Persons>true</wd:Include_Related_Persons>
                <wd:Include_Qualifications>true</wd:Include_Qualifications>
                <wd:Include_Employee_Review>true</wd:Include_Employee_Review>
                <wd:Include_Goals>true</wd:Include_Goals>
                <wd:Include_Development_Items>true</wd:Include_Development_Items>
                <wd:Include_Skills>true</wd:Include_Skills>
                <wd:Include_Photo>true</wd:Include_Photo>
                <wd:Include_Worker_Documents>true</wd:Include_Worker_Documents>
                <wd:Include_Transaction_Log_Data>true</wd:Include_Transaction_Log_Data>
                <wd:Include_Subevents_for_Corrected_Transaction>true</wd:Include_Subevents_for_Corrected_Transaction>
                <wd:Include_Subevents_for_Rescinded_Transaction>true</wd:Include_Subevents_for_Rescinded_Transaction>
                <wd:Include_Succession_Profile>true</wd:Include_Succession_Profile>
                <wd:Include_Talent_Assessment>true</wd:Include_Talent_Assessment>
                <wd:Include_Employee_Contract_Data>true</wd:Include_Employee_Contract_Data>
                <wd:Include_Contracts_for_Terminated_Workers>true</wd:Include_Contracts_for_Terminated_Workers>
                <wd:Include_Collective_Agreement_Data>true</wd:Include_Collective_Agreement_Data>
                <wd:Include_Probation_Period_Data>true</wd:Include_Probation_Period_Data>
                <wd:Include_Extended_Employee_Contract_Details>true</wd:Include_Extended_Employee_Contract_Details>
                <wd:Include_Feedback_Received>true</wd:Include_Feedback_Received>
                <wd:Include_User_Account>true</wd:Include_User_Account>
                <wd:Include_Career>true</wd:Include_Career>
                <wd:Include_Account_Provisioning>true</wd:Include_Account_Provisioning>
                <wd:Include_Background_Check_Data>true</wd:Include_Background_Check_Data>
                <wd:Include_Contingent_Worker_Tax_Authority_Form_Information>true</wd:Include_Contingent_Worker_Tax_Authority_Form_Information>
                <wd:Exclude_Funds>true</wd:Exclude_Funds>
                <wd:Exclude_Fund_Hierarchies>true</wd:Exclude_Fund_Hierarchies>
                <wd:Exclude_Grants>true</wd:Exclude_Grants>
                <wd:Exclude_Grant_Hierarchies>true</wd:Exclude_Grant_Hierarchies>
                <wd:Exclude_Business_Units>true</wd:Exclude_Business_Units>
                <wd:Exclude_Business_Unit_Hierarchies>true</wd:Exclude_Business_Unit_Hierarchies>
                <wd:Exclude_Programs>true</wd:Exclude_Programs>
                <wd:Exclude_Program_Hierarchies>true</wd:Exclude_Program_Hierarchies>
                <wd:Exclude_Gifts>true</wd:Exclude_Gifts>
                <wd:Exclude_Gift_Hierarchies>true</wd:Exclude_Gift_Hierarchies>
                <wd:Exclude_Retiree_Organizations>true</wd:Exclude_Retiree_Organizations>
            </wd:Response_Group>
        </wd:Get_Workers_Request>
    </env:Body>
</env:Envelope>' "https://wd3-impl-services1.workday.com/ccx/service/{client}/Human_Resources/v43.2"