Passer au contenu principal
Administrator Guide
Dernière mise à jour : 2026-03-13
Référence : API REST WQL

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.
Vous pouvez utiliser les informations de la réponse pour créer une requête WQL dans :
  • Le
    query
    paramètre de l'
    GET /data
    point de terminaison.
  • Le corps demandé
    POST /data
    point de terminaison.
Avant de créer votre demande, vous pouvez passer des appels avec l'
GET /dataSources/
et
GET /dataSources/{ID}
endpoints pour vérifier les noms alias à utiliser.
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 le
query
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" }, ... ] }