Hi @Simone Jennings,
Thank you for posting your query on Microsoft Q&A.
As per our understanding, you are trying to pass custom values like organisationId and invitationCode from your Angular app into your Entra External ID user flow using MSAL’s extraQueryParameters. While these values appear in the browser's URL, they are showing up as null in your custom API connector calls on both onStart and onSubmit.
To send custom attribute values (like organisationId and invitationCode) from your Angular app into Microsoft Entra External ID user flows using MSAL, and have them show up in your API connectors.
Please follow the steps below:
1**. Register Custom Attributes in Microsoft Entra**
- Go to Entra ID > External Identities > User attributes.
- Click Add to create each custom attribute:
- invitationCode
- organisationId
- Save your changes.
- invitationCode
Custom attributes are stored in the format
extension_<appId>_attributename
where <appId> is the Application (client) ID of the "aad-extensions-app" registration in your tenant. learn.microsoft
- Add Custom Attributes to the User Flow
- Go to Entra ID > External Identities > User flows.
- Pick your flow (sign-in/sign-up).
- Under User attributes, click + Add and select both invitationCode and organisationId.
- Set them as optional if you wish users not to be blocked if they’re missing.
- Save the flow. learn.microsoft
- Pass Custom Attributes to the API Connector
- Still within your user flow, visit API connectors.
- For either the On start or On submit steps:
- Select your API connector.
- Under Send claims to your API, click + Add claims and check invitationCode and organisationId.
- In Advanced or Pass through, toggle Pass query string parameters to Yes—this ensures query parameters from the URL are sent through to your API.
- Save settings.
- In Advanced or Pass through, toggle Pass query string parameters to Yes—this ensures query parameters from the URL are sent through to your API.
- Under Send claims to your API, click + Add claims and check invitationCode and organisationId.
- Select your API connector.
- Repeat for each authentication step where you need these values. learn.microsoft
- Update Your Angular (MSAL) Integration
When using MSAL in Angular, add custom parameters as extraQueryParameters in your loginRedirect or loginPopup call:
javascript
this.msalService.loginRedirect({
scopes: ['openid', 'profile', 'email', 'offline_access'],
extraQueryParameters: {
invitationCode: 'YOUR_INVITATION_CODE',
organisationId: 'YOUR_ORG_ID'
},
prompt: 'create'
});
The parameter keys (invitationCode, organisationId) must exactly match those registered as custom attributes and added to the user flow.learn.microsoft.