Workiva prend en charge la bibliothèque standard de Python et le Python Package Index (PyPI). Les dépendances peuvent être générées automatiquement à l'aide de l'éditeur de scripts intégré ou créées manuellement sur votre machine locale.
Workiva Scripting est inclus dans Customize Workiva. Pour utiliser la fonctionnalité « Scripting », votre espace de travail doit disposer de l'option « Personnaliser Workiva/Scripting » activée, et les utilisateurs devront disposer des rôles « Scripting » appropriés ainsi que des autorisations d'accès aux fichiers nécessaires.
Bibliothèques prises en charge
Les scripts Workiva prennent en charge la bibliothèque standard de Python dès le départ ; il vous suffit d'importer le module dans votre code et de commencer à l'utiliser. Cette bibliothèque contient des modules intégrés qui permettent d'accéder à des fonctionnalités du système telles que les entrées/sorties de fichiers, ainsi que de nombreuses solutions standardisées pour des problèmes de programmation courants.
En plus de la bibliothèque standard, il existe une collection croissante de composants disponibles sur le site Python Package Index. Vous devrez générer dans votre script les dépendances qui incluent les composants PyPI que vous souhaitez utiliser.
L'un des composants PyPI que nous utilisons couramment est le composant "requests", qui vous permet d'interagir avec la plateforme Workiva par le biais de Workiva Public APIs.
Note: Les composants PyPI qui nécessitent des installations supplémentaires peuvent ne pas être pris en charge.
Générer des dépendances avec l'éditeur de scripts
L'éditeur de scripts peut construire automatiquement vos dépendances.
Voici comment :
- À partir de Home, ouvrez un fichier script (ou créez-en un nouveau).
- Allez dans le panneau Sources sur le côté gauche, cliquez avec le bouton droit de la souris dans l'espace vide situé juste en dessous des sources actuelles et sélectionnez Add Source File.
- Créer une nouvelle source nommée : requirements.txt.
- Dans le canevas central, ajoutez une ligne spécifiant la bibliothèque et la version à installer. (Il s'agit de la ligne « requests==2.28.1 » figurant dans l'image ci-dessous.)
- Cliquez sur Save en haut à gauche.
- Rechargez votre écran. Ne sautez pas cette étape !
Une fois sauvegardé et actualisé, Workiva génère automatiquement un paquet de dépendances appelé dependencies.zip. Vous pouvez maintenant utiliser la bibliothèque dans votre code.
Générer des dépendances à partir de votre machine locale
Pour créer manuellement des dépendances, vous devez créer un paquetage localement et le télécharger dans l'éditeur de script. Par exemple, vous pouvez avoir un projet qui a besoin d'accéder à la bibliothèque "requests" pour exécuter un script :
import requests print (requests.get('https://api.github.com').text) Cela peut être fait using un gestionnaire de paquets compatible avec pip :
-
Définissez la version de la bibliothèque de
requêtes « » à utiliser au format compatible avec pip ; elle doit être enregistrée sous la forme d'unfichier .txt :echo requests==2.28.1 > requirements.txt -
Installez la dépendance dans un nouveau répertoire « dependencies » de l' : :
pip3 install --target ./dependencies --requirement requirements.txt -
Créez un fichier «
dependencies.zip » à l'emplacement « » :cd dependencies zip -r ../dependencies.zip . cd .. -
Demander un jeton d'accès :
Avant de commencer, assurez-vous que votre autorisation API inclut le champ d'application «
script:write ». Pour savoir comment créer ou mettre à jour une autorisation d'API, consultez la page « » (Configuration de l'API Workiva) .curl -X POST https://api.app.wdesk.com/oauth2/token \ -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" \ -H "Accept: application/json" \ -H "X-Version: 2026-01-01" \ -d "client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET&grant_type=client_credentials"Récupérez
l'access_tokendans la réponse et utilisez-le comme$BEARER_TOKEN ci-dessous. -
Dans votre projet Workiva Scripting, créez une nouvelle source à partir du fichier «
dependencies.zip » disponible à l'adresse :curl -X POST "https://api.app.wdesk.com/scripts/${SCRIPT_ID}/sources" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "Authorization: Bearer $BEARER_TOKEN" \ -H "X-Version: 2026-01-01" \ -d '{"path":"dependencies.zip"}'La réponse renvoie la nouvelle source. Enregistrez son
identifiant« » ( ) sous le nom « » (SOURCE_ID) ( )pour la requête de téléchargement de contenu.{ "id" : "<sourceId>", "path" : "dependencies.zip" } -
Lancer un téléchargement de contenu pour la source «
dependencies.zip » . Ajoutez-ipour afficher les en-têtes de réponse :curl -i -X POST \ "https://api.app.wdesk.com/scripts/${SCRIPT_ID}/sources/${SOURCE_ID}/contentUpload" \ -H "Accept: application/json" \ -H "Authorization: Bearer $BEARER_TOKEN" \ -H "X-Version: 2026-01-01"Enregistrez l'URL de téléchargement «
uploadUrl» issue du corps de la réponse de l'adresse , ainsi que l'URL de l'opération figurant dans l'en-tête de réponse «Location » de l'adresse . -
Téléversez le fichier «
dependencies.zip » vers l'URLde téléchargement fournie paruploadUrl :curl -X PUT "<uploadurl>" \ -H "Authorization: Bearer $BEARER_TOKEN" \ --data-binary @dependencies.zipEnsuite, interrogez l'URL de l'opération :
curl -X GET "<operationlocation>" \ -H "Authorization: Bearer $BEARER_TOKEN" \ -H "X-Version: 2026-01-01"Respectez l'en-tête de réponse «
Retry-After » de et répétez la requête d'interrogation jusqu'à ce que lestatut desoit «completed », «failed» ou «cancelled » .N'exécutez pas le script tant que l'opération n'est pas terminée avec succès. -
Pour tester la bibliothèque qui gère les
requêtes « », exécutez un script contenant le code suivant :import requests print(requests.get('https://api.github.com').text)
FAQ
Quelles sont les API et les bibliothèques prises en charge ?
Workiva Scripting prend actuellement en charge :
- API publiques Workiva
- API non Workiva
- La bibliothèque standard de Python
- L'index des paquets Python (PyPI)
Workiva Scripting ne prend en charge que Python pour le moment.
Pour en savoir plus, consultez la page d'assistance de Workiva : . Bibliothèques de scripts Workiva prises en charge et dépendances : .
Quelle version de Python est utilisée dans Workiva Scripting ?
Les nouveaux scripts fonctionnent sous Python 3.13. Workiva Scripting prend toujours en charge les scripts Python 3.9 existants, mais la prise en charge de Python 3.9 prendra fin en octobre 2027 ; vous devriez donc migrer tous vos scripts Python 3.9 vers Python 3.13 dès que possible.
Pour en savoir plus, consultez la page d'assistance de Workiva : Migration des scripts vers Python 3.13 dans Workiva : .
Workiva fournit-il des clients API avec des langages populaires tels que Python ou Java ?
Nous ne fournissons pas actuellement de SDK publics pour Python ou Java.
Cependant, nous fournissons des spécifications ouvertes pour les API de Workiva afin que vous puissiez générer ces bibliothèques vous-même. Par exemple, vous pouvez obtenir le fichier OAS de l'API de la plateforme Workiva et générer une bibliothèque client.
Existe-t-il des API spécifiques aux scripts ?
Oui. L'API de script publique est disponible à partir de la version 2026-01-01 de l'API Workiva. Envoyez « X-Version : 2026-01-01 » avec chaque requête.
Consultez le guide de l'API de script d' , disponible à l'adresse , pour connaître les opérations prises en charge, les champs d'application et les conditions requises.
Comment puis-je créer et visualiser les subventions API pour les API publiques de Workiva ?
Vous devrez obtenir un identifiant et un secret client en suivant les instructions de ici.
Comment puis-je m'autoriser à utiliser les API publiques de Workiva à l'aide de Python ?
L'exemple suivant permet d'obtenir un jeton d'accès et de récupérer les scripts accessibles dans le cadre de l'autorisation API au sein de son espace de travail. La licence API nécessite le champ d'application « script:read » de l'API : . Pour savoir comment créer ou mettre à jour une autorisation d'API, consultez la page « » (Configuration de l'API Workiva) .
import os import requests AUTH_URL = "https://api.app.wdesk.com/oauth2/token" SCRIPTING_API_URL = "https://api.app.wdesk.com/scripts" API_VERSION = "2026-01-01" CLIENT_ID = os.environ["CLIENT_ID"] CLIENT_SECRET = os.environ["CLIENT_SECRET"] token_response = requests.post( AUTH_URL, headers={ "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8", "X-Version": API_VERSION, }, data={ "client_id": CLIENT_ID, "client_secret": CLIENT_SECRET, "grant_type": "client_credentials", }, timeout=30, ) token_response.raise_for_status() headers = { "Authorization": f"Bearer {token_response.json()['access_token']}", "X-Version": API_VERSION, } scripts_response = requests.get( SCRIPTING_API_URL, headers=headers, timeout=30, ) scripts_response.raise_for_status() print(scripts_response.json())Comment mettre à jour le format des cellules en utilisant Python ?
Vous pouvez mettre à jour la mise en forme des cellules à partir d'un script en appelant le point de terminaison « Mise à jour du contenu de la feuille » ( ) de l'API de la plateforme Workiva : ( POST /spreadsheets/{spreadsheetId}/sheets/{sheetId}/update ).
- Utilisez le champ
applyFormats pour appliquer des formats tels que le gras, la mise en forme des nombres et des devises, ainsi que les ombrages, etapplyBorderspour ajouter des bordures. - Nous vous recommandons de regrouper plusieurs opérations de formatage en une seule requête — chaque champ accepte un tableau d'opérations et le point de terminaison est soumis à une limitation de débit — plutôt que d'envoyer une requête par plage.
Pour plus d'informations, consultez les pages suivantes du site Workiva destinées aux développeurs :
Puis-je lire/écrire ou télécharger des fichiers non-Workiva stockés dans Workiva ?
Oui. Grâce aux API de gestion des fichiers de Workiva, vous pouvez importer des fichiers externes à Workiva — tels que des PDF, des images ou tout autre type de fichier — sur la plateforme sous forme de Documents justificatifs , qui conservent le fichier d'origine tel quel. Pour en télécharger un, utilisez le point de terminaison d'importation de fichiers avec le type « » , défini sur « » et le document d'accompagnement « ». Les documents justificatifs apparaissent aux côtés de vos autres fichiers Workiva et peuvent être répertoriés, déplacés, copiés, exportés (téléchargés) et supprimés comme n'importe quel autre fichier.
En savoir plus : Introduction aux API de gestion des fichiers
Puis-je créer et gérer des automatismes de manière programmatique ?
Pour l'instant, il n'existe pas de points d'extrémité permettant de créer ou de gérer des automatismes de manière programmatique.