ProviderConfigurationError: No Access Token present

Hi, when trying to send mail notifications through Gmail channel we are getting an error

“ProviderConfigurationError: No Access Token present”

This seems to be provider error, we followed the GUI process to add Gmail channel and granted it access to send mails in the name of user. Full log from Send action:


{
  "channel": {
    "id": "c1993295-b9bc-4144-9da4-910d90033d9a",
    "blockIds": [
      "fad1525c-e254-4f43-b765-192886aaec04"
    ],
    "taxonomy": "email:gmail",
    "providers": [
      {
        "key": "gmail",
        "configurationId": "54c96e65-22cf-4eee-b018-311e91d5d1c1",
        "config": {},
        "conditional": {
          "filters": [],
          "logicalOperator": "and",
          "behavior": "hide"
        }
      }
    ],
    "config": {
      "email": {
        "emailSubject": "New Subject",
        "emailTemplateConfig": {
          "templateName": "line",
          "topBarColor": "#9D3789",
          "footerLinks": {}
        }
      },
      "locales": {}
    },
    "disabled": false,
    "label": "",
    "conditional": {
      "filters": [],
      "logicalOperator": "and",
      "behavior": "hide"
    }
  },
  "configuration": "54c96e65-22cf-4eee-b018-311e91d5d1c1",
  "provider": "gmail",
  "providerResponse": {},
  "errorMessage": "ProviderConfigurationError: No Access Token present."
}

The error persists when after re-adding channel, de-authenticating third party app in Google Account and re-granting access and switching to another account.

Where to look for source of this error?

Hi there @michal.daniel,

Thanks for reaching out!

That’s certainly strange, Gmail integration should be the fastest way to get you started on sending messages, so this is certainly not ideal.

A couple of questions if you don’t mind:

  • Are you trying to set an override in your send request?
  • Would you mind sharing with me the request you made to Courier’s /send endpoint, as well as the name of your workspace?

Thanks!

@rodrigo

We are not setting override, the request made:


{
  "message": {
    "to": {
      "user_id": "michal-daniel-tester"
    },
    "data": {
      "recipientName": "test"
    },
    "template": "GG2PVTN6DK4HCNJ2C2HQV0W24ZMV"
  }
}

The profile is loaded correctly and message rendered, it gets sent through other channels and fails on Gmail.

The workspace is dispoGas / Test.

I tested it again today with identical results. Any help would be appreciated.

Hi @michal.daniel,

Thanks for the additional info!

Looks like your request is missing the “email”: field in your profile. Gmail requires an email in the profile to properly send. Your other channels are getting the notification because they only require a "user_id:.

Thanks!

@rodrigo But why? My michal-daniel-tester profile has verified email adress.

{
  "birthdate": "29.06.1992",
  "email_verified": true,
  "address": {},
  "gender": "Male",
  "courier": {
    "channel": "michal-daniel-tester"
  },
  "name": "Michał Daniel",
  "last_name": "Daniel",
  "family_name": "Daniel",
  "first_name": "Michał",
  "email": "michal.daniel@hakkie.ai",
  "user_id": "michal-daniel-tester"
}