Skip to content

feat(providers): allow for interpolation of hostnames for dayforce#5539

Open
hassan254-prog wants to merge 5 commits intomasterfrom
wari/add-support-for-dayforce-test
Open

feat(providers): allow for interpolation of hostnames for dayforce#5539
hassan254-prog wants to merge 5 commits intomasterfrom
wari/add-support-for-dayforce-test

Conversation

@hassan254-prog
Copy link
Contributor

@hassan254-prog hassan254-prog commented Feb 27, 2026

Describe the problem and your solution

  • allow for interpolation of hostnames for dayforce

Add Dayforce hostname interpolation and update auth URL handling

This PR adds configurable hostname interpolation for Dayforce by updating provider configuration, token URL construction, and documentation to support optional client and identity hostnames for non-production environments. It also refactors token URL building to use makeUrl with merged connection config and credentials, expanding URL interpolation behavior to strip credentials. prefixes and adding a corresponding unit test.

Key Changes

• Updated Dayforce proxy.base_url and token_url in packages/providers/providers.yaml to support host interpolation with fallbacks and added optional clientHostname and identityHostname fields
• Refactored token URL construction in packages/shared/lib/services/connection.service.ts to use makeUrl and expanded makeUrl in packages/shared/lib/utils/utils.ts to strip credentials. prefixes
• Added Dayforce quickstart and connection guide updates in docs/api-integrations/dayforce.mdx and docs/api-integrations/dayforce/connect.mdx, plus navigation adjustments in docs/docs.json and related doc snippets

Possible Issues

• Navigation moved from /integrations/all/dayforce to /api-integrations/dayforce without a redirect entry in docs/docs.json (per review comment) may break existing links.


This summary was automatically generated by @propel-code-bot

@hassan254-prog hassan254-prog force-pushed the wari/add-support-for-dayforce-test branch from abf790b to 87238ec Compare February 27, 2026 13:14
@linear
Copy link

linear bot commented Feb 27, 2026

@hassan254-prog hassan254-prog marked this pull request as ready for review March 3, 2026 22:42
propel-code-bot[bot]

This comment was marked as outdated.

Copy link
Contributor

@propel-code-bot propel-code-bot bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found; changes look consistent with the stated goals.

Status: No Issues Found | Risk: Low

Review Details

📁 21 files reviewed | 💬 0 comments

Instruction Files
├── .claude/
│   ├── agents/
│   │   └── nango-docs-migrator.md
│   └── skills/
│       ├── agent-builder-skill/
│       │   ├── EXAMPLES.md
│       │   └── SKILL.md
│       ├── creating-integration-docs/
│       │   └── SKILL.md
│       └── creating-skills-skill/
│           └── SKILL.md
├── AGENTS.md
└── GEMINI.md

@hassan254-prog hassan254-prog requested a review from a team March 3, 2026 23:23

export function makeUrl(template: string, config: Record<string, any>, skipEncodeKeys: string[] = []): URL {
const cleanTemplate = template.replace(/connectionConfig\./g, '');
const cleanTemplate = template.replace(/connectionConfig\./g, '').replace(/credentials\./g, '');
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is it a breaking change? is makeUrl ever called elsewhere?

const urlWithConnectionConfig =
typeof tokenUrl === 'string'
? makeUrl(tokenUrl, { ...connectionConfig, ...dynamicCredentials }).toString()
: interpolateString(interpolateString('', connectionConfig), dynamicCredentials);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wouldn't this line always evaluate to '', making new URL('') throw?

type: string
title: Company ID
order: 1
order: 3
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should the company ID which is required stay above the optional params below?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants