Skip to content

feat(integrations): add support for bing-webmasters#5817

Merged
hassan254-prog merged 3 commits intoNangoHQ:masterfrom
naorhaziz:naor/add-bing-webmasters-integration
Apr 13, 2026
Merged

feat(integrations): add support for bing-webmasters#5817
hassan254-prog merged 3 commits intoNangoHQ:masterfrom
naorhaziz:naor/add-bing-webmasters-integration

Conversation

@naorhaziz
Copy link
Copy Markdown
Contributor

@naorhaziz naorhaziz commented Apr 8, 2026

Summary

  • Add Bing Webmasters as a new OAuth2 integration
  • Uses Bing's own OAuth2 server (not Microsoft Entra ID)
  • Includes provider config, docs, setup guide, and pre-built syncs placeholder

Test plan

  • Verify OAuth flow works with Bing Webmasters credentials
  • Verify proxy requests route correctly to https://www.bing.com/webmaster/api.svc/json
  • Verify token refresh works against the separate refresh endpoint

@naorhaziz naorhaziz force-pushed the naor/add-bing-webmasters-integration branch from fe4f80e to 9b8db74 Compare April 8, 2026 21:58
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fe4f80e188

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

auth_mode: OAUTH2
authorization_url: https://www.bing.com/webmasters/oauth/authorize
token_url: https://www.bing.com/webmasters/oauth/token
refresh_url: https://www.bing.com/webmasters/token
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Use a refresh endpoint that OAuth2 refresh actually calls

For standard OAUTH2 providers, the refresh path is built from token_url in getSimpleOAuth2ClientConfig/oldAccessToken.refresh(...), while refresh_url is not used unless the provider goes through ProviderClient (and bing-webmasters is not in that list). In practice this means refreshes will still be sent to /webmasters/oauth/token, so if Bing requires /webmasters/token for refresh, connections will start failing once access tokens expire.

Useful? React with 👍 / 👎.

@naorhaziz naorhaziz force-pushed the naor/add-bing-webmasters-integration branch from 9b8db74 to f751b2a Compare April 9, 2026 15:56
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f751b2a419

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment on lines +2406 to +2407
refresh_token_params:
grant_type: refresh_token
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Replace unsupported refresh_token_params in OAuth2 config

bing-webmasters is configured as auth_mode: OAUTH2, but this block uses refresh_token_params, which is only used in the TWO_STEP refresh path; the OAuth2 refresh flow reads refresh_params and otherwise falls back to token_params (getFreshOAuth2Credentials in packages/shared/lib/clients/oauth2.client.ts). Since token_params here sets grant_type: authorization_code, refresh requests will be sent with the wrong grant type after token expiry, causing refresh failures in production.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Contributor

@hassan254-prog hassan254-prog left a comment

Choose a reason for hiding this comment

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

Thanks for the contribution, single comment otherwise looks good.

Comment thread packages/providers/providers.yaml Outdated
authorization_url: https://www.bing.com/webmasters/oauth/authorize
token_url: https://www.bing.com/webmasters/oauth/token
refresh_url: https://www.bing.com/webmasters/token
default_scopes:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I would omit this here, default_scopes are mainly for scopes that are needed for connections to work properly, i.e offline_access for Oauth2 providers.

Also, remember to include a template logo with a max width or height of 44px, placed inside a 64px square container.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Fixed! Removed default_scopes and added the logo as well.

@naorhaziz naorhaziz force-pushed the naor/add-bing-webmasters-integration branch 2 times, most recently from f9c3bdb to 85daa2d Compare April 10, 2026 13:28
@naorhaziz naorhaziz force-pushed the naor/add-bing-webmasters-integration branch from 85daa2d to 671f6d7 Compare April 10, 2026 13:30
@hassan254-prog hassan254-prog added this pull request to the merge queue Apr 13, 2026
Merged via the queue into NangoHQ:master with commit 4619db7 Apr 13, 2026
19 of 21 checks passed
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