How to connect Workday to n8n?
You can connect Workday to n8n by creating an API integration in Workday, obtaining OAuth2 credentials, and configuring an HTTP Request node or a custom Workday node in n8n. This guide shows Docker and Node.js commands, practical examples, and a clear step plan to get a working automation quickly.
How to connect Workday to n8n: What You Need
- Workday tenant with API access and an integration system user.
- OAuth2 client credentials (client_id and client_secret) from Workday.
- n8n running on Docker or Node.js.
- Basic knowledge of REST or SOAP depending on your Workday service.
Step 1: Run n8n on Docker or Node.js
Start n8n quickly with Docker. Replace USER and PASS before use.
docker run -it --rm -p 5678:5678 \
-e N8N_BASIC_AUTH_ACTIVE=true \
-e N8N_BASIC_AUTH_USER=USER \
-e N8N_BASIC_AUTH_PASSWORD=PASS \
--name n8n n8nio/n8n:latest
If you use Node.js, install n8n globally and start it.
npm install -g n8n
n8n start
Step 2: Create OAuth2 credentials in Workday
Create an integration system user and an OAuth2 client. Note the client_id and client_secret. Use client credentials grant for server-to-server calls.
Step 3: Obtain an access token (example)
Use curl to request a token. Replace placeholders with your values.
curl -X POST \
-u "CLIENT_ID:CLIENT_SECRET" \
-d "grant_type=client_credentials" \
"https://{tenant}.workday.com/oauth2/v1/token"
The response returns an access_token. Save it for API calls in n8n.
Step 4: Configure an HTTP Request node in n8n
Create a new workflow. Add an HTTP Request node for Workday API calls. Use the Bearer token in the Authorization header.
GET https://{tenant}.workday.com/ccx/service/{api_path}
Headers:
Authorization: Bearer {{ $json["access_token"] }}
Accept: application/json
Or use the OAuth2 credential type in n8n and paste client_id/secret with the token URL.
Step 5: Logic and numbered flow
- 1. Trigger: choose a schedule, webhook, or manual trigger.
- 2. Token: request or refresh OAuth2 token using HTTP Request node.
- 3. Request: call Workday API with the token.
- 4. Transform: parse JSON or XML and map fields in n8n.
- 5. Action: write results to a service, email, or a spreadsheet.
Update
Keep n8n and containers updated. Pull the latest Docker image and restart the container when ready.
docker pull n8nio/n8n:latest
docker stop n8n && docker rm n8n
# Then run the docker run command from Step 1 again
Security
- Store client_secret and tokens in n8n credentials, not in plain nodes.
- Use TLS for n8n (HTTPS) when exposing it to the internet.
- Limit Workday API scopes and use least privilege for the integration user.
- Rotate secrets regularly and revoke unused OAuth clients.
Done
You now have a working plan to connect Workday to n8n. Start with a simple read call, verify the data, and then add transforms and actions. Monitor logs and token expiry to keep the automation reliable.
If you need a sample workflow file or help mapping a specific Workday report, export your n8n workflow and add a simple HTTP Request node as shown above.