Référence : API REST WQL
Utilisez l' API REST WQL pour renvoyer :
- Liste de sources de données et de filtres de source de données .
- Détail sur une source de données spécifique .
- Les objets de gestion principaux d'une source de données spécifique .
- Champs dans une source de données.
- objet de gestion associé à un champ spécifique.
- Lequeryparamètre de l'GET /datapoint de terminaison.
- Le corps demandéPOST /datapoint de terminaison.
GET /dataSources/
etGET /dataSources/{ID}
endpoints pour vérifier les noms alias à utiliser.
ConsulterRéférence : alias WQL .
Les deux hôtes défini par l'environnement client / défini dans l'environnement client et la API Workday Cloud Platform (WCP) prennent en charge les demandes WQL. Selon l'endroit où vous effectuez des demandes WQL, l'URL de base que vous utilisez diffère.
Source de la demande WQL
| URL de base à utiliser
|
|---|---|
défini par l'environnement client / défini dans l'environnement client hôte Workday | https://{hostname}/api/wql/{version}/{tenant}
|
WCP API Gateway | https://api.workday.com/wql/{version}
|
GET /data
Renvoie les données d'une requête WQL. Utilisez cette demande pour les requêtes comportant moins de 2 048 caractères. Vous pouvez uniquement afficher les données pour lesquelles vous disposez des droits d'accès. Vous exécutez WQL à l'aide du
query
Paramètre .Syntaxe :
{baseURL}/data?query={myquery}
Exemple de requête :
{baseURL}/data?query=SELECT location, max(yearsOfService) FROM allWorkers GROUP BY location
Exemple de réponse JSON :
{ "total": 152, "data": [ { "location": { "descriptor": "Academic Location WATS 1", "id": "5403216f5ef810381796f3bb216504f5" }, "max(yearsOfService)": "20" }, ... ] }
Workday efface les résultats de la requête WQL mis en cache au bout de 30 minutes. Pour vider manuellement le cache , vous pouvez ajouter
offset=0
à votre requête. Exemple :{baseURL}/data?offset=0&query=SELECT firstName, location FROM allWorkers
POST /données
Renvoie les données d'une requête WQL. Utilisez cette demande pour les requêtes contenant entre 2 048 et 16 000 caractères. Vous pouvez uniquement afficher les données pour lesquelles vous disposez des droits d'accès. Vous exécutez WQL à l'aide du
query
Paramètre . Placez lequery
parameter et que la requête dans le corps de la demande de l'appel API .Syntaxe :
{baseURL}/data/
Exemple de corps de la demande :
{ "query" : "SELECT location, max(yearsOfService) FROM allWorkers GROUP BY location" }
Exemple de réponse JSON :
{ "total": 152, "data": [ { "location": { "descriptor": "Academic Location WATS 1", "id": "5403216f5ef810381796f3bb216504f5" }, "max(yearsOfService)": "20" }, ... ] }
GET /dataSources
Retours :
- Ensemble de sources de données à utiliser dans une requête WQL.
- L' objet de gestion principal pour les sources de données.
- Informations d'indexation des sources de données.
Syntax:
{baseURL}/dataSources/
Exemple de requête :
{baseURL}/dataSources
Exemple de réponse JSON :
{ "total": 1722, "data": [ { "id": "aae24a47e36110000a37dcb7628d000d", "descriptor": "Indexed In Progress ~Worker~ Calibration Placements", "alias": "indexedInProgressWorkerCalibrationPlacements", "description": "Accesses a ~worker's~ in progress ~worker~ calibration event as the primary business object and the ~worker's~ attributes as the secondary business object. Returns the calibrated values specific to a ~worker~ for an in progress Calibration event.", "primaryBusinessObject": { "descriptor": "Indexed In Progress ~Worker~ Calibration Placements", "id": "aae24a47e36110000a37dd177601000e" }, "dataSourceIndexType": "Indexed" }, …… ] }
Exemple de requête avec le filtre facultatif . Renvoie les sources de données indexées lorsque le filtre 'SourceIndexType' = Indexé est utilisé. :
{baseURL}/dataSources?SourceIndexType=Indexed
Exemple de réponse JSON :
{ "total": 35, "data": [ { "id": "aae24a47e36110000a37dcb7628d000d", "descriptor": "Indexed In Progress ~Worker~ Calibration Placements", "alias": "indexedInProgressWorkerCalibrationPlacements", "description": "Accesses a ~worker's~ in progress ~worker~ calibration event as the primary business object and the ~worker's~ attributes as the secondary business object. Returns the calibrated values specific to a ~worker~ for an in progress Calibration event.", "primaryBusinessObject": { "descriptor": "Indexed In Progress ~Worker~ Calibration Placements", "id": "aae24a47e36110000a37dd177601000e" }, "dataSourceIndexType": "Indexed" }, …… ] }
GET /dataSources/{ID}
Renvoie une source de données pour l'identifiant spécifié à utiliser dans une requête WQL. La demande renvoie également l' objet de gestion principal pour la source de données.
Syntax:
{baseURL}/dataSources/‹datasource_wid›
Exemple de requête :
{baseURL}/dataSources/aae24a47e36110000a37dcb7628d000d
Exemple de réponse JSON :
{ "id": "aae24a47e36110000a37dcb7628d000d", "descriptor": "Indexed In Progress ~Worker~ Calibration Placements", "optionalParameters": [ { "label": "Include ~Terminated~ ~Workers~", "alias": "includeTerminatedWorkers", "type": "Boolean" }, ... ], "supportsEntryDate": false, "description": "Accesses a ~worker's~ in progress ~worker~ calibration event as the primary business object and the ~worker's~ attributes as the secondary business object. Returns the calibrated values specific to a ~worker~ for an in progress Calibration event.", "supportsEffectiveDate": false, "alias": "indexedInProgressWorkerCalibrationPlacements", "dataSourceIndexType": "Indexed", "requiredParameters": [ { "label": "Calibration Node for nBox", "type": "Multi-instance", "alias": "calibrationNodeForNBox" } ], "fullAlias": "my::indexedInProgressWorkerCalibrationPlacements", "filterIsRequired": false, "primaryBusinessObject": { "descriptor": "Indexed In Progress ~Worker~ Calibration Placements", "id": "aae24a47e36110000a37dd177601000e" } }
GET /dataSources/{ID}/fields
Renvoie les champs d'une source de données spécifique à utiliser dans une requête WQL. La demande renvoie également l' objet de gestion associé pour chaque champ.
Syntaxe :
{baseURL}/dataSources/‹datasource_wid›/fields
Exemple de requête :
{baseURL}/datasources/aae24a47e36110000a37dcb7628d000d/fields
Exemple de réponse JSON :
{ "total": 2967, "data": [ { "id": "09d50672a44001ea5d41efcfd6419a00", "descriptor": "Trended Worker Org for Cost Center_Current_QA (tenant setup)", "alias": "cf_TrendedWorkerOrgForCostCenter_Current_QATenantSetup", "type": "Single instance", "relatedBusinessObject": { "descriptor": "Position Set", "id": "373872302e7e4afe96aa37c0dd93e53e" } },... ] }
GET /dataSources/{ID}/fields/{subresourceID}
Renvoie le détail d'un champ particulier lorsque l'identifiant du champ est spécifié comme
{subresourceID}
. La demande renvoie également l' objet de gestion associé pour chaque champ. Syntaxe :
{baseURL}/dataSources/‹datasource_wid›/fields/{subresourceID}
Exemple de requête :
{baseURL}/dataSources/7884e9fbf68c10000b2b632e6e0100f1/fields/bb4ed38524451000419c823f09ba1587
Exemple de réponse JSON :
{ "id": "bb4ed38524451000419c823f09ba1587", "descriptor": "ACA IRS 1094-C Reporting - ~Worker~ Included in Full Time Count for September", "type": "Boolean", "alias": "ACAIRS1094_CReporting_WorkerIncludedInFullTimeCountForSeptember", "requiredParameters": [ { "alias": "yearForIRSReporting", "label": "Year", "type": "Single Instance" }, { "type": "Single Instance", "alias": "companyWith1094_CCountDataAvailableForYearSelection", "label": "Company with 1094-c Count Data Available for Year Selection" } ], "optionalParameters": [ { "type": "Single Instance", "alias": "month", "label": "Month" } ] }
GET /dataSources/{ID}/dataSourceFiltters
Renvoie les filtres de source de données d'une source de données spécifique à utiliser dans une requête WQL.
Syntaxe :
{baseURL}/dataSources/‹datasource_wid›/dataSourceFilters
Exemple de requête :
{baseURL}/dataSources/6d34556ff015100012a60a4bb1ce0b92/dataSourceFilters
Exemple de réponse JSON :
{ "total": 6, "data": [ { "id": "432abca0a751100008144ff171b8000a", "descriptor": "Student Applications for Admissions Cohort Finalize Decisions", "alias": "studentApplicationsForAdmissionsCohortFinalizeDecisions", "optionalParameters": [ { "type": "Single Instance", "description": "The Application Grouping for this Student Application.", "alias": "applicationGrouping" } ], "description": "Return Applications that are valid for Publication with this Cohort\n- has an Admissions Decision\n- Decisions Published Status is Confidential - For Internal Use Only\n- No Inactive Status" }, ... ] }