ToolJet/ToolJet · error · Error

Missing required fields in sourceOptions

Error message

Missing required fields in sourceOptions

What it means

Error "Missing required fields in sourceOptions" thrown in ToolJet/ToolJet.

Source

Thrown at plugins/packages/common/lib/oauth.ts:178

  } catch (error) {
    throw new QueryError('Failed to fetch access token', {}, {});
  }
}

function handleAuthorizationCodeGrant(sourceOptions: any, additionalOptions?: any): QueryResult {
  return {
    status: 'needs_oauth',
    data: { auth_url: getAuthUrl(sourceOptions, additionalOptions) },
  };
}

async function getTokenForClientCredentialsGrant(sourceOptions: any) {
  if (
    isEmpty(sourceOptions.access_token_url) ||
    isEmpty(sourceOptions.client_id) ||
    isEmpty(sourceOptions.client_secret)
  ) {
    throw new Error('Missing required fields in sourceOptions');
  }

  // SSRF Protection: Validate access token URL
  await validateUrlForSSRF(sourceOptions.access_token_url);

  const headersObject = sanitizeParams(sourceOptions.access_token_custom_headers);
  const clientAuth = sourceOptions.client_auth?.toLowerCase();

  try {
    const baseRequestBody = {
      grant_type: sourceOptions.grant_type || 'client_credentials',
      ...(sourceOptions.audience ? { audience: sourceOptions.audience } : {}),
      ...(sourceOptions.scopes ? { scope: sourceOptions.scopes } : {}),
    };

    const headers = {
      'Content-Type': 'application/x-www-form-urlencoded',
      ...(Object.keys(headersObject).length > 0 && headersObject),

View on GitHub (pinned to 20602a8e10)

Solutions

  1. Provide access_token_url, client_id, and client_secret in sourceOptions.
  2. Check for empty strings or wrong option keys.

Example fix

Fill access_token_url, client_id, and client_secret in the data source OAuth config.

When it happens

Trigger: Token refresh is attempted when sourceOptions lack required fields (client id, secret, or redirect URI).

Common situations: Defend by validating all required sourceOptions fields before initiating the OAuth flow.


AI-assisted analysis of ToolJet/ToolJet@20602a8e10 (2026-08-13). Data as JSON: /api/errors/b3b6f4914be344c0. Report an issue: GitHub.