Invites

Email or text users a URL connecting them to Link.

  1. Create an invite template and add customizations.
  2. Send an invite via email, SMS, or both.
  3. Resend the invite if the user needs to return to Link, or lost their original invite.

#Create a template

post/v2/invite-templates

Returns the ID of the invite template (used when sending invites) and the customization payload.


Request body
  • namestring
    required

    Name for the invite template.

  • email_bodystring
    required

    Email body text content.

  • sms_bodystring
    required

    SMS message text content.

  • headerstring
    required

    Email header bold text. Appears just above the body text.

  • buttonstring
    required

    Call-to-action button text, such as Connect Payroll Accounts.

  • subjectstring
    required

    Email subject line.

  • senderstring
    required

    Invite sender. Typically an individual's name or [Company].

  • companystring
    required

    Value for the [Company] placeholder.

  • logo_urlstring
    required

    URL location of your circular logo image file.

  • page_headingstring
    required

    Header bold text of the landing page the user enters after clicking the call-to-action button.

  • page_descriptionstring
    required

    Body text content of the landing page.

  • page_buttonstring
    required

    Call-to-action button text of the landing page.

  • page_configobject
    optional

    Customizations for the success page shown after the user connects their payroll accounts through Link.

  • page_success_headingstring
    required

    Header bold text of the success page.

  • page_success_descriptionstring
    required

    Body text content of the success page.

  • page_success_show_buttonboolean
    required

    Optionally include a button on the success page that returns the user to Link. Set to true or false.

  • page_success_buttonstring
    optional

    Success button text. Typically "Connect Additional Accounts"

    Required when page_success_show_button is set to true.

  • reply_tostring
    optional

    Reply-to email address for the invite.

  • flow_idstring
    optional

    ID used to customize the user's experience in Link.

Example Request
1curl --request POST \
2     --url https://api.argyle.com/v2/invite-templates \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json' \
5     --data '{
6        "name": "First invite template",
7        "email_body": "Hi, [Name], [Company] is working with Argyle to verify your work history. It is a quick process that should take no longer than a few minutes to complete. Get started by clicking the link below. Sincerely, [Sender]",
8        "sms_body": "[Company] has asked you to connect your employment accounts. Get started here: [Link]",
9        "header": "[Company] would like you to connect your employment accounts",
10        "button": "Connect your employment accounts",
11        "subject": "Connect Your Employment Account",
12        "sender": "[Company]",
13        "company": "Test Co.",
14        "logo_url": "https://company.com/logo.jpg",
15        "page_heading": "Please connect your employment account",
16        "page_description": "[Company] has asked you to connect your employment account to use their services.",
17        "page_button": "Connect Account",
18        "page_config": {
19          "page_success_heading": "Thank you for connecting your accounts",
20          "page_success_description": "You are all set. If you have any questions please reach out to [Company].",
21          "page_success_show_button": true,
22          "page_success_button": "Connect Additional Accounts"
23        },
24        "reply_to": "[email protected]",
25        "flow_id": "00000000"
26     }'
Example Response
1{
2  "id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
3  "name": "First invite template",
4  "email_body": "Hi, [Name], [Company] is working with Argyle to verify your work history. It's a quick process that should take no longer than a few minutes to complete. Get started by clicking the link below. Sincerely, [Sender]",
5  "sms_body": "[Company] has asked you to connect your employment accounts. Get started here: [Link]",
6  "header": "[Company] would like you to connect your employment accounts",
7  "button": "Connect your employment accounts",
8  "subject": "Connect Your Employment Account",
9  "sender": "[Company]",
10  "company": "Test Co.",
11  "logo_url": "https://company.com/logo.jpg",
12  "page_heading": "Let's connect your employment account",
13  "page_description": "[Company] has asked you to connect your employment account to use their services.",
14  "page_button": "Connect Account",
15  "page_config": {
16    "page_success_heading": "Thank you for connecting your accounts",
17    "page_success_description": "You are all set. If you have any questions please reach out to [Company].",
18    "page_success_show_button": true,
19    "page_success_button": "Connect Additional Accounts"
20  },
21  "reply_to": "[email protected]",
22  "flow_id": "00000000"
23}

#Retrieve a template

get/v2/invite-templates/{id}

Retrieves an invite template.

Path parameters
  • idstring (uuid)
    required

    ID of the invite template to be retrieved.

