/user-invite-templates and /user-invites endpoints.
Overview
You can send invites to new users containing a link they can click to connect their payroll accounts through Argyle. Invites can be sent via Console or using the API method below. User invites are created using the/user-invite-templates endpoint and sent using the /user-invites endpoint and can be sent via SMS, email, or both.
- Both SMS and email fields must be included in user invite templates
- You can choose whether to send an SMS, email, or both when sending an invite
id which can be used as the invite-template-id when sending an invite. This invite-template-id contains your messaging, landing page, and Argyle Link customizations. Once an invite is sent, a user invite object will be created.
Returning users
User invites can be re-used for the same user. This allows the user to return to Argyle Link, enabling them to:- Re-verify disconnected accounts
- Connect additional accounts
- Revoke access to previously connected accounts
- After sending an invite, a user invite object will be returned in the response.
- Save the invite
idfrom the user invite object. You can also list all invites and filter for the relevant user if the inviteidwas not originally saved. - (Optional) When an invite is first sent, a new user object that represents this new user is created. If you want to update the user’s metadata (often used for internal ID matching), save the ID value returned in the
userfield of the user invite object, and use this ID to update the user’s metadata. - Resend the invite using the invite
id, and the user will be able to return to Argyle Link to take additional action.
Tracking invite status
- Retrieve the invite sent to the user. The
statusfield of the user invite object will indicate where the invited user is in the connection process. - Use accounts webhooks to automatically be notified when a user submits login credentials, and whether they successfully connect a payroll account.
Adding deposit switching
Add your unencrypted DDS configuration in thepds_config body parameter when sending the invite.
The user invite template object
Attributes
id(string (uuid), optional): Unique ID of the template.name(string, optional): The name of the template.company(string, optional): Your company/brand name that is shown to users in the invite.logo_url(string, optional): A link to the logo to be used in the invitation email. Logo dimensions: 120x120 pxsms_body(string, optional)sender(string, optional)subject(string, optional): The email subject of the invitation email.header(string, optional): The title header of the invitation email.email_body(string, optional): The text content of the invitation email.button(string, optional): The call-to-action button label within the email.page_heading(string, optional)page_description(string, optional): The text content of the landing page.page_button(string, optional): The call-to-action button label on the landing page to initiate Argyle Link.page_config(object, optional): Configuration parameters for the success page.page_success_heading(string, optional): The heading 1 of the success page.page_success_description(string, optional): The text content of the success page.page_success_show_button(boolean, optional): The text content of the success page.reply_to(string, optional): The reply email address for your user invite.
The user invite object
Attributes
id(string (uuid), optional): A unique ID for the invite.user(string (uuid), optional): The user ID associated with this invite. It is available only when a user has accepted the invite and successfully connected via Argyle Link.user_token(string (uuid), optional): A unique token generated by Argyle Link. Only available when a user has attempted to connect via Argyle Link. Used to restore the session when the user comes back for a second time to update their information.full_name(string, optional): The full name of the user.email(string, optional): The email address which received the invite.phone_number(string, optional): The phone number which received the invite.invite_template_id(string (uuid), optional): ID of the user invite template that was used to send the invite.status(string (enum), optional)url(string, optional): The invite URL sent to the user.
Create an invite template
POST/v1/user-invite-templates
Create a new invite template with the provided attributes.
These placeholders can be used in the text contents. Each placeholder can be replaced by these values:
- [Company] - Corresponds to the
companyattribute in the user invite template object. - [Name] - Corresponds to the
full_nameattribute in the user invite template object. - [Link] - Shortened link to accept the invitation.
- [Sender] - Corresponds to the sender attribute in the user invite template object.
id and all your provided template attributes.
Request body
name(string, required): The name of the template. Each name must be unique.email_body(string, required): The text content of the email to be sent as part of the invitation.sms_body(string, required): The text message content to be sent as part of the invitation.header(string, required): The title header of the invitation email.button(string, required): The call-to-action button label within the email.subject(string, required): The email subject of the invitation email.company(string, required): The company name to be displayed when using the [Sender] placeholder.logo_url(string, required): A link to the logo to be used in the invitation email.page_description(string, required): The text content of the landing page.page_button(string, required): The call-to-action button label on the landing page to initiate Argyle Link.page_config(object, optional): Configuration parameters for the success page.page_success_description(string, required): The text content of the success page.page_success_show_button(boolean, required)page_success_button(string, optional): The call-to-action button label on the success page.reply_to(string, optional): The reply to email address.
- curl
- python
Retrieve a template
GET/v1/user-invite-templates/{id}
Retrieve a user invite template object with the supplied ID, and returns a user invite template object if a valid identifier was provided.
Path parameters
id(string (uuid), required): The identifier of the user invite template to be retrieved.
- curl
- python
List templates
GET/v1/user-invite-templates/{id}
Returns a list of existing templates.
Query parameters
limit(integer, optional): The number of user invite template objects to be returned. The default is 10. Max value is 200.
- curl
- python
Delete a template
DELETE/v1/user-invite-templates/{id}
Deletes a user invite template.
When a user invite template is successfully deleted, the request returns a 200 status and an empty response body.
Path parameters
id(string (uuid), required): ID of the user invite template to be deleted.
- curl
- python
Send an invite
POST/v1/user-invites
Send out an invite to a user’s email and/or phone. If both email and phone_number are provided, then both an email and a text message will be sent. If only one of them is provided, then only the corresponding action will be executed.
This request returns the user invite object with status = sent.
Request body
invite_template_id(string (uuid), required): ID of the user invite template that should be applied to the invite.full_name(string, required): The full name of the user.pds_config(object, optional): Add your unencrypted DDS configuration object to enable a direct deposit switching flow.
- curl
- python
Resend an invite
POST/v1/user-invites/{id}
Resend a previously sent-out invite.
This request returns the user invite object with status = sent and an updated invited_at time.
Path parameters
id(string (uuid), required): ID of the invite to be resent.
- curl
- python
Revoke an invite
POST/v1/user-invites/{id}/revoke
Invalidate a previously sent-out invite.
This request returns the user invite object with status = revoked and a revoked_at time.
Path parameters
id(string (uuid), required): ID of the invite to be revoked.
- curl
- python
Retrieve an invite
GET/v1/user-invites/{id}
Retrieve a user invite object with the supplied ID.
This request returns a user invite object if a valid identifier was provided.
Path parameters
id(string (uuid), required): The identifier of the user invite to be retrieved.
- curl
- python
List invites
GET/v1/user-invites
Return a list of all sent-out invites.
This request returns an object with a results property that contains an array of up to limit user invite objects.
Query parameters
limit(integer, optional): The number of user invite objects to be returned. The default is 10. Max value is 200.
- curl
- python