Workiva Scripting is inbegrepen bij Customize Workiva. Om scripting te gebruiken, moet de optie 'Workiva/Scripting aanpassen' in uw werkruimte zijn ingeschakeld en moeten gebruikers de juiste scriptingrol(len) en bestandsrechten hebben.
Scriptconfiguratie en overzicht
Hoe worden scripts doorgaans gebruikt?
Workiva Scripting kan veel herhalende, tijdrovende taken automatiseren die anders handmatig zouden worden uitgevoerd. Enkele veelvoorkomende toepassingen zijn het onderdrukken van lege rijen, rapportindelingen en het toepassen van aangepaste opmaak op meerdere documenten.
In bredere zin kunnen scripts worden aangepast aan uw specifieke bedrijfsbehoeften, waardoor u workflows kunt afstemmen op en schalen naar de manier waarop uw organisatie werkt, met een gecontroleerde uitvoering waarop u kunt vertrouwen. De code is van jou; wat je ermee doet, hangt grotendeels af van je scriptontwikkelaar, de configuratie van je werkplek en het huidige aantal handmatige processen binnen je bedrijf. En naarmate meer werk door AI wordt ondersteund, biedt scripting dat werk een betrouwbare, herhaalbare basis om op voort te bouwen.
Zijn er beperkingen aan het scriptgebruik?
Ja, Workiva hanteert een aantal beperkingen voor zowel Workiva Scripting als de scripting-API.
Meer informatie over Workiva Scripting-limieten .
Hoe activeer ik scripts vanuit Chains?
Hiervoor is de Workiva Scripting-connector nodig.
Lees de onderstaande artikelen voor meer informatie:
Voldoet Workiva Scripting aan de FedRAMP-standaard?
Ja. Scripts worden uitgevoerd op door Workiva beheerde, FedRAMP-compatibele infrastructuur, met dezelfde platformmachtigingen en beheersinstellingen als andere Workiva-content.
Hoe kan ik de toegang tot scripts beveiligen?
Er zijn verschillende manieren om uw code te beschermen tegen toegang door onbevoegde gebruikers:
- Maak een aparte werkruimte of organisatie aan voor geautoriseerde gebruikers : Het aanmaken van een werkruimte, of zelfs een complete organisatie, uitsluitend voor geautoriseerde gebruikers is de veiligste optie. Partners kunnen bijvoorbeeld een werkruimte voor Workiva Scripting in uw organisatie aanmaken, waarna klanten scripts vanuit hun eigen organisatie kunnen uitvoeren.
- Gebruik rollen : De Workiva Scripting-rollen—Script Editor, Script Viewer en Script Runner—zijn gecategoriseerd, zodat gebruikers alleen toegang hebben tot de scripts die ze nodig hebben voor hun werk. Met de rol Script Runner kunnen gebruikers scripts uitvoeren zonder de code te hoeven bekijken.
- Gebruikersrechten : Scriptbestanden kunnen op bestandsniveau worden beperkt, zodat alleen specifieke gebruikers uw code kunnen bewerken of bekijken.
Lees meer over Workiva Scripting-rollen en -machtigingen .
Is er een lijst met toegestane IP-adressen voor scripting?
Ja, de toegestane IP-adressen voor het scriptprogramma zijn hier opgenomen .
Is er een scriptbibliotheek beschikbaar?
Ja. We hebben een aantal voorbeeldscripts verzameld die u kunt gebruiken. Je kunt ook je eigen scripts maken met behulp van de handleidingen in het gedeelte Scripts maken en beheren van het Supportcentrum.
De scripteditor gebruiken
Hoe beheer ik scriptversies?
Op dit moment bewaart Workiva alleen de meest recente versie van een script.
Je kunt kopieën van je scriptbestanden in Workiva maken en ze in mappen ordenen, maar we raden aan om een apart versiebeheersysteem te gebruiken — vooral als je een versiebeheersysteem voor je hele organisatie hebt, zie Workiva Scripting: Best Practices voor het ontwikkelingsproces .
Hoe synchroniseer ik Workiva-code met een versiebeheersysteem voor bedrijven (bijvoorbeeld GitHub)?
De Workiva Scripting API biedt eindpunten voor broncodebeheer waarmee scriptbronbestanden kunnen worden opgehaald en bijgewerkt. Het ophalen van bronnen vereist script:read ; het aanmaken, bijwerken, uploaden of synchroniseren van bronnen vereist script:write . Workiva synchroniseert scripts niet automatisch met externe versiebeheersystemen zoals GitHub, GitLab of SVN.
Voor instructies over het aanmaken of bijwerken van een API-toekenning, zie Workiva API Setup .
Hoe krijg ik vanuit een script toegang tot inloggegevens voor Workiva- en niet-Workiva-systemen?
Er zijn twee manieren om toegang te krijgen tot inloggegevens voor Workiva- en niet-Workiva-systemen:
- Verzend inloggegevens als runtime-input (voorkeur)
- Zet de inloggegevens vast in de code.
Waarom worden de waarden van de script-runtime-inputs niet weergegeven in de loguitvoer tijdens de uitvoering?
Dit is een veiligheidsmaatregel. Omdat invoerparameters gevoelige gegevens kunnen bevatten, verwijderen we deze uit de logboeken die voor gebruikers zichtbaar zijn.
Hoe kan ik tijdelijke gegevens opslaan tijdens de uitvoering van scripts?
Workiva-scripts kunnen de Python Open -functie gebruiken om tijdelijk bestanden te lezen en te schrijven in de map / tmp . Andere routes zijn afgesloten.
Telkens wanneer een script wordt uitgevoerd, wordt er een container opgestart in de cloudinfrastructuur van Workiva. Op die container is Linux geïnstalleerd en alle paden zijn beperkt, behalve /tmp (dat leeg is). In dat pad kunnen tijdelijk gegevens worden geschreven en gelezen. Zodra de rit voorbij is, wordt de container weggegooid.
Kan ik globale variabelen definiëren die ik in meerdere scripts kan gebruiken, zoals in Chains?
Niet op dit moment. Als uw script echter onderdeel uitmaakt van een Chains-workflow, kunt u Chains-variabelen gebruiken en hun waarden als runtime-inputs aan het script doorgeven.
Kan ik bestanden als parameters meesturen?
Binaire bestanden kunnen als parameters worden verzonden, zolang ze niet groter zijn dan 128 KB en gecodeerd zijn naar tekst (d.w.z. binaire naar tekstcodering ).
Kan ik de organisatie-ID, werkruimte-ID en regio in mijn scripts gebruiken?
Ja, de organisatie-ID, de werkruimte-ID en de regio (VS, APAC, CA, EU) zijn via omgevingsvariabelen beschikbaar voor uw script. Bijvoorbeeld: os.getenv("WORKIVA_ORGANIZATION_ID") .
| Variabele | Beschrijving |
|---|---|
| WORKIVA_ORGANISATIE_ID | De unieke ID van de Workiva-organisatie waar het script wordt gehost. |
| WORKIVA_ACCOUNT_ID | De unieke ID van de Workiva-werkruimte waar het script wordt gehost. |
| WORKIVA_CLUSTER_DOMEIN | De Workiva-regio (VS, APAC, CA of EU) van de productieomgeving waar het script wordt gehost. |
| WORKIVA_SCRIPTING_SCRIPT_ID | De unieke ID van het script dat wordt uitgevoerd. |
| WORKIVA_SCRIPTING_RUN_ID | De unieke ID van de huidige scriptuitvoering. |
| WORKIVA_SCRIPTING_MEMORY_LIMIT | De maximale hoeveelheid RAM-geheugen die het script tijdens één enkele uitvoeringssessie ter beschikking staat. |
| WORKIVA_SCRIPTING_DISK_LIMIT | De maximale schijfruimte die het script in de /tmp map kan gebruiken tijdens één enkele uitvoering. |
Kan ik code uit het ene Workiva-script gebruiken in een ander Workiva-script?
Je kunt geen Workiva-script rechtstreeks importeren of vanuit een ander Workiva-script aanroepen. Een klein stukje herbruikbare code kun je kopiëren en plakken in elk script dat het nodig heeft.
Voor code die je in meerdere scripts hergebruikt, is het beter om deze als een gedeelde afhankelijkheid te verpakken. Je kunt een dependencies.zip bundel maken die je gedeelde bibliotheken bevat — en zelfs clientcode die is gegenereerd op basis van de Workiva openbare API-specificatie — en vervolgens diezelfde bundel uploaden naar elk script dat deze nodig heeft. Hierdoor kunt u veelgebruikte code op één plek bewaren en in verschillende scripts hergebruiken, in plaats van deze naar elk script te kopiëren.
Scripts gebruiken vanuit automatiseringen
Kan ik een script uitvoeren dat gehost wordt in een andere werkruimte, organisatie of regio (APAC, CA, EU of VS)?
Workiva-automatiseringen kunnen alleen scripts uitvoeren die zich in dezelfde werkruimte bevinden als het bestand. Om een script in een andere werkruimte, organisatie of regio uit te voeren, gebruikt u de Workiva Scripting connector of de Workiva Scripting API .
Wanneer u de Scripting API gebruikt, moet u de API-toekenning aanmaken in de werkruimte waar het betreffende script zich bevindt. De machtiging vereist script:execute ; als de integratie de uitvoeringsstatus, logboeken of uitvoer ophaalt, vereist deze ook script:read . Voor instructies over het aanmaken of bijwerken van een API-toekenning, zie Workiva API Setup .
Kan ik tijdens de uitvoering van een script invoer/parameters meesturen?
Op dit moment staat de automatiseringsfunctie geen runtime-inputs toe die naar het script worden verzonden wanneer het script wordt uitgevoerd.
Welke metadata wordt vanuit een automatisering naar een scriptuitvoering verzonden?Is de werkruimte-ID verzonden?
Wanneer een script vanuit een automatisering wordt uitgevoerd, worden de volgende parameters verzonden:
- DOCUMENT_ID : De ID van het document waarop de automatisering wordt uitgevoerd.
- INPUT_SHEET_ID : De WURL van het spreadsheet dat wordt gebruikt om de invoerparameters van de automatisering te beheren.
- INPUT_RESOURCE_ID : De WURL van de sectie in het spreadsheet "input".
- INPUT_SPREADSHEET_ID : De ID van het "input"-spreadsheet.
- INPUT_SPREADSHEET_SHEET_ID : De ID van de sectie in het "input"-spreadsheet.
Voor meer informatie, zie de Workiva-ondersteuningspagina Scripts uitvoeren met automatiseringen .
Hoe krijg ik vanuit de scriptuitvoering toegang tot inloggegevens voor Workiva- en niet-Workiva-systemen?
Wanneer een script vanuit een automatisering wordt uitgevoerd, is de enige optie om de inloggegevens in de code zelf vast te leggen.
Kan hetzelfde script gelijktijdig vanuit twee of meer bestanden worden uitgevoerd?
Ja, een script kan gelijktijdig worden uitgevoerd vanuit hetzelfde bestand of vanuit meerdere bestanden.
Scripts gebruiken van ketens
Kan ik een script uitvoeren dat gehost wordt in een andere werkruimte, organisatie of regio (APAC, Canada, EMEA, VS)?
Ja, een script dat in één werkruimte wordt gehost, kan worden uitgevoerd door een keten die in een andere werkruimte, organisatie of omgeving wordt gehost.
Om dit te doen, moet de Workiva Scripting connector die in de keten wordt gebruikt, worden ingesteld met een API-grant die is aangemaakt in de host-werkruimte, en de gebruikte scripting-/IAM-URL's moeten overeenkomen met de juiste werkruimte.
Raadpleeg de volgende artikelen voor meer informatie:
Kan hetzelfde script gelijktijdig vanaf twee nodes worden uitgevoerd?
Hetzelfde script kan gelijktijdig worden uitgevoerd vanaf meerdere knooppunten in één keten of over meerdere ketens heen.
Hoe gebruik ik de uitvoer van een script in een ander blockchainknooppunt?
Met de opdracht Run Script kunt u een voorbeeldpayload invoeren voor elke uitvoer die JSON produceert. Deze uitvoer kan vervolgens in andere knooppunten worden gebruikt.
Kan ik een tijdelijk bestand vanuit een keten doorgeven aan een script?
Je kunt binaire bestanden als parameters opgeven, zolang ze niet groter zijn dan 128 KB.
API's en bibliotheken
Welke API's en bibliotheken worden ondersteund?
Workiva Scripting ondersteunt momenteel:
- Workiva openbare API's
- Niet-Workiva API's
- De standaardbibliotheek van Python
- De Python Package Index (PyPI)
Workiva Scripting ondersteunt momenteel alleen Python.
Welke versie van Python wordt gebruikt in Workiva Scripting?
Nieuwe scripts draaien op Python 3.13. Workiva Scripting ondersteunt nog steeds bestaande Python 3.9-scripts, maar de ondersteuning voor Python 3.9 eindigt in oktober 2027. Het is daarom raadzaam om alle Python 3.9-scripts zo snel mogelijk te migreren naar Python 3.13.
Voor meer informatie, zie de Workiva-ondersteuningspagina Scripts migreren naar Python 3.13 in Workiva .
Biedt Workiva API-clients aan die populaire programmeertalen zoals Python of Java ondersteunen?
We bieden momenteel geen openbare SDK's aan voor Python of Java.
We bieden echter open API-specificaties voor Workiva API's, zodat u deze bibliotheken zelf kunt genereren. U kunt bijvoorbeeld het OAS-bestand van de Workiva Platform API verkrijgen en een clientbibliotheek genereren .
Zijn er scriptspecifieke API's beschikbaar?
Ja. De openbare Scripting API is beschikbaar via de Workiva API-versie van 2026-01-01. Stuur bij elk verzoek X-Version: 2026-01-01 mee.
Zie de Scripting API-handleiding voor ondersteunde bewerkingen, bereiken en vereisten.
Hoe kan ik API-toestemmingen voor de openbare Workiva API's aanmaken en bekijken?
Je moet een client-ID en een geheim verkrijgen door de instructies hier te volgen.
Hoe krijg ik toegang tot de openbare Workiva API's met Python?
Het volgende voorbeeld verkrijgt een toegangstoken en haalt de scripts op die toegankelijk zijn voor de API-grant in de bijbehorende werkruimte. De API-toekenning vereist het script:read bereik. Voor instructies over het aanmaken of bijwerken van een API-toekenning, zie Workiva API Setup .
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())Hoe kan ik de opmaak van cellen bijwerken met Python?
Je kunt de celopmaak vanuit een script bijwerken door het eindpunt Update sheet content van de Workiva Platform API aan te roepen ( POST /spreadsheets/{spreadsheetId}/sheets/{sheetId}/update ).
-
Gebruik hette passen.veld applyFormats om opmaak zoals vetgedrukt, getal- en valutaopmaak en arcering toe te passen, en applyBorders om randen toe - We raden aan om meerdere opmaakbewerkingen te bundelen in één verzoek — elk veld accepteert een reeks bewerkingen en het eindpunt heeft een snelheidslimiet — in plaats van één verzoek per bereik te verzenden.
Raadpleeg voor meer informatie de volgende Workiva-ontwikkelaarspagina's:
Kan ik bestanden die niet van Workiva zijn, maar wel in Workiva zijn opgeslagen, lezen/schrijven of uploaden?
Ja. Met behulp van de Files Management API's van Workiva kunt u bestanden die niet van Workiva zijn – zoals pdf's, afbeeldingen of andere willekeurige bestandstypen – uploaden naar het platform als Ondersteunende documenten , waarbij het originele bestand ongewijzigd blijft. Om er een te uploaden, gebruikt u het importbestand-eindpunt met kind ingesteld op SupportingDocument . Ondersteunende documenten verschijnen naast uw andere Workiva-bestanden en kunnen, net als elk ander bestand, worden weergegeven, verplaatst, gekopieerd, geëxporteerd (gedownload) en verwijderd.
Meer informatie: Inleiding tot API's voor bestandsbeheer
Kan ik programmatisch automatiseringen aanmaken en beheren?
Op dit moment zijn er geen eindpunten beschikbaar om programmatisch automatiseringen te creëren of te beheren.