Example Request
1curl --request GET \
2     --url https://api.argyle.com/v2/invite-templates/{id} \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1{
2  "id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
3  "name": "First invite template",
4  "email_body": "Hi, [Name], [Company] is working with Argyle to verify your work history. It's a quick process that should take no longer than a few minutes to complete. Get started by clicking the link below. Sincerely, [Sender]",
5  "sms_body": "[Company] has asked you to connect your employment accounts. Get started here: [Link]",
6  "header": "[Company] would like you to connect your employment accounts",
7  "button": "Connect your employment accounts",
8  "subject": "Connect Your Employment Account",
9  "sender": "[Company]",
10  "company": "Test Co.",
11  "logo_url": "https://company.com/logo.jpg",
12  "page_heading": "Let's connect your employment account",
13  "page_description": "[Company] has asked you to connect your employment account to use their services.",
14  "page_button": "Connect Account",
15  "page_config": {
16    "page_success_heading": "Thank you for connecting your accounts",
17    "page_success_description": "You are all set. If you have any questions please reach out to [Company].",
18    "page_success_show_button": true,
19    "page_success_button": "Connect Additional Accounts"
20  },
21  "reply_to": "[email protected]",
22  "flow_id": "00000000"
23}

#Delete a template

delete/v2/invite-templates/{id}

Deletes an invite template.

Path parameters
  • idstring (uuid)
    required

    ID of the invite template to be deleted.

Example Request
1curl --request DELETE \
2     --url https://api.argyle.com/v2/invite-templates/{id} \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1"200 status code."

#List all templates

get/v2/invite-templates

Returns an array of all invite templates.

Query parameters
  • limitinteger
    optional

    Number of invite templates returned per page. Default: 10. Maximum: 200.

Example Request
1curl --request GET \
2     --url https://api.argyle.com/v2/invite-templates?limit=1 \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1[
2  {
3    "id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
4    "name": "First invite template",
5    "email_body": "Hi, [Name], [Company] is working with Argyle to verify your work history. It's a quick process that should take no longer than a few minutes to complete. Get started by clicking the link below. Sincerely, [Sender]",
6    "sms_body": "[Company] has asked you to connect your employment accounts. Get started here: [Link]",
7    "header": "[Company] would like you to connect your employment accounts",
8    "button": "Connect your employment accounts",
9    "subject": "Connect Your Employment Account",
10    "sender": "[Company]",
11    "company": "Test Co.",
12    "logo_url": "https://company.com/logo.jpg",
13    "page_heading": "Let's connect your employment account",
14    "page_description": "[Company] has asked you to connect your employment account to use their services.",
15    "page_button": "Connect Account",
16    "page_config": {
17      "page_success_heading": "Thank you for connecting your accounts",
18      "page_success_description": "You are all set. If you have any questions please reach out to [Company].",
19      "page_success_show_button": true,
20      "page_success_button": "Connect Additional Accounts"
21    },
22    "reply_to": "[email protected]",
23    "flow_id": "00000000"
24  }
25]

#Send an invite

post/v2/invites

Sends an invite to the user via email, SMS, or both.

In addition to immediately sending the email/SMS, returns an invite object in the response.

Request body
  • invite_template_idstring (uuid)
    required

    ID of the invite template to be applied.

  • full_namestring
    required

    Name of the invite recipient.

  • phone_numberstring
    optional

    Phone number of the SMS invite recipient. Required when email is empty.

  • emailstring
    optional

    Email address of the email invite recipient. Required when phone_number is empty.

  • dds_configobject
    optional

    Unencrypted target deposit destination. Adds a deposit switching flow after the user connects their payroll accounts.

The invite object
  • idstring (uuid)

    Unique ID of the invite.

  • userstring (uuid)

    ID of the user.

    null until the user submits login credentials through Link.

  • invite_template_idstring (uuid)

    ID of the invite template applied to the invite.

  • full_namestring

    Name of the invite recipient.

  • phone_numberstring

    Phone number of the invite recipient.

  • emailstring

    Email of the invite recipient.

  • invited_atstring (datetime)

    Timestamp (ISO 8601) when the invite was sent.

    The timestamp is updated after re-sending an invite.

  • revoked_atstring (datetime)

    Timestamp (ISO 8601) when the invite was revoked.

  • statusstring (enum)

    The invite's status.

  • urlstring

    URL included in the invite that connects the user to Link.

