Users

Users connect their payroll accounts using Link.

#The user object

Attributes
  • #
    idstring (uuid)

    Unique ID of the user.

  • #
    created_atstring (datetime)

    Timestamp (ISO 8601) when the user object was created.

  • #
    items_connectedarray of strings

    Items the user has connected through Link. Typically employers or payroll platforms.

  • #
    employers_connectedarray of strings

    Individual employers associated with the connected Items.

  • #
    external_metadataJSON

    Free-text field where additional context for the user can be added.
    — Can be any valid JSON, such as a string or object.

    Using external_id (see below) is recommended when the ability to filter users by an external value is needed.

  • #
    external_idstring

    Free-text field where additional context for the user can be added.
    — Can be any string of 100 characters or less.
    — Multiple users can have the same external_id.

    Often used to group users, or associate your internal ID's to users.
    — Can be attached to invites or shareable URLs.
    — Can be used as a query parameter when listing users. (Only exact matches are supported)
    — Can be used to search for specific users within the Connections section of Console.
    — Will appear on billing CSVs if associated with a user.

Example
1{
2  "id": "018051aa-f7a9-a0db-2f38-6cfa325e9d69",
3  "created_at": "2023-01-30T22:25:38.971210Z",
4  "items_connected": [
5    "item_123456789",
6    "item_987654321"
7  ],
8  "employers_connected": [
9    "Whole Goods",
10    "Bullseye"
11  ],
12  "external_metadata": {
13    "notes": "In stage 1 of loan approval.",
14    "category": "Summer Initiative"
15  },
16  "external_id": "July_Connection"
17}

#Create a user

post/v2/users

Creates a new user object.

Includes a new user token in the response.

Request body
  • #
    external_metadataJSON
    optional

    Any valid JSON.

  • #
    external_idstring
    optional

    Any string. Maximum 100 characters.

Example Request
1curl --request POST \
2     --url https://api.argyle.com/v2/users \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1{
2  "user_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWQiOiIxNCRhMTRkNS04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2NzgzNDExNDMsImZpZCI6ImIyYzY4YzUwLTc2MTQtNDAwNy1iMzNmLWZiMzlkMDFmMmM3MCIsImlhdCI6MTY3ODMzNzU0MywiaXNzIjoiYXJneWxlLWNvcmUtYXV0aC1kZXYiLCJqdGkiOiI3ZTU0ZTY1NS05YWN2LTRiZDctOWI3OC0xODMxMjVkYjM1MzMiLCJzdWIiOiIwMTg2YzRiNi04ZTgyLWQ5OWMtOGY4Mi1mNjMyMjgxMzk2ZTQiLCJ1c2VyX2lkIjoiMDE4NmM0YjYtOGU4Mi1kOTljLThmODItZjYzMjI4MTM5NmU0In0.q5bkZTFAohISOcjJDb2wSzKcHmwrOM4pp9imOVybaWk",
3  "id": "018051aa-f7a9-a0db-2f38-6cfa325e9d69"
4}

#Retrieve a user

get/v2/users/{id}

Retrieves a user object.

Path parameters
  • #
    idstring (uuid)
    required

    ID of the user object to be retrieved.

Example Request
1curl --request GET \
2     --url https://api.argyle.com/v2/users/{id} \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1{
2  "id": "018051aa-f7a9-a0db-2f38-6cfa325e9d69",
3  "created_at": "2023-03-09T04:54:35.170468Z",
4  "items_connected": [
5    "item_123456789",
6    "item_987654321"
7  ],
8  "employers_connected": [
9    "Whole Goods",
10    "Bullseye"
11  ],
12  "external_metadata": {},
13  "external_id": null
14}

#Update a user

patch/v2/users/{id}

Updates the external_metadata and/or external_id of a user object.

Path parameters
  • #
    idstring (uuid)
    required

    ID of the user object to be updated.

Request body
  • #
    external_metadataJSON
    optional

    Any valid JSON.

  • #
    external_idstring
    optional

    Any string. Maximum 100 characters.

Example Request
1curl --request PATCH \
2     --url https://api.argyle.com/v2/users/{id} \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json' \
5     --data '{"external_metadata": {}}'
Example Response
1{
2  "id": "018051aa-f7a9-a0db-2f38-6cfa325e9d69",
3  "created_at": "2023-03-09T04:54:35.170468Z",
4  "items_connected": [
5    "item_123456789",
6    "item_987654321"
7  ],
8  "employers_connected": [
9    "Whole Goods",
10    "Bullseye"
11  ],
12  "external_metadata": {
13    "notes": "Moved to stage 2 of loan approval.",
14    "category": "Summer Initiative"
15  },
16  "external_id": "July_Connection"
17}

#Delete a user

delete/v2/users/{id}

Deletes a user object.

Caution — Deleting a user object will also delete all accounts and resources associated with the user.

Path parameters
  • #
    idstring (uuid)
    required

    ID of the user object to be deleted.

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

#List all users

get/v2/users

Returns an array of all user objects.

Query parameters
  • #
    limitinteger
    optional

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

  • #
    external_idstring
    optional

    Filter users by external_id. Exact matches only.

Example Request
1curl --request GET \
2     --url https://api.argyle.com/v2/users?limit=2 \
3     --header 'accept: application/json' \
4     --header 'content-type: application/json'
Example Response
1[
2  {
3    "id": "018051aa-f7a9-a0db-2f38-6cfa325e9d69",
4    "created_at": "2023-01-30T22:25:38.971210Z",
5    "items_connected": [
6      "item_123456789",
7      "item_987654321"
8    ],
9    "employers_connected": [
10      "Whole Goods",
11      "Bullseye"
12    ],
13    "external_metadata": {
14      "notes": "In stage 3 of loan approval.",
15      "category": "Summer Initiative"
16    },
17    "external_id": "July Connection"
18  },
19  {
20    "id": "0186c5b8-8fa1-67b3-39af-14b3e18da8a7",
21    "created_at": "2023-01-30T23:25:38.971210Z",
22    "items_connected": [
23      "item_000000001",
24      "item_000000002"
25    ],
26    "employers_connected": [
27      "Half Bads",
28      "Triple"
29    ],
30    "external_metadata": {
31      "notes": "In stage 1 of loan approval.",
32      "category": "Summer Initiative"
33    },
34    "external_id": "August Connection"
35  }
36]
Updating Argyle status...
© 2024 Argyle Systems Inc.argyle.com