Example Request
1curl --request POST \
2     --url https://api.argyle.com/v2/invites \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json' \
5     --data '{
6        "invite_template_id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
7        "full_name": "Sarah Longfield",
8        "phone_number": "212-555-5555",
9        "email": "[email protected]"
10     }'
Example Response
1{
2  "id": "0424137bc-edc5-35de-c1b5-1c3cddb4b227",
3  "user": null,
4  "invite_template_id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
5  "full_name": "Sarah Longfield",
6  "phone_number": "212-555-5555",
7  "email": "[email protected]",
8  "invited_at": "2023-03-09T23:57:05.756Z",
9  "revoked_at": null,
10  "status": "sent",
11  "url": "https://console.argyle.com/add-work-accounts/0424137bc-edc5-35de-c1b5-1c3cddb4b227"
12}

#Retrieve an invite

get/v2/invites/{id}

Retrieves an invite object.

Path parameters
  • idstring (uuid)
    required

    ID of the invite to be retrieved.

Example Request
1curl --request GET \
2     --url https://api.argyle.com/v2/invites/{id} \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1{
2  "id": "0424137bc-edc5-35de-c1b5-1c3cddb4b227",
3  "user": null,
4  "invite_template_id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
5  "full_name": "Sarah Longfield",
6  "phone_number": "212-555-5555",
7  "email": "[email protected]",
8  "invited_at": "2023-03-09T23:57:05.756Z",
9  "revoked_at": null,
10  "status": "sent",
11  "url": "https://console.argyle.com/add-work-accounts/0424137bc-edc5-35de-c1b5-1c3cddb4b227"
12}

#Re-send an invite

post/v2/invites/{id}

Re-sends a previously sent invite. Updates the invited_at time.

Path parameters
  • idstring (uuid)
    required

    ID of the invite to be re-sent.

Example Request
1curl --request POST \
2     --url https://api.argyle.com/v2/invites/{id} \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1{
2  "id": "0424137bc-edc5-35de-c1b5-1c3cddb4b227",
3  "user": null,
4  "invite_template_id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
5  "full_name": "Sarah Longfield",
6  "phone_number": "212-555-5555",
7  "email": "[email protected]",
8  "invited_at": "2023-03-10T23:57:05.756Z",
9  "revoked_at": null,
10  "status": "sent",
11  "url": "https://console.argyle.com/add-work-accounts/0424137bc-edc5-35de-c1b5-1c3cddb4b227"
12}

#Revoke an invite

post/v2/invites/{id}/revoke

Invalidates a previously sent invite.

If a user clicks a revoked invite URL, the landing page will notify the user the invite has expired.

Path parameters
  • idstring (uuid)
    required

    ID of the invite to be revoked.

Example Request
1curl --request POST \
2     --url https://api.argyle.com/v2/invites/{id}/revoke \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1{
2  "id": "0424137bc-edc5-35de-c1b5-1c3cddb4b227",
3  "user": null,
4  "invite_template_id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
5  "full_name": "Sarah Longfield",
6  "phone_number": "212-555-5555",
7  "email": "[email protected]",
8  "invited_at": "2023-03-10T23:57:05.756Z",
9  "revoked_at": "2023-03-11T23:57:05.756Z",
10  "status": "revoked",
11  "url": "https://console.argyle.com/add-work-accounts/0424137bc-edc5-35de-c1b5-1c3cddb4b227"
12}

#List all invites

get/v2/invites

Returns an array of all invite objects.

Query parameters
  • limitinteger
    optional

    Number of invite objects returned per page. Default: 10. Maximum: 200.

Example Request
1curl --request GET \
2     --url https://api.argyle.com/v2/invites?limit=2 \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1[
2  {
3    "id": "0424137bc-edc5-35de-c1b5-1c3cddb4b227",
4    "user": "0236cb56-abc2-014b-4e61-2cdb3db53ec5",
5    "invite_template_id": "0e41254b-bed6-12cd-959d-63470f57c7f5",
6    "full_name": "Sarah Longfield",
7    "phone_number": "212-555-5555",
8    "email": "[email protected]",
9    "invited_at": "2023-03-09T23:57:05.756Z",
10    "revoked_at": null,
11    "status": "completed",
12    "url": "https://console.argyle.com/add-work-accounts/0424137bc-edc5-35de-c1b5-1c3cddb4b227"
13  },
14  {
15    "id": "f3041cb5-bf31-21cb-aa05-df294c161fd9",
16    "user": null,
17    "invite_template_id": "d3582274-badc-11ec-b9e2-045dd87cc250",
18    "full_name": "Bob Jones",
19    "phone_number": "212-867-5309",
20    "email": "[email protected]",
21    "invited_at": "2023-03-10T01:22:36.432Z",
22    "revoked_at": null,
23    "status": "initiated",
24    "url": "https://console.argyle.com/add-work-accounts/f3041cb5-bf31-21cb-aa05-df294c161fd9"
25  }
26]