openapi: 3.0.0 info: title: Argyle API version: '2.0' description: RESTful API providing user-consented access to payroll and employment data including identities, paystubs, gigs, shifts, vehicles, ratings, payroll documents, and deposit destinations across thousands of employers and gig platforms. contact: name: Argyle Support url: https://docs.argyle.com/ x-api-id: argyle x-audience: public servers: - url: https://api.argyle.com description: Production - url: https://api-sandbox.argyle.com description: Sandbox security: - basicAuth: [] paths: /v2/accounts/{id}: get: summary: Retrieve an account description: Retrieves an account object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the account object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Account' example: id: 0187c66e-e7e5-811c-b006-2232f00f426a user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 employers: - Whole Goods item: item_123456789 source: thepayrollcompany created_at: '2023-01-30T12:53:22.561Z' updated_at: '2023-01-30T12:55:04.478Z' scanned_at: '2023-01-30T12:55:04.016Z' connection: status: connected error_code: null error_message: null updated_at: '2023-01-30T12:53:25.561Z' direct_deposit_switch: status: success error_code: null error_message: null updated_at: '2023-01-30T12:55:03.478Z' availability: shifts: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 94 available_from: '2020-04-11T12:53:27Z' available_to: '2023-01-25T00:00:00Z' gigs: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 217 available_from: '2020-04-11T12:53:27Z' available_to: '2023-01-25T00:00:00Z' paystubs: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 68 available_from: '2020-05-11T12:53:27Z' available_to: '2023-01-29T23:59:59Z' payroll_documents: status: synced updated_at: '2023-01-30T12:53:44.308912Z' identities: status: synced updated_at: '2023-01-30T12:53:44.028552Z' ratings: status: synced updated_at: '2023-01-30T12:55:03.359356Z' vehicles: status: synced updated_at: '2023-01-30T12:53:44.321951Z' deposit_destinations: status: synced updated_at: '2023-01-30T12:53:42.586391Z' user_forms: status: in_progress updated_at: '2023-01-30T12:53:42.586391Z' available_count: 0 files_count: 1 in_progress_count: 1 user_uploads: status: synced updated_at: '2023-01-30T12:54:41.621Z' files_count: 2 in_progress_count: 0 ongoing_refresh: status: enabled delete: summary: Delete an account description: 'Deletes an account object. **Caution** - Deleting an account object will delete all resources associated with the account, such as paystubs or uploaded documents. ' parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the account object to be deleted. responses: '204': description: '204 status code: No content.' /v2/accounts: get: summary: List all accounts description: Returns a paginated list of all account objects. parameters: - in: query name: user schema: type: string format: uuid description: Filter by user ID. - in: query name: item schema: type: string format: uuid description: Filter by Item ID. - in: query name: ongoing_refresh_status schema: type: string enum: - enabled - disabled - idle description: Filter by `status` of the `ongoing_refresh` object. - in: query name: limit schema: type: integer description: 'Number of account objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200.' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Account' example: next: https://api-sandbox.argyle.com/v2/accounts?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0185a8b8-60eb-80ca-7482-5f24504573f7 user: 0186c5b8-8fa1-67b3-39af-14b3e18da8a7 employers: - Half Bads item: item_000000001 source: payrollcorp created_at: '2023-01-30T18:25:13.491Z' updated_at: '2023-01-30T18:46:44.034Z' scanned_at: '2023-01-30T18:46:43.446Z' connection: status: connected error_code: null error_message: null updated_at: '2023-01-30T18:25:30.334956Z' direct_deposit_switch: status: error error_code: confirmation_timeout error_message: This user did not finish confirming the direct deposit switch. updated_at: '2023-01-30T18:35:31.961Z' availability: shifts: status: synced updated_at: '2023-01-30T18:46:43Z' available_count: 132 available_from: '2020-03-03T18:25:30Z' available_to: '2023-01-28T00:00:00Z' gigs: status: synced updated_at: '2023-01-30T18:46:43Z' available_count: 242 available_from: '2020-03-03T18:25:30Z' available_to: '2023-01-28T00:00:00Z' paystubs: status: synced updated_at: '2023-01-30T18:46:43Z' available_count: 40 available_from: '2020-03-03T18:25:30Z' available_to: '2023-01-02T00:00:00Z' payroll_documents: status: synced updated_at: '2023-01-30T18:45:35.228Z' identities: status: synced updated_at: '2023-01-30T18:45:34.960Z' ratings: status: synced updated_at: '2023-01-30T18:45:35.235Z' vehicles: status: synced updated_at: '2023-01-30T18:45:35.237Z' deposit_destinations: status: synced updated_at: '2023-01-30T18:25:31.438Z' user_forms: null user_uploads: null ongoing_refresh: status: enabled - id: 01856c65-43b6-8b5d-b32a-56b8fbda5c28 user: 0186c5b8-8fa1-67b3-39af-14b3e18da8a7 employers: [] item: item_000012271 source: doc_upload_item created_at: '2023-01-30T15:15:53.176Z' updated_at: '2023-01-30T15:16:12.042Z' scanned_at: null connection: status: connecting error_code: null error_message: null updated_at: '2023-01-30T15:16:14.695Z' direct_deposit_switch: status: idle error_code: null error_message: null updated_at: '2023-01-30T15:16:11.703Z' availability: shifts: null gigs: null paystubs: null payroll_documents: null identities: null ratings: null vehicles: null deposit_destinations: null user_forms: status: synced updated_at: '2023-01-30T15:16:12.012Z' available_count: 1 files_count: 3 in_progress_count: 0 user_uploads: null ongoing_refresh: status: idle /v2/accounts/{id}/disable-ongoing-refresh: post: summary: Disable account updates description: "Disables `ongoing_refresh` for an individual account.\n\nTo access\ \ this feature, reach out to our team for assistance.\n\n* Link will display\ \ the [ongoing\\_refresh\\_disabled](/api-reference/account-connection-errors#ongoingrefreshdisabled)\ \ account connection error when users return to view this account.\n* Changes\ \ the account's [`ongoing_refresh.status`](/api-reference/accounts#object-ongoing_refresh)\ \ value from `enabled` to `disabled` and causes the [`accounts.updated`](/api-reference/accounts-webhooks/updated)\ \ webhook to be sent.\n\n
\n\nAfter `ongoing_refresh` is disabled:\n\n\ * The specified account will no longer receive [data updates](/overview/ongoing-refresh).\n\ * If the user returns to Link and [reconnects the account](/workflows/reconnecting-accounts#reconnecting-disconnected-accounts):\n\ \ 1. The account will immediately be re-scanned and its data updated.\n\ \ 2. The account will be billed as a new account connection.\n 3. \ \ Ongoing refresh will be re-enabled for the account.\n" parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the account object. responses: '200': description: '200 status code: Request succeeded.' /v2/deposit-destinations/{id}: get: summary: Retrieve a deposit destination description: Retrieves a deposit destination object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the deposit destination object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/DepositDestination' example: id: 0176e1ea-60ca-c561-eb8e-6dcdb33b1b55 account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: Whole Goods destination_type: ach_deposit_account status: active allocation_type: amount currency: USD allocation_value: '325.70' method: Direct deposit ach_deposit_account: account_number: '123456780000' bank_name: NW Bank routing_number: '026010000' account_type: savings created_at: '2023-03-14T16:00:49.420Z' updated_at: '2023-03-14T16:00:49.420Z' metadata: {} /v2/deposit-destinations: get: summary: List all deposit destinations description: Returns a paginated list of all deposit destination objects. parameters: - in: query name: account schema: type: string format: uuid required: false description: Filter by account ID. - in: query name: user schema: type: string format: uuid required: false description: Filter by user ID. - in: query name: limit schema: type: integer required: false description: 'Number of deposit destination objects returned per page. Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/DepositDestination' example: next: https://api-sandbox.argyle.com/v2/deposit-destinations?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0185da22-3322-eeaf-57b2-a6527214e456 account: 0185a8b8-60eb-80ca-7482-5f24504573f7 employer: Half Bads destination_type: card status: active allocation_type: null currency: null allocation_value: null method: Instant payout card: card_number: '****5678' card_name: Visa is_platform_card: false created_at: '2023-03-13T19:53:49.090Z' updated_at: '2023-03-13T19:53:49.091Z' metadata: {} - id: 0185e091-cbe2-775c-bc32-7bc943cb4264 account: 0187e091-b47d-3cc6-a273-2b5e3cab83af employer: Bullseye destination_type: ach_deposit_account status: inactive allocation_type: amount currency: USD allocation_value: remainder method: Direct deposit ach_deposit_account: account_number: '757127245584' bank_name: SW Bank routing_number: 016012008 account_type: checking created_at: '2023-03-14T14:41:37.989Z' updated_at: '2023-03-14T14:41:37.989Z' metadata: {} /v2/employer-search: get: summary: List all employers description: Returns a paginated list of all Item objects, representing the most relevant search results. operationId: listEmployers parameters: - name: q in: query description: Free-text search filter. required: false schema: type: string - name: kind in: query description: Filter by `kind` value. required: false schema: type: string - name: mapping_status in: query description: 'Filter by `mapping_status` value. Multiple `mapping_status` values can also be searched at once using either method: 1. `/v2/items?mapping_status=verified,mapped` 2. `/v2/items?mapping_status=verified&mapping_status=mapped` ' required: false schema: type: string - name: status in: query description: 'Filter by `status` value. Multiple `status` values can also be searched at once using either method: 1. `/v2/items?status=healthy,issues` 2. `/v2/items?status=healthy&status=issues` Filtering by both `healthy` and `issues` will return all Items that currently support new payroll connections. ' required: false schema: type: string - name: limit in: query description: 'Number of Item objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200.' required: false schema: type: integer format: int32 minimum: 1 maximum: 200 - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Employer' example: next: https://api-sandbox.argyle.com/v2/employer-search?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: item_000000002 name: Bullseye logo_url: argyle.com/image-holdings kind: employer mapping_status: verified status: unavailable - id: item_000000003 name: Triple logo_url: argyle.com/image-holdings kind: platform mapping_status: mapped status: healthy /v2/employments: get: summary: List all employments description: Returns a paginated list of all employment objects. parameters: - in: query name: user schema: type: string format: uuid required: false description: Filter by user ID. - in: query name: account schema: type: string format: uuid required: false description: Filter by account ID. - in: query name: limit schema: type: integer description: 'Number of employment objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200.' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: A list of employment objects. content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Employment' example: next: https://api-sandbox.argyle.com/v2/employments?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0186a27d-e5c6-735a-a359-6315b34d544c user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 account: 0187c66e-e7e5-811c-b006-2232f00f426a created_at: '2023-01-30T12:53:24.561Z' employer: Whole Goods employment_status: active origin: retrieved - id: 0183d52a-d3b2-331d-c753-3662a20e352b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 account: 0183d52b-a0c3-599a-e901-3676a20a533f created_at: '2023-01-30T12:53:24.561Z' employer: Double Double employment_status: inactive origin: acquired - id: 0183d52a-d3b2-331d-c753-3662a20e352b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 account: 0175a40a-b3b4-622b-a339-8855c57b226e created_at: '2023-01-30T12:53:24.561Z' employer: Half Bads employment_status: inactive origin: retrieved - id: 0183d52a-d3b2-331d-c753-3662a20e352b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 account: 0175a40a-b3b4-622b-a339-8855c57b226e created_at: '2023-01-30T12:53:24.561Z' employer: Stardollars LLC employment_status: inactive origin: retrieved /v2/gigs/{id}: get: summary: Retrieve a gig description: Retrieves a gig object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the gig object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Gig' example: id: 0187dbfa-6f5e-a33a-af26-7e12ff408fea account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: GigAndGo created_at: '2023-03-08T08:31:37.037Z' updated_at: '2023-03-08T08:31:37.037Z' status: completed type: delivery task_count: 2 start_datetime: '2023-03-08T08:08:57Z' end_datetime: '2023-03-08T08:31:36Z' all_datetimes: request_at: '2023-03-08T08:08:57Z' accept_at: '2023-03-08T08:09:38Z' pickup_at: '2023-03-08T08:12:57Z' dropoff_at: '2023-03-08T08:31:36Z' cancel_at: null shift_start: null shift_end: null breaks: [] duration: 2659 timezone: America/New_York earning_type: work start_location: lat: '40.65932120164202' lng: '-73.8526246331782' formatted_address: 201 North W St, New York, NY 10014, US end_location: lat: '40.689177462234504' lng: '-73.89453884284752' formatted_address: 102 South E St, New York, NY 10002, US task_details: events: - order_id: null sequence: '1' type: accept name: null formatted_address: 201 North W St, New York, NY 10014, US lat: '40.65932120164202' lng: '-73.89453884284752' datetime: '2023-03-08T08:09:38Z' - order_id: '1' sequence: '2' type: pickup name: Healthy Snacks formatted_address: 150 East N St, New York, NY 10014, US lat: '40.673422892136178' lng: '-73.88931269893891' datetime: '2023-03-08T08:12:57Z' - order_id: '2' sequence: '3' type: pickup name: Gourmet Desserts formatted_address: 182 East N St, New York, NY 10014, US lat: '40.673523811763259' lng: '-73.86335212657626' datetime: '2023-03-08T08:12:57Z' - order_id: null sequence: '4' type: dropoff name: null formatted_address: 102 South E St, New York, NY 10002, US lat: '40.689177462234504' lng: '-73.89453884284752' datetime: '2023-03-08T08:31:36Z' orders: - order_id: '1' sequence: '1' income: currency: USD total_charge: '34.75' customer_price: '26.38' fees: '8.37' total: '19.96' pay: '22.28' tips: null bonus: '0.00' other: '-2.32' - order_id: '2' sequence: '2' income: currency: USD total_charge: '7.25' customer_price: '7.25' fees: null total: '4.30' pay: '4.30' tips: '0.00' bonus: '0.00' other: null distance: '1.80' distance_unit: miles metadata: income.other: name: 'Taxes: Withholding tax' value: '-15.32' circumstances: is_pool: false is_rush: false is_surge: true service_type: Comfort Ride position: null income: currency: USD total_charge: '42.00' customer_price: '33.68' fees: '8.37' total: '30.68' pay: '26.58' tips: '6.42' bonus: '0.00' other: '-2.32' income_rates: hour: '92.70' mile: '20.20' /v2/gigs: get: summary: List all gigs description: Returns a paginated list of all gig objects. parameters: - in: query name: account schema: type: string format: uuid required: false description: Filter by account ID. - in: query name: user schema: type: string format: uuid required: false description: Filter by user ID. - in: query name: from_start_datetime schema: type: string format: date-time required: false description: 'Filter by gigs with a `start_datetime` on or after this timestamp [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). ' - in: query name: to_start_datetime schema: type: string format: date-time required: false description: 'Filter by gigs with a `start_datetime` on or before this timestamp [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). ' - in: query name: limit schema: type: integer required: false description: 'Number of gig objects returned per page. Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Gig' example: next: https://api-sandbox.argyle.com/v2/gigs?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0187b43a-35fa-56e2-1a95-f7e4232a4b3a account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: GigAntic created_at: '2023-03-15T06:10:25.004Z' updated_at: '2023-03-15T06:10:25.004Z' status: completed type: rideshare task_count: 1 start_datetime: '2023-03-15T05:24:44Z' end_datetime: '2023-03-15T06:10:24Z' all_datetimes: request_at: '2023-03-15T05:24:44Z' accept_at: '2023-03-15T05:26:51Z' pickup_at: '2023-03-15T05:30:46Z' dropoff_at: '2023-03-15T06:10:24Z' cancel_at: null shift_start: null shift_end: null breaks: [] duration: 2740 timezone: America/New_York earning_type: work start_location: lat: '40.61236518213759' lng: '-73.58345445703922' formatted_address: 305 East Ave Apt. 980, New York, NY 10006, US end_location: lat: '40.693262037420084' lng: '-73.83205844061759' formatted_address: 503 Far West Ave Suite 970, New York, NY 10019, US task_details: events: [] orders: [] distance: '24.93' distance_unit: miles metadata: {} circumstances: is_pool: false is_rush: false is_surge: true service_type: GigAntic XL position: null income: currency: USD total_charge: '34.79' customer_price: '25.32' fees: '9.47' total: '25.32' pay: '25.32' tips: '0.00' bonus: '0.00' other: null income_rates: hour: '13.62' mile: '0.60' - id: 0187dbfa-6f5e-a33a-af26-7e12ff408fea account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: GigAndGo created_at: '2023-03-08T08:31:37.037Z' updated_at: '2023-03-08T08:31:37.037Z' status: completed type: delivery task_count: 2 start_datetime: '2023-03-08T08:08:57Z' end_datetime: '2023-03-08T08:31:36Z' all_datetimes: request_at: '2023-03-08T08:08:57Z' accept_at: '2023-03-08T08:09:38Z' pickup_at: '2023-03-08T08:12:57Z' dropoff_at: '2023-03-08T08:31:36Z' cancel_at: null shift_start: null shift_end: null breaks: [] duration: 2659 timezone: America/New_York earning_type: work start_location: lat: '40.65932120164202' lng: '-73.8526246331782' formatted_address: 201 North W St, New York, NY 10014, US end_location: lat: '40.689177462234504' lng: '-73.89453884284752' formatted_address: 102 South E St, New York, NY 10002, US task_details: events: - order_id: null sequence: '1' type: accept name: null formatted_address: 201 North W St, New York, NY 10014, US lat: '40.65932120164202' lng: '-73.89453884284752' datetime: '2023-03-08T08:09:38Z' - order_id: '1' sequence: '2' type: pickup name: Healthy Snacks formatted_address: 150 East N St, New York, NY 10014, US lat: '40.673422892136178' lng: '-73.88931269893891' datetime: '2023-03-08T08:12:57Z' - order_id: '2' sequence: '3' type: pickup name: Gourmet Desserts formatted_address: 182 East N St, New York, NY 10014, US lat: '40.673523811763259' lng: '-73.86335212657626' datetime: '2023-03-08T08:12:57Z' - order_id: null sequence: '4' type: dropoff name: null formatted_address: 102 South E St, New York, NY 10002, US lat: '40.689177462234504' lng: '-73.89453884284752' datetime: '2023-03-08T08:31:36Z' orders: - order_id: '1' sequence: '1' income: currency: USD total_charge: '34.75' customer_price: '26.38' fees: '8.37' total: '19.96' pay: '22.28' tips: null bonus: '0.00' other: '-2.32' - order_id: '2' sequence: '2' income: currency: USD total_charge: '7.25' customer_price: '7.25' fees: null total: '4.30' pay: '4.30' tips: '0.00' bonus: '0.00' other: null distance: '1.80' distance_unit: miles metadata: income.other: name: 'Taxes: Withholding tax' value: '-15.32' circumstances: is_pool: false is_rush: false is_surge: true service_type: Comfort Ride position: null income: currency: USD total_charge: '42.00' customer_price: '33.68' fees: '8.37' total: '30.68' pay: '26.58' tips: '6.42' bonus: '0.00' other: '-2.32' income_rates: hour: '92.70' mile: '20.20' /v2/identities/{id}: get: summary: Retrieve an identity description: Retrieves an identity object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the identity object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Identity' example: id: 0153b145-7ab9-bea2-cc16-a8b71328942f account: 0187c66e-e7e5-811c-b006-2232f00f426a address: city: New York line1: 852 North W St line2: Apt 221 state: NY country: US postal_code: '10014' first_name: Sarah last_name: Longfield full_name: Sarah Longfield birth_date: '1980-10-30' email: '[email protected]' phone_number: '+12125555555' picture_url: www.argyle.com/logofoldername employment_status: active employment_type: full-time job_title: Store Manager ssn: 522-09-1191 marital_status: Married filing jointly gender: Female original_hire_date: '2019-01-03' hire_date: '2020-04-08' termination_date: null termination_reason: null employer: Whole Goods employment: 0183d52a-d3b2-331d-c753-3662a20e352b base_pay: amount: '58024.50' period: annual currency: USD pay_cycle: semimonthly platform_ids: employee_id: OB238HDW5 position_id: 6ELL4O7PM platform_user_id: JLH7B9V6O6YGN9O7 created_at: '2023-01-30T12:53:24.561594Z' updated_at: '2023-01-30T12:55:06.478699Z' metadata: {} /v2/identities: get: summary: List all identities description: Returns a paginated list of all identity objects. parameters: - in: query name: account schema: type: string format: uuid description: Filter by account ID. - in: query name: user schema: type: string format: uuid description: Filter by user ID. - in: query name: employment schema: type: string format: uuid description: Filter by employment ID. - in: query name: limit schema: type: integer description: 'Number of identity objects returned per page. Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Identity' example: next: https://api-sandbox.argyle.com/v2/identities?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0186da0b-6569-0ea0-eb50-b64e97cb29e9 account: 0186da0b-9923-0d27-4b05-6ce3b7b07b89 address: city: San Diego line1: 54 N Shea Ridge line2: null state: CA country: US postal_code: '92092' first_name: Joe last_name: Burnam full_name: Joe Burnam birth_date: '1978-08-29' email: '[email protected]' phone_number: '+12123338708' picture_url: www.argyle.com/logofoldername employment_status: active employment_type: part-time job_title: Hourly staff ssn: 301-06-1225 marital_status: Married filing jointly gender: Male original_hire_date: '2022-05-18' hire_date: '2022-05-18' termination_date: null termination_reason: null employer: Double Double employment: 0183d52a-d3b2-331d-c753-3662a20e352b base_pay: amount: '18.08' period: hourly currency: USD pay_cycle: monthly platform_ids: employee_id: 32ULINA8 position_id: 67LKUKA8 platform_user_id: '332512349952' created_at: '2023-01-31T12:13:24.561594Z' updated_at: '2023-01-31T12:45:06.478699Z' metadata: {} - id: 0353c142-4ab9-baa1-cb44-c8b51225877e account: 0185a8b8-60eb-80ca-7482-5f24504573f7 address: city: Oklahoma City line1: 312 Main Ave line2: null state: OK country: US postal_code: '73008' first_name: Bob last_name: Jones full_name: Bob Jones birth_date: '1983-07-02' email: '[email protected]' phone_number: '+13228675309' picture_url: www.argyle.com/logofoldername employment_status: active employment_type: contractor job_title: Data analyst ssn: 507-18-3058 marital_status: Single gender: Female original_hire_date: '2019-01-03' hire_date: '2021-04-08' termination_date: null termination_reason: null employer: Half Bads employment: 0183d52a-d3b2-331d-c753-3662a20e352b base_pay: amount: '39.72' period: hourly currency: USD pay_cycle: biweekly platform_ids: employee_id: bd823Lk position_id: ab3EkU2 platform_user_id: '832355' created_at: '2023-01-30T13:53:24.561594Z' updated_at: '2023-01-30T13:55:06.478699Z' metadata: {} /v2/invites: post: summary: Send an invite description: 'Immediately sends an invite via email, SMS, or both. Returns an invite object in the response. ' requestBody: required: true content: application/json: schema: allOf: - $ref: '#/components/schemas/SendInviteRequest' required: - first_name - last_name examples: default: value: first_name: Sarah last_name: Longfield phone_number: 212-555-5555 email: sarah@email.com responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/InviteObject' example: id: 0424137bc-edc5-35de-c1b5-1c3cddb4b227 user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 user_token: bcJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWEiOiIxNDRhMTRkNS04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2ODc3OTMzODAsImZpZCI6IjUyYWM3ZFFiLTI1MzAtNGYyNy04NTZlLTkwOTk1ZDA4NWJkMCIsImlhdCI6MTY4Nzc4OTc4MCwiaXNzIjoiYXJneWxlLWNvcmUtYXV1aC1kZXYiLCJqdGkiOiI2ZWJiOGIxMS0wYzFjLTRiNjEtYmI5NS04ZGQ0YzA0OGQwNzUiLCJzdWIiOiIwMTg4ZjgxYy0zZTFkLTRlZDEtMjEyYy02NmE3YzE4YzVjYzMiLCJ1c2VyX2lkIjoiMDE4OGY4MWMtM2UxZC00ZWQxLTIxMmMtNjZhN2MxN2M1Y2MzIn0.TNiZojOiiXtPVamyCDjz4f2GwR4TA8x6JR3RwjTECjY email: sarah@email.com phone_number: 212-555-5555 full_name: Sarah Longfield first_name: Sarah last_name: Longfield revoked_at: null status: sent group_id: d8a07e5b-13a3-11ef-af7e-c7eb00762562 url: https://verify.argyle.com/connect/0424137bc-edc5-35de-c1b5-1c3cddb4b227 created_at: '2023-03-09T23:57:05.756Z' updated_at: '2023-03-09T23:57:05.756Z' invited_at: '2023-03-09T23:57:05.756Z' flow_id: 8DRRA4XC flow_items: - item_000000001 - item_000000002 reply_to: - person1@email.com - person2@email.com deliveries: - id: d7c85e44-9729-11f0-b297-f3718e19503e method: email status: sent sent_at: '2023-03-09T23:57:24.000Z' updated_at: '2023-03-09T23:57:24.000Z' invite_template_id: null get: summary: List all invites description: Returns an object containing all invite objects. parameters: - in: query name: status schema: type: string description: 'Filter invites by [status](#object-status). Multiple status values can be searched at once using either method: 1. `/v2/invites?status=sent,initiated` 2. `/v2/invites?status=sent&status=initiated` ' - in: query name: reply_to schema: type: string description: Filter invites for a specific [`reply_to`](#object-reply_to) email. - in: query name: limit schema: type: integer description: 'Number of invite objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200.' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/InviteObject' example: next: https://api-sandbox.argyle.com/v2/invites?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0424137bc-edc5-35de-c1b5-1c3cddb4b227 user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 user_token: null email: sarah@email.com phone_number: 212-555-5555 full_name: Sarah Longfield first_name: Sarah last_name: Longfield revoked_at: null status: completed group_id: d8a07e5b-13a3-11ef-af7e-c7eb00762562 url: https://verify.argyle.com/connect/0424137bc-edc5-35de-c1b5-1c3cddb4b227 created_at: '2023-03-09T23:57:05.756Z' updated_at: '2023-03-09T23:57:05.756Z' invited_at: '2023-03-09T23:57:05.756Z' flow_id: 8DRRA4XC flow_items: - item_000000001 - item_000000002 reply_to: - person1@email.com - person2@email.com deliveries: - id: d7c85e44-9729-11f0-b297-f3718e19503e method: email status: opened sent_at: '2023-03-09T23:57:24.000Z' updated_at: '2023-03-09T23:57:24.000Z' invite_template_id: null - id: 0186c5b8-8fa1-67b3-39af-14b3e18da8a7 user: f3041cb5-bf31-21cb-aa05-df294c161fd9 user_token: null email: bob@email.com phone_number: 212-867-5309 full_name: Bob Jones first_name: Bob last_name: Jones revoked_at: null status: initiated group_id: null url: https://verify.argyle.com/connect/f3041cb5-bf31-21cb-aa05-df294c161fd9 created_at: '2023-03-10T01:22:36.432Z' updated_at: '2023-03-10T01:22:36.432Z' invited_at: '2023-03-10T01:22:36.432Z' flow_id: R23CELUZ flow_items: [] reply_to: [] deliveries: - id: d7c85e44-9729-11f0-b297-f3718e19503e method: email status: opened sent_at: '2023-03-10T01:22:37.432Z' updated_at: '2023-03-12T01:22:37.432Z' invite_template_id: null /v2/invites/{id}: get: summary: Retrieve an invite description: Retrieves an invite object. parameters: - in: path name: id required: true schema: type: string format: uuid description: ID of the invite to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/InviteObject' example: id: 0424137bc-edc5-35de-c1b5-1c3cddb4b227 user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 user_token: bcJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWEiOiIxNDRhMTRkNS04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2ODc3OTMzODAsImZpZCI6IjUyYWM3ZFFiLTI1MzAtNGYyNy04NTZlLTkwOTk1ZDA4NWJkMCIsImlhdCI6MTY4Nzc4OTc4MCwiaXNzIjoiYXJneWxlLWNvcmUtYXV1aC1kZXYiLCJqdGkiOiI2ZWJiOGIxMS0wYzFjLTRiNjEtYmI5NS04ZGQ0YzA0OGQwNzUiLCJzdWIiOiIwMTg4ZjgxYy0zZTFkLTRlZDEtMjEyYy02NmE3YzE4YzVjYzMiLCJ1c2VyX2lkIjoiMDE4OGY4MWMtM2UxZC00ZWQxLTIxMmMtNjZhN2MxN2M1Y2MzIn0.TNiZojOiiXtPVamyCDjz4f2GwR4TA8x6JR3RwjTECjY email: sarah@email.com phone_number: 212-555-5555 full_name: Sarah Longfield first_name: Sarah last_name: Longfield revoked_at: null status: sent group_id: d8a07e5b-13a3-11ef-af7e-c7eb00762562 url: https://verify.argyle.com/connect/0424137bc-edc5-35de-c1b5-1c3cddb4b227 created_at: '2023-03-09T23:57:05.756Z' updated_at: '2023-03-09T23:57:05.756Z' invited_at: '2023-03-09T23:57:05.756Z' flow_id: 8DRRA4XC flow_items: - item_000000001 - item_000000002 reply_to: - person1@email.com - person2@email.com deliveries: - id: d7c85e44-9729-11f0-b297-f3718e19503e method: email status: sent sent_at: '2023-03-09T23:57:24.000Z' updated_at: '2023-03-09T03:24:58.000Z' invite_template_id: null post: summary: Re-send an invite description: 'Re-sends a previously sent invite. Updates the `updated_at` and `invited_at` time. ' parameters: - in: path name: id required: true schema: type: string format: uuid description: ID of the invite to be re-sent. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/InviteObject' example: id: 0424137bc-edc5-35de-c1b5-1c3cddb4b227 user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 user_token: bcJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWEiOiIxNDRhMTRkNS04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2ODc3OTMzODAsImZpZCI6IjUyYWM3ZFFiLTI1MzAtNGYyNy04NTZlLTkwOTk1ZDA4NWJkMCIsImlhdCI6MTY4Nzc4OTc4MCwiaXNzIjoiYXJneWxlLWNvcmUtYXV1aC1kZXYiLCJqdGkiOiI2ZWJiOGIxMS0wYzFjLTRiNjEtYmI5NS04ZGQ0YzA0OGQwNzUiLCJzdWIiOiIwMTg4ZjgxYy0zZTFkLTRlZDEtMjEyYy02NmE3YzE4YzVjYzMiLCJ1c2VyX2lkIjoiMDE4OGY4MWMtM2UxZC00ZWQxLTIxMmMtNjZhN2MxN2M1Y2MzIn0.TNiZojOiiXtPVamyCDjz4f2GwR4TA8x6JR3RwjTECjY email: sarah@email.com phone_number: 212-555-5555 full_name: Sarah Longfield first_name: Sarah last_name: Longfield revoked_at: null status: sent group_id: d8a07e5b-13a3-11ef-af7e-c7eb00762562 url: https://verify.argyle.com/connect/0424137bc-edc5-35de-c1b5-1c3cddb4b227 created_at: '2023-03-09T23:57:05.756Z' updated_at: '2023-03-09T23:57:05.756Z' invited_at: '2023-03-09T23:57:05.756Z' flow_id: 8DRRA4XC flow_items: - item_000000001 - item_000000002 reply_to: - person1@email.com - person2@email.com deliveries: - id: d7c85e44-9729-11f0-b297-f3718e19503e method: email status: sent sent_at: '2023-03-11T05:23:12.000Z' updated_at: '2023-03-11T05:23:12.000Z' - id: d7c85e44-9729-11f0-b297-f3718e19503e method: email status: sent sent_at: '2023-03-09T23:57:24.000Z' updated_at: '2023-03-09T23:57:24.000Z' invite_template_id: null /v2/invites/{id}/revoke: post: summary: Revoke an invite description: 'Invalidates a previously sent invite. If a user clicks a revoked invite URL, the landing page will notify the user the invite has expired. ' parameters: - in: path name: id required: true schema: type: string format: uuid description: ID of the invite to be revoked. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/InviteObject' example: id: 0424137bc-edc5-35de-c1b5-1c3cddb4b227 user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 user_token: bcJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWEiOiIxNDRhMTRkNS04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2ODc3OTMzODAsImZpZCI6IjUyYWM3ZFFiLTI1MzAtNGYyNy04NTZlLTkwOTk1ZDA4NWJkMCIsImlhdCI6MTY4Nzc4OTc4MCwiaXNzIjoiYXJneWxlLWNvcmUtYXV1aC1kZXYiLCJqdGkiOiI2ZWJiOGIxMS0wYzFjLTRiNjEtYmI5NS04ZGQ0YzA0OGQwNzUiLCJzdWIiOiIwMTg4ZjgxYy0zZTFkLTRlZDEtMjEyYy02NmE3YzE4YzVjYzMiLCJ1c2VyX2lkIjoiMDE4OGY4MWMtM2UxZC00ZWQxLTIxMmMtNjZhN2MxN2M1Y2MzIn0.TNiZojOiiXtPVamyCDjz4f2GwR4TA8x6JR3RwjTECjY email: sarah@email.com phone_number: 212-555-5555 full_name: Sarah Longfield first_name: Sarah last_name: Longfield revoked_at: null status: sent group_id: d8a07e5b-13a3-11ef-af7e-c7eb00762562 url: https://verify.argyle.com/connect/0424137bc-edc5-35de-c1b5-1c3cddb4b227 created_at: '2023-03-09T23:57:05.756Z' updated_at: '2023-03-09T23:57:05.756Z' invited_at: '2023-03-09T23:57:05.756Z' flow_id: 8DRRA4XC flow_items: - item_000000001 - item_000000002 reply_to: - person1@email.com - person2@email.com deliveries: - id: d7c85e44-9729-11f0-b297-f3718e19503e method: email status: sent sent_at: '2023-03-09T23:57:24.000Z' updated_at: '2023-03-09T23:57:24.000Z' invite_template_id: null /v2/item-filters: post: summary: Create an Item filter description: "Filters are applied to properties of the `field_coverage` object\ \ of [Items](/api-reference/items#object) using the comparison operators below.\ \ You can also filter Items by their `status` property using the `eq` operator.\n\ \nThe name and ID of the new Item filter are returned in the response, which\ \ can be used as a query parameter when [listing Items](/api-reference/items#list).\n\ \n## Comparison operators\n\n`eq` — equals \n`gt` — greater than \n`gte`\ \ — greater than or equal to \n`lt` — less than \n`lte` — less than or equal\ \ to\n" requestBody: required: true content: application/json: example: name: Key paystub fields supported filters: status: eq: healthy field_coverage: paystubs: gross_pay: supported: eq: true paystub_date: supported: eq: true schema: type: object properties: name: type: string description: Name for the Item filter. filters: type: object description: The set of filters, which can be applied when [listing Items](/api-reference/items#list). required: - name responses: '200': description: '' content: application/json: schema: type: object properties: id: type: string description: The ID of the item filter. example: 087394d4-83b5-4722-8c5e-0235362c12f5 name: type: string description: The name of the item filter. example: Key paystub fields supported get: summary: List all Item filters description: Returns a paginated list of all Item filters. parameters: - name: limit in: query description: 'Number of Item filters returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' schema: type: integer - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: type: object properties: name: type: string description: The name of the item filter. example: Candidate for new car loan fields supported filters: type: object description: The filters applied to this item filter. example: - name: Candidate for new car loan fields supported filters: field_coverage: gigs: distance: supported: true vehicles: year: supported: true - name: Key paystub fields supported filters: status: eq: healthy field_coverage: paystubs: gross_pay: supported: eq: true paystub_date: supported: eq: true /v2/item-filters/{id}: get: summary: Retrieve an Item filter description: Retrieves an Item filter. parameters: - name: id in: path description: ID of the Item filter to be retrieved. required: true schema: type: string format: uuid responses: '200': description: '' content: application/json: schema: type: object properties: id: type: string description: The ID of the item filter. example: 087394d4-83b5-4722-8c5e-0235362c12f5 name: type: string description: The name of the item filter. example: Key paystub fields supported filters: type: object description: The filters applied to this item filter. example: status: eq: healthy field_coverage: paystubs: gross_pay: supported: eq: true paystub_date: supported: eq: true put: summary: Replace an Item filter description: Replaces the filters of an Item filter with a new set of filters. parameters: - name: id in: path description: ID of the Item filter whose filters are to be replaced. required: true schema: type: string format: uuid requestBody: required: true content: application/json: example: name: Key paystub fields supported filters: status: eq: healthy field_coverage: paystubs: gross_pay: supported: eq: true paystub_date: supported: eq: true schema: type: object properties: name: type: string description: 'Name for the revised Item filter. The ID of the Item filter does not change after the replacement filters are substituted. ' filters: type: object description: The replacement set of filters. required: - name responses: '200': description: '' content: application/json: schema: type: object properties: id: type: string description: The ID of the item filter. example: 087394d4-83b5-4722-8c5e-0235362c12f5 name: type: string description: The name of the item filter. example: Key paystub fields supported delete: summary: Delete an Item filter description: Deletes an Item filter. parameters: - name: id in: path description: ID of the Item filter to be deleted. required: true schema: type: string format: uuid responses: '204': description: '204 status code: No content.' /v2/items/{id}: get: summary: Retrieve an Item description: Retrieves an Item object. parameters: - in: path name: id schema: type: string required: true description: 'ID of the Item. ID format — `item_123456789` ' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Item' example: id: item_000000001 name: Whole Goods kind: employer known_limitations: First 5 digits of SSN obfuscated. status: healthy status_details: null logo_url: argyle.com/image-holdings is_grouping: false mapping_status: verified features: data_retrieval: refresh_frequency: 5h field_coverage: identities: first_name: supported: true last_name: supported: true '...': supported: true paystubs: hours_ytd: supported: false paystub_period: start_date: supported: true end_date: supported: true '...': supported: true payroll_documents: '...': supported: true deposit_destinations: '...': supported: true shifts: '...': supported: true gigs: '...': supported: true vehicles: '...': supported: true ratings: '...': supported: true direct_deposit_switch: card: supported: true max_allocations: '3' deposit_account: types: - ach_deposit_account supported: true max_allocations: '2' amount_allocation: false percent_allocation: true amount_precision: null percent_precision: '0.01' /v2/items: get: summary: List all Items description: Returns a paginated list of all Item objects. parameters: - in: query name: q schema: type: string description: 'Free-text search filter. For best results, use the payroll platform or employer''s full name. ' - in: query name: id schema: type: string description: 'Filter by Item ID. Multiple Item IDs can also be searched at once using either method: 1. `/v2/items?id=item_000000001,item_000000002` 2. `/v2/items?id=item_000000001&id=item_000000002` ' - in: query name: kind schema: type: string description: Filter by `kind` value. - in: query name: status schema: type: string description: 'Filter by `status` value. Multiple `status` values can also be searched at once using either method: 1. `/v2/items?status=healthy,issues` 2. `/v2/items?status=healthy&status=issues` Filtering by both `healthy` and `issues` will return all Items that currently support new payroll connections. ' - in: query name: mapping_status schema: type: string description: 'Filter by `mapping_status` value. Multiple `mapping_status` values can also be searched at once using either method: 1. `/v2/items?mapping_status=verified,mapped` 2. `/v2/items?mapping_status=verified&mapping_status=mapped` ' - in: query name: min_matching_score schema: type: number description: 'Only returns items with a [matching_score](/api-reference/items#object-matching_score) greater than or equal to this value. `min_matching_score` should be used together with the `q` "free-text search" query parameter. ' - in: query name: filter_set schema: type: string format: uuid description: Filter by Item filter ID. - in: query name: limit schema: type: integer description: 'Number of Item objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Item' example: next: https://api-sandbox.argyle.com/v2/items?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: item_000000002 name: Bullseye kind: employer known_limitations: null status: unavailable status_details: The Item is down due to scheduled maintenance but should be back shortly. mapping_status: verified logo_url: argyle.com/image-holdings is_grouping: false matching_score: '1.00' - id: item_000000003 name: Triple kind: platform known_limitations: null status: healthy status_details: null mapping_status: mapped logo_url: argyle.com/image-holdings is_grouping: false matching_score: '0.63' /v2/item-migrations: post: summary: Migrate a Link item ID description: 'Returns the Item ID''s that correspond to a provided list of Link item ID''s. - Link item ID''s were used in Link 4 initializations. - Item ID''s are used in [Link 5 initializations](/link/initialization). Item ID''s use the convention: "item_[9 digits]" - `"item_123456789"` for example. ' requestBody: required: true content: application/json: schema: type: object properties: link_items: type: array description: Array of Link item ID's. items: type: string required: - link_items example: link_items: - GigAndGo - GigDrive - GigAntic responses: '200': description: '' content: application/json: schema: type: object description: 'Object keyed by Link item ID''s. Each key maps to an object containing the corresponding Item ID. ' example: GigAndGo: id: item_000000003 GigDrive: id: item_000000042 GigAntic: id: item_000000819 /v2/open-banking/connect: post: summary: Create a Connect URL description: Creates a new Connect URL for the specified user. requestBody: required: true content: application/json: schema: type: object properties: user: type: string format: uuid description: ID of the user object. webhook: type: string format: uri description: Webhook URL to receive Connect Events. webhook_data: type: object description: Optional data added to Connect Events webhook payloads. experience: type: string description: 'Experience ID that customizes the bank connection experience. If an `experience` value is not provided, a default experience configured by the Argyle team will be applied. ' single_use_url: type: boolean description: If true, the Connect URL expires after the session completes. redirect_url: type: string format: uri description: Redirect users after they complete the session. required: - user - webhook example: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 webhook: https://your-webhook-backend.com responses: '200': description: '' content: application/json: schema: type: object properties: open_banking_link: type: string description: Connect URL for the user. example: open_banking_link: https://connect_url_link.com /v2/open-banking/reports/{type}: post: summary: Generate a banking report description: Generates a new banking report and returns a report object. parameters: - in: path name: type required: true schema: type: string enum: - voa - voi - voai description: The type of report to generate. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/BankingReportRequest' example: user: 01975b3b-5ba6-3ec1-2148-f595b6d92614 webhook: https://your-webhook-backend.com bank_accounts: - '8057637863' from_date: '1970-01-19T17:30:50Z' report_custom_fields: - label: loanID value: '12345' shown: true income_stream_confidence_minimum: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/BankingReport' example: id: cde25bb1-5cf4-4544-9df8-04212a781e1b user: 01975b3b-5ba6-3ec1-2148-f595b6d92614 reference_id: cde25bb1-5cf4-4544-9df8-04212a781e1b generated_at: '2025-06-10T20:39:35.000Z' created_at: '2025-06-10T20:39:35.000Z' type: voai status: generating file_url: www.argyle.com/storagename/pdf json_url: www.argyle.com/storagename/json accounts: [] last_synced_at: null external_id: null source: open-banking metadata: origin_report_id: 5u6fx59dnw4b bank_accounts_requested: - '8057637863' from_date: '1970-01-19T17:30:50.000Z' report_custom_fields: - label: loanID value: '12345' shown: true income_stream_confidence_minimum: 50 /v2/open-banking/bank-accounts/{bank_account_id}: get: summary: Retrieve a bank account description: Retrieves a bank account. parameters: - in: path name: bank_account_id required: true schema: type: string description: ID of the bank account. - in: query name: user required: true schema: type: string format: uuid description: ID of the user. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/OpenBankingBankAccount' example: id: '8057637863' user: 01975b3b-5ba6-3ec1-2148-f595b6d92614 account_number_display: '2203' name: Savings type: savings aggregation_status_code: 0 status: active institution: '102168' aggregation_success_date: '2026-06-04T16:57:26.000Z' aggregation_attempt_date: '2026-06-04T16:57:26.000Z' created_date: '2026-06-04T16:57:17.000Z' currency: USD institution_login: 8029158291 display_position: 1 parent_bank_account: null linked_account_date: '2026-06-04T16:57:22.000Z' error_code: null error_message: null real_account_number_last4: '2203' balance: 22327.3 balance_date: '2026-06-04T16:57:26.000Z' last_updated_date: '2026-06-04T16:57:22.000Z' market_segment: personal last_transaction_date: '2026-06-04T16:57:23.000Z' oldest_transaction_date: '2024-06-08T12:00:00.000Z' /v2/open-banking/bank-accounts: get: summary: List all bank accounts description: 'Returns a paginated list of the user''s bank accounts. Each result is a bank account object with two bank connection error fields: - `error_code` - Bank connection error code. Returned when `aggregation_status_code` indicates an error; otherwise `null`. - `error_message` - Bank connection error message. Returned when `aggregation_status_code` indicates an error; otherwise `null`. ' parameters: - in: query name: user required: true schema: type: string format: uuid description: ID of the user. - in: query name: limit schema: type: integer description: 'Number of bank account objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200.' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: type: object additionalProperties: true properties: id: type: string description: ID of the bank account. user: type: string format: uuid description: ID of the user associated with the bank account. account_number_display: type: string description: Display account identifier. name: type: string description: Account name. type: type: string description: Bank account type. enum: - checking - savings - cd - moneyMarket - creditCard - lineOfCredit - investment - investmentTaxDeferred - employeeStockPurchasePlan - ira - 401k - roth - 403b - 529plan - rollover - ugma - utma - keogh - 457plan - 401a - brokerageAccount - educationSavings - healthSavingsAccount - pension - profitSharingPlan - roth401k - sepIRA - simpleIRA - thriftSavingsPlan - variableAnnuity - cryptocurrency - mortgage - loan - studentLoan - studentLoanGroup - studentLoanAccount aggregation_status_code: type: integer description: 'Status code of the most recent aggregation attempt. See [Aggregation status codes](/api-reference/bank-accounts#aggregation-status-codes). ' status: type: string description: Bank account status. enum: - pending - active institution: type: string description: ID of the financial institution. aggregation_success_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the last successful aggregation. aggregation_attempt_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the last aggregation attempt. created_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) for when the bank account was created. currency: type: string description: Currency code. institution_login: type: integer description: ID of the institution login. display_position: type: integer description: Display position of the account at the financial institution. parent_bank_account: type: string description: ID of the parent bank account. linked_account_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) for when the account was linked. error_code: type: string description: Bank connection error code. error_message: type: string description: Bank connection error message. real_account_number_last4: type: string description: Last four digits of the account number. balance: type: number description: Account balance amount. balance_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) for when the balance was recorded. last_updated_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) for when the account was last updated. market_segment: type: string enum: - personal - business description: Indicates whether the account is personal or business. last_transaction_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the latest transaction. oldest_transaction_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the oldest transaction. example: results: - id: '8057637863' user: 01975b3b-5ba6-3ec1-2148-f595b6d92614 account_number_display: '2203' name: Savings type: savings aggregation_status_code: 0 status: active institution: '102168' aggregation_success_date: '2026-06-04T16:57:26.000Z' aggregation_attempt_date: '2026-06-04T16:57:26.000Z' created_date: '2026-06-04T16:57:17.000Z' currency: USD institution_login: 8029158291 display_position: 1 parent_bank_account: null linked_account_date: '2026-06-04T16:57:22.000Z' error_code: null error_message: null real_account_number_last4: '2203' balance: 22327.3 balance_date: '2026-06-04T16:57:26.000Z' last_updated_date: '2026-06-04T16:57:22.000Z' market_segment: personal last_transaction_date: '2026-06-04T16:57:23.000Z' oldest_transaction_date: '2024-06-08T12:00:00.000Z' - id: '8057637864' user: 01975b3b-5ba6-3ec1-2148-f595b6d92614 account_number_display: '1111' name: Checking type: checking aggregation_status_code: 0 status: active institution: '102168' aggregation_success_date: '2026-06-04T16:57:27.000Z' aggregation_attempt_date: '2026-06-04T16:57:27.000Z' created_date: '2026-06-04T16:57:17.000Z' currency: USD institution_login: 8029158291 display_position: 2 parent_bank_account: null linked_account_date: '2026-06-04T16:57:22.000Z' error_code: null error_message: null real_account_number_last4: '1111' balance: 9357.24 balance_date: '2026-06-04T16:57:27.000Z' last_updated_date: '2026-06-04T16:57:22.000Z' market_segment: personal last_transaction_date: '2026-06-04T16:57:25.000Z' oldest_transaction_date: '2024-06-08T12:00:00.000Z' next: https://api-sandbox.argyle.com/v2/open-banking/bank-accounts?cursor=ZXhhbXBsZV9jdXJzb3I previous: null /v2/open-banking/institutions/{institution_id}: get: summary: Retrieve an institution description: Retrieves a financial institution. parameters: - in: path name: institution_id required: true schema: type: string description: ID of the financial institution. responses: '200': description: '' content: application/json: schema: type: object example: id: 10 name: Discover Card (All Account Types) trans_agg: true ach: true state_agg: true voi: true voa: true aha: false avail_balance: true account_owner: true student_loan_data: false loan_payment_details: false account_type_description: Credit Cards/Accounts phone: 1-800-DISCOVER url_home_app: www.discovercard.com url_logon_app: https://www.discover.com/login/ oauth_enabled: false url_forgot_password: https://bank.discover.com/bankac/loginreg/loadloginassist?Aff=Bank url_online_registration: '' special_text: Please enter your Discover Card personalized User ID and Password required to login. time_zone: null special_instructions: [] special_instutions_title: null address: city: Wilmington state: DE country: USA postal_code: '19886' address_line1: '' address_line2: '' currency: USD email: https://customerservice.novusnet.com/EMS/html/usemsform.html status: online new_institution: 0 branding: logo: https://prod-carpintero-branding.s3.us-west-2.amazonaws.com/10/logo.svg alternate_logo: https://prod-carpintero-branding.s3.us-west-2.amazonaws.com/10/alternateLogo.svg icon: https://prod-carpintero-branding.s3.us-west-2.amazonaws.com/10/icon.svg primary_color: '#115892' tile: https://prod-carpintero-branding.s3.us-west-2.amazonaws.com/10/tile.svg oauth_institution: 0 class: creditCards /v2/open-banking/institutions: get: summary: List all institutions description: Returns a paginated list of supported financial institutions. parameters: - in: query name: search required: false schema: type: string description: Search term (financial institution name). - in: query name: type required: false schema: type: string enum: - voa - voi description: 'Report type eligibility. Possible values: - `voa` - Verification of Assets - `voi` - Verification of Income If `voa` is `true` but `voi` is `false`, VOAI reports contain only asset data. If `voi` is `true` but `voa` is `false`, VOAI reports contain only income data. ' - in: query name: limit required: false schema: type: integer description: Number of institutions per page. - in: query name: start required: false schema: type: integer description: Index of page results to return. - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: type: object example: found: 8263 displaying: 25 more_available: true requested_date: '2025-06-10T17:39:43.000Z' institutions: - id: 10 rssd: 0 name: Discover Card (All Account Types) trans_agg: true ach: true state_agg: true voi: true voa: true aha: false avail_balance: true account_owner: true student_loan_data: false loan_payment_details: false child_institutions: [] - id: 12 rssd: 0 name: E*TRADE trans_agg: true ach: true state_agg: false voi: true voa: true aha: false avail_balance: true account_owner: true student_loan_data: false loan_payment_details: false child_institutions: [] - id: 18 rssd: 0 name: SouthTrust trans_agg: true ach: false state_agg: false voi: true voa: true aha: false avail_balance: false account_owner: true student_loan_data: false loan_payment_details: false child_institutions: [] - id: 23 rssd: 0 name: Merrill Lynch trans_agg: true ach: false state_agg: true voi: true voa: true aha: false avail_balance: false account_owner: true student_loan_data: false loan_payment_details: false child_institutions: [] /v2/payroll-documents/{id}: get: summary: Retrieve a payroll document description: Retrieves a payroll document object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the payroll document object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PayrollDocument' example: id: 0183b2c1-02e5-a5e5-38f2-ecd51a5cf3d6 account: 0187c66e-e7e5-811c-b006-2232f00f426a document_number: ced46eb3-7586-3cd7-2418-8eb9482bc3ec available_date: '2019-03-14T17:46:25Z' expiration_date: '2027-03-12T17:46:25Z' employer: GigAndGo employment: 42d6531c-520a-26b9-35c3-b7137a6d205a document_type: drivers-licence document_type_description: Driver's license file_url: api.argyle.com/v2/payroll-documents/{id}/file created_at: '2023-03-13T17:46:28.240Z' updated_at: '2023-03-13T17:46:28.240Z' ocr_data: {} metadata: {} /v2/payroll-documents: get: summary: List all payroll documents description: Returns a paginated list of all payroll document objects. parameters: - in: query name: account schema: type: string format: uuid description: Filter by account ID. - in: query name: user schema: type: string format: uuid description: Filter by user ID. - in: query name: employment schema: type: string format: uuid description: Filter by employment ID. - in: query name: from_available_date schema: type: string format: date-time description: 'Filter for payroll documents with an `available_date` on or after this timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). ' - in: query name: to_available_date schema: type: string format: date-time description: 'Filter for payroll documents with an `available_date` on or before this timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). ' - in: query name: limit schema: type: integer description: 'Number of payroll document objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/PayrollDocument' example: next: https://api-sandbox.argyle.com/v2/payroll-documents?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0186dc02-05b6-b83f-c366-b39a267e1570 account: 0185a8b8-60eb-80ca-7482-5f24504573f7 document_number: null available_date: '2020-05-13T17:25:59Z' expiration_date: null employer: Whole Goods employment: 0186a27d-e5c6-735a-a359-6315b34d544c document_type: payout-statement document_type_description: null file_url: api.argyle.com/v2/payroll-documents/{id}/file created_at: '2023-03-13T17:27:01.501Z' updated_at: '2023-03-13T17:27:01.501Z' ocr_data: {} metadata: {} - id: 0176dc14-bb37-402a-7be1-f5261759fae7 account: 0187c66e-e7e5-811c-b006-2232f00f426a document_number: ced46eb3-7586-3cd7-2418-8eb9482bc3ec available_date: '2019-03-14T17:46:25Z' expiration_date: '2027-03-12T17:46:25Z' employer: GigAndGo employment: 42d6531c-520a-26b9-35c3-b7137a6d205a document_type: drivers-licence document_type_description: Driver's license file_url: api.argyle.com/v2/payroll-documents/{id}/file created_at: '2023-03-13T17:46:28.240Z' updated_at: '2023-03-13T17:46:28.240Z' ocr_data: {} metadata: {} /v2/paystubs/{id}: get: summary: Retrieve a paystub description: Retrieves a paystub object. parameters: - in: path name: id schema: type: string format: uuid required: true description: 'ID of the paystub object to be retrieved. ' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Paystub' /v2/paystubs: get: summary: List all paystubs description: Returns a paginated list of all paystub objects. parameters: - in: query name: account schema: type: string format: uuid description: Filter by account ID. - in: query name: user schema: type: string format: uuid description: Filter by user ID. - in: query name: employment schema: type: string format: uuid description: Filter by employment ID. - in: query name: from_start_date schema: type: string format: date-time description: 'Filter for paystubs with a `paystub_date` on or after this timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). ' - in: query name: to_start_date schema: type: string format: date-time description: 'Filter for paystubs with a `paystub_date` on or before this timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). ' - in: query name: limit schema: type: integer description: 'Number of paystubs objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Paystub' /v2/ratings/{id}: get: summary: Retrieve a rating description: Retrieves a rating object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the rating object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Rating' example: id: 0176a5bd-6ed4-1a21-8661-32bc3546e6de account: 0187c66e-e7e5-811c-b006-2232f00f426a rating: '4.98' acceptance_rate: '0.91' ontime_rate: '0.94' achievements: - count: 1 label: excellent_service points: null metadata: {} badge_url: www.partner.com/badgeinfo description: Excellent Service - count: 1 label: great_amenities points: null metadata: {} badge_url: www.partner.com/badgeinfo description: Great Amenities employer: GigAndGo created_at: '2023-03-15T13:19:55.723Z' updated_at: '2023-03-15T13:19:55.723Z' metadata: {} /v2/ratings: get: summary: List all ratings description: Returns a paginated list of all rating objects. parameters: - in: query name: account schema: type: string format: uuid description: Filter by account ID. - in: query name: user schema: type: string format: uuid description: Filter by user ID. - in: query name: limit schema: type: integer description: 'Number of rating objects returned per page. Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Rating' example: next: https://api-sandbox.argyle.com/v2/ratings?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0186b4eb-1e33-bb38-a45a-1db105b5bed0 account: 0187c66e-e7e5-811c-b006-2232f00f426a rating: '4.14' acceptance_rate: '0.87' ontime_rate: '0.85' achievements: - count: 3 label: excellent_service points: '300' award: null description: Excellent Service metadata: {} - count: 2 label: speed_demon points: '200' award: Speed Demon description: Fast Service metadata: {} employer: GigAntic created_at: '2023-03-15T11:15:20.359Z' updated_at: '2023-03-15T11:15:20.359Z' metadata: {} - id: 0176a5bd-6ed4-1a21-8661-32bc3546e6de account: 0187c66e-e7e5-811c-b006-2232f00f426a rating: '4.98' acceptance_rate: '0.91' ontime_rate: '0.94' achievements: - count: 3 label: excellent_service points: null metadata: {} badge_url: www.partner.com/badgeinfo description: Excellent Service - count: 1 label: great_amenities points: null metadata: {} badge_url: www.partner.com/badgeinfo description: Great Amenities employer: GigAndGo created_at: '2023-03-15T13:19:55.723Z' updated_at: '2023-03-15T13:19:55.723Z' metadata: {} /v2/receipts: post: summary: Generate a receipt description: Returns a PDF listing all billable transactions associated with the user. requestBody: required: true content: application/json: schema: type: object properties: user: type: string format: uuid description: ID of the user. required: - user example: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 responses: '200': description: '' headers: Content-Type: description: Content type of response payload. schema: type: string example: application/pdf Content-Disposition: description: Response disposition with receipt filename. schema: type: string example: attachment; filename="receipt.pdf" Content-Length: description: Size of response payload in bytes. schema: type: integer example: 12345 content: application/pdf: schema: type: string format: binary examples: default: value: '200 OK Content-Type: application/pdf Content-Disposition: attachment; filename="receipt.pdf" Content-Length: 12345 [PDF binary stream omitted] ' /v2/reports/{type}: post: summary: Generate a report description: 'Generates a new report and returns a report object. There is a daily limit of 10 reports per user to prevent excessive report generation due to accidental client-side errors. If the daily report limit is reached, deleting a previously generated report from the same 24 hour period will allow another report to be generated. ' parameters: - name: type in: path required: true schema: type: string enum: - voe - voie - voe-mortgage - voie-mortgage description: 'The type of report to generate. - `voie` - Verification of Income and Employment - `voe` - Verification of Employment - `voie-mortgage` - Verification of Income and Employment, integrated with Fannie Mae''s Desktop Underwriter (DU) validation service and Freddie Mac''s asset and income modeler (AIM) - `voe-mortgage` - Verification of Employment, integrated with Fannie Mae''s Desktop Underwriter (DU) validation service and Freddie Mac''s asset and income modeler (AIM) Visit our [Day 1 Certainty and AIM guide](/integrations/d1c-aim/verifications#requesting-verification-reports) for more information on mortgage reports. ' requestBody: required: true content: application/json: schema: type: object properties: user: type: string format: uuid description: ID of the user. metadata: type: object description: Information for internal use, structured as a JSON object. required: - user example: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Report' example: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 reference_id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b generated_at: '2023-03-09T16:22:06.081Z' created_at: '2023-03-09T16:22:06.081Z' type: voie status: generating file_url: www.argyle.com/storagename/pdf json_url: www.argyle.com/storagename/json accounts: - id: 0187c66e-e7e5-811c-b006-2232f00f426a item: item_123456789 last_synced_at: '2023-03-09T14:08:25.069Z' - id: 0185a8b8-60eb-80ca-7482-5f24504573f7 item: item_000000001 last_synced_at: '2023-03-01T05:10:59.558Z' metadata: {} last_synced_at: '2023-03-09T14:08:25.069Z' external_id: July_Connection /v2/reports: get: summary: List all reports description: Returns a paginated list of all report objects. parameters: - name: user in: query schema: type: string format: uuid description: Filter by user ID. - name: limit in: query schema: type: integer description: 'Number of report objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Report' example: next: https://api-sandbox.argyle.com/v2/reports?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 5b3fa756-1d76-43e1-55f6-e29fc6ae535d user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 reference_id: 5b3fa756-1d76-43e1-55f6-e29fc6ae535d generated_at: '2023-03-01T22:45:08.916Z' created_at: '2023-03-01T22:45:08.916Z' type: voe status: generated file_url: www.argyle.com/storagename/pdf json_url: www.argyle.com/storagename/json last_synced_at: '2023-03-01T19:20:21.576Z' accounts: - id: 018e6a25-130b-3b98-a3ca-1658cb3afc26 item: item_987654321 last_synced_at: '2023-03-01T19:20:21.576363Z' metadata: {} external_id: null - id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 reference_id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b generated_at: '2023-03-09T16:22:06.081Z' created_at: '2023-03-09T16:22:06.081Z' type: voie status: generated file_url: www.argyle.com/storagename/pdf json_url: www.argyle.com/storagename/json last_synced_at: '2023-03-09T14:08:25.069Z' accounts: - id: 0187c66e-e7e5-811c-b006-2232f00f426a item: item_123456789 last_synced_at: '2023-03-09T14:08:25.069105Z' - id: 0185a8b8-60eb-80ca-7482-5f24504573f7 item: item_000000001 last_synced_at: '2023-03-01T05:10:59.558295Z' metadata: {} external_id: July_Connection /v2/reports/{id}: get: summary: Retrieve a report description: Retrieves a report object. parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the report object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Report' example: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 reference_id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b generated_at: '2023-03-09T16:22:06.081Z' created_at: '2023-03-09T16:22:06.081Z' type: voie status: generated file_url: www.argyle.com/storagename/pdf json_url: www.argyle.com/storagename/json last_synced_at: '2023-03-09T14:08:25.069Z' accounts: - id: 0187c66e-e7e5-811c-b006-2232f00f426a item: item_123456789 last_synced_at: '2023-03-09T14:08:25.069105Z' - id: 0185a8b8-60eb-80ca-7482-5f24504573f7 item: item_000000001 last_synced_at: '2023-03-01T05:10:59.558295Z' metadata: {} external_id: July_Connection delete: summary: Delete a report description: 'Deletes a report object. ' parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the report object to be deleted. responses: '204': description: '204 status code: No content.' /v2/shifts/{id}: get: summary: Retrieve a shift description: Retrieves a shift object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the shift object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Shift' example: id: 0183d245-b5c1-2a6d-5e37-1b831d765c5d account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: Whole Goods created_at: '2023-04-27T07:02:01.279Z' updated_at: '2023-04-27T07:02:01.279Z' status: completed type: hourly start_datetime: '2023-04-26T00:00:00Z' end_datetime: '2023-04-26T08:00:00Z' all_datetimes: shift_start: '2023-04-26T00:00:00Z' shift_end: '2023-04-26T08:00:00Z' breaks: - break_start: '2023-04-26T03:36:00Z' break_end: '2023-04-26T04:24:00Z' hours: '7.2' timezone: America/New_York location: 302 East N St, New York, NY 10014, US metadata: {} /v2/shifts: get: summary: List all shifts description: Returns a paginated list of all shift objects. parameters: - in: query name: account schema: type: string format: uuid description: Filter by account ID. - in: query name: user schema: type: string format: uuid description: Filter by user ID. - in: query name: from_start_datetime schema: type: string format: date-time description: Filter by shifts with a `start_datetime` on or after this timestamp [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - in: query name: to_start_datetime schema: type: string format: date-time description: Filter by shifts with a `start_datetime` on or before this timestamp [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601). - in: query name: limit schema: type: integer description: 'Number of shift objects returned per page. Default: 10. Maximum: 200.' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Shift' example: next: https://api-sandbox.argyle.com/v2/shifts?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0183c13c-5d3d-2d36-4d6d-5ac7a7eb2b2d account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: Bullseye created_at: '2023-04-27T17:37:43.977Z' updated_at: '2023-04-27T17:37:43.977Z' status: completed type: hourly start_datetime: '2023-04-26T00:00:00Z' end_datetime: '2023-04-26T10:00:00Z' all_datetimes: shift_start: '2023-04-26T00:00:00Z' shift_end: '2023-04-26T10:00:00Z' breaks: - break_start: '2023-04-26T04:30:00Z' break_end: '2023-04-26T05:30:00Z' hours: '9.0' timezone: America/New_York location: 605 Far West Ave Suite 970, New York, NY 10019, US metadata: {} - id: 0183c5c3-2c9e-f2d1-3c7d-3ac5b73d3a5d account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: Bullseye created_at: '2023-04-28T17:38:43.977Z' updated_at: '2023-04-28T17:38:43.977Z' status: scheduled type: hourly start_datetime: '2023-04-29T00:00:00Z' end_datetime: '2023-04-29T10:00:00Z' all_datetimes: shift_start: '2023-04-29T00:00:00Z' shift_end: '2023-04-29T10:00:00Z' breaks: [] hours: '10.0' timezone: America/New_York location: 605 Far West Ave Suite 970, New York, NY 10019, US metadata: {} /v2/user-forms/{id}: get: summary: Retrieve a user form description: Retrieves a user form object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the user form object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/UserForm' example: id: 0186ef31-4a6c-bc77-ffb7-a9db11505d7d account: 0182c1e2-59ec-16ba-34e2-4f20594a7df7 data: income_source: Block & Fish Tackle payroll_provider: Payroll Corp. created_at: '2023-03-17T10:50:30.414265Z' updated_at: '2023-03-17T10:50:31.621908Z' /v2/user-forms: get: summary: List all user forms description: Returns a paginated list of all user form objects. parameters: - in: query name: account schema: type: string format: uuid required: false description: Filter by account ID. - in: query name: user schema: type: string format: uuid required: false description: Filter by user ID. - in: query name: limit schema: type: integer required: false description: 'Number of user form objects returned per page. Default: 10. Maximum: 200. ' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/UserForm' example: next: https://api-sandbox.argyle.com/v2/user-forms?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0186ef31-4a6c-bc77-ffb7-a9db11505d7d account: 0182c1e2-59ec-16ba-34e2-4f20594a7df7 data: income_source: Block & Fish Tackle payroll_provider: Payroll Corp. created_at: '2023-03-17T10:50:30.414265Z' updated_at: '2023-03-17T10:50:31.621908Z' - id: 0187bf23-cd80-118d-c0b8-58023e21c8e5 account: 01856c65-43b6-8b5d-b32a-56b8fbda5c28 data: income_source: Spanner & Gear Innovations payroll_provider: Payroll Corp. created_at: '2023-03-17T10:40:00.672839Z' updated_at: '2023-03-17T10:45:20.035736Z' /v2/user-tokens: post: summary: Create a user token description: 'Creates a new user token from the `id` of an existing user for direct embedded Link initializations. [Creating a new user](/api-reference/users#create) will also return a user token in the response. ' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateUserTokenRequest' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/CreateUserTokenResponse' example: user_token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWQiOiIxNDRhMTRkNJ04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2NzgzOTUwMTEsImZpZCI6ImMyNzFhODRlLWM2MjQtNDNkYS05OGMyLTQzODZkNTk1OWQ4YiIsImlhdCI6MTY3ODM5MTQxMSwiaXNzIjoiYXJneWxlLWNvcmUtYXV0aC1kZXYiLCJqdGkiOiI4ZTk1MTBmNC00YzVlLTRlOTAtOTIyNy1kNjg2MTk3MmMxOTAiLCJzdWIiOiIwMTg2YzRiOC04ZmExLTYyYjMtNDlkZi05NGIzZTE4Y2E4YTciLCJ1c2VyX2lkIjoiMDE4NmM0YjgtOGZhMS02MmIzLTQ5ZGYtOTRiM2UxOGNhOGE3In0.oLrxtzfNHG1RZ85Z4q7VUiv2-kufXmMINJFHeRIjvWo /v2/user-uploads/{id}: get: summary: Retrieve a user upload description: Retrieves a user upload object. parameters: - in: path name: id required: true schema: type: string format: uuid description: ID of the user upload object to be retrieved. responses: '200': description: A user upload object. content: application/json: schema: $ref: '#/components/schemas/UserUpload' example: id: 01320596-2c3d-189c-53e7-a8ce6d625b33 account: 01856c65-43b6-8b5d-b32a-56b8fbda5c28 document_type: paystubs file_url: www.argyle.com/storagename file_name: most_recent_paystub.pdf metadata: employment: {} ocr_data: {} ocr_authenticity: {} ocr_authenticity_score: null processing: classification: unauthorized ocr: unauthorized authenticity: unauthorized created_at: '2024-07-08T13:43:49.864Z' updated_at: '2024-07-08T13:43:51.868Z' /v2/user-uploads: post: summary: Upload a document description: Upload a document via the API. requestBody: required: true content: multipart/form-data: schema: type: object required: - user - document_type - upload properties: user: type: string format: uuid description: ID of the user object. document_type: type: string enum: - paystubs - W-2 - 1099 - proof-of-identity - proof-of-address - miscellaneous description: The type of document. upload: type: string format: binary description: 'Link to the document to be uploaded. Max of 1 document per POST request. ' responses: '200': $ref: '#/components/responses/UserUploadResponse' get: summary: List all user uploads description: Returns a paginated list of all user upload objects. parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/UserId' - $ref: '#/components/parameters/DocumentType' - $ref: '#/components/parameters/Limit' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': $ref: '#/components/responses/UserUploadListResponse' /v2/users: post: summary: Create a user description: Creates a new user object. Includes a new [user token](/link/user-tokens) in the response. requestBody: content: application/json: example: {} schema: type: object properties: first_name: type: string description: Pre-fill Link's login screen with this first name. last_name: type: string description: Pre-fill Link's login screen with this last name. email: type: string description: "Pre-fill Link's login screen with this email.\n\n\ Invalid email addresses will cause the request to fail.\nWe recommend\ \ client-side validation and retrying the request without the\ \ invalid email if you receive:\n```json\n{\n \"email\": [\n\ \ \"Enter a valid email address.\"\n ]\n}\n```\n" phone_number: type: string description: "Pre-fill Link's login screen with this phone number.\n\ E.164 international format recommended.\n\nInvalid phone numbers\ \ will cause the request to fail.\nWe recommend client-side validation\ \ and retrying the request without the invalid phone number if\ \ you receive:\n```json\n{\n \"phone_number\": [\n \"Enter\ \ a valid phone number.\"\n ]\n}\n```\n" ssn: type: string description: Social Security number. address: type: object description: Address of the user. properties: city: type: string description: Name of the city, town, district, or similar regional entity. line1: type: string description: Address-Line 1, usually street address or P.O. Box information. line2: type: string description: Address-Line 2, usually the apartment or unit number. state: type: string description: State, county, province, region, or equivalent. country: type: string description: Two-letter country code (ISO 3166-1 alpha-2 format). postal_code: type: string description: Zip code, or equivalent. birth_date: type: object description: Date of birth of the user. properties: year: type: integer description: Birth year (1900 or later). month: type: integer description: Birth month (between 1 and 12). day: type: integer description: Birth day (between 1 and 31). external_metadata: type: object description: Any valid JSON. open_banking: type: object description: Can be optionally included when ordering [banking verifications](/api-reference/verifications-guide). properties: end_user: type: object description: Contains details about the person or entity making the lending decision. properties: name: type: string description: Name of the lender or entity. address: type: string description: Street address or P.O. Box information (include apartment or unit numbers). city: type: string description: Name of the city, town, district, or similar regional entity. state: type: string description: State, county, province, region, or equivalent. zip: type: string description: Zip code, or equivalent. phone: type: string description: 'Phone number of the lender or entity. Must be 10 or 11 digits (with or without hyphens). ' external_id: type: string description: Any string. Maximum 100 characters. responses: '200': description: '' content: application/json: example: user_token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWQiOiIxNDRhMTRkNS04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2NzgzNDExNDMsImZpZCI6ImIyYzY4YzUwLTc2MTQtNDAwNy1iMzNmLWZiMzlkMDFmMmM3MCIsImlhdCI6MTY3ODMzNzU0MywiaXNzIjoiYXJneWxlLWNvcmUtYXV0aC1kZXYiLCJqdGkiOiI3ZTU0ZTY1NS05YWN2LTRiZDctOWI3OC0xODMxMjVkYjM1MzMiLCJzdWIiOiIwMTg2YzRiNi04ZTgyLWQ5OWMtOGY4Mi1mNjMyMjgxMzk2ZTQiLCJ1c2VyX2lkIjoiMDE4NmM0YjYtOGU4Mi1kOTljLThmODItZjYzMjI4MTM5NmU0In0.q5bkZTFAohISOcjJDb2wSzKcHmwrOM4pp9imOVybaWk id: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 schema: type: object properties: user_token: type: string description: Token associated with the created user. id: type: string format: uuid description: Unique ID of the user. get: summary: List all users description: Returns a paginated list of all user objects. parameters: - in: query name: limit schema: type: integer description: 'Number of user objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - in: query name: external_id schema: type: string description: Filter users by `external_id`. Exact matches only. - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/User' example: next: https://api-sandbox.argyle.com/v2/users?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-01-30T22:25:38.971Z' items_connected: - item_123456789 - item_987654321 employers_connected: - Whole Goods - Bullseye external_metadata: notes: In stage 3 of loan approval. category: Summer Initiative external_id: July Connection first_name: Sarah last_name: Longfield email: sarah@email.com phone_number: '+12125555555' ssn: null address: city: null line1: null line2: null state: null country: null postal_code: null birth_date: year: null month: null day: null - id: 0186c5b8-8fa1-67b3-39af-14b3e18da8a7 created_at: '2023-01-30T23:25:38.971Z' items_connected: - item_000000001 - item_000000002 employers_connected: - Half Bads - Triple external_metadata: notes: In stage 1 of loan approval. category: Summer Initiative external_id: August Connection first_name: null last_name: null email: null phone_number: null ssn: null address: city: null line1: null line2: null state: null country: null postal_code: null birth_date: year: null month: null day: null /v2/users/{id}: get: summary: Retrieve a user description: Retrieves a user object. parameters: - in: path name: id required: true schema: type: string format: uuid description: ID of the user object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/User' patch: summary: Update a user description: Updates a user object. parameters: - in: path name: id required: true schema: type: string format: uuid description: ID of the user object to be updated. requestBody: content: application/json: schema: type: object properties: first_name: type: string description: Pre-fill Link's login screen with this first name. last_name: type: string description: Pre-fill Link's login screen with this last name. email: type: string description: 'Pre-fill Link''s login screen with this email. Invalid email addresses will cause the request to fail. ' phone_number: type: string description: 'Pre-fill Link''s login screen with this phone number. [E.164](https://en.wikipedia.org/wiki/E.164) international format recommended. Invalid phone numbers will cause the request to fail. ' ssn: type: string description: Social Security number. address: type: object properties: city: type: string description: Name of the city, town, district, or similar regional entity. line1: type: string description: Address-Line 1, usually street address or P.O. Box information. line2: type: string description: Address-Line 2, usually the apartment or unit number. state: type: string description: State, county, province, region, or equivalent. country: type: string description: Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format). postal_code: type: string description: Zip code, or equivalent. birth_date: type: object properties: year: type: integer description: Birth year (1900 or later). month: type: integer description: Birth month (between 1 and 12). day: type: integer description: Birth day (between 1 and 31). external_metadata: type: object description: 'Any valid JSON. Must be an object `{}` when used for [banking reports](/api-reference/banking-overview#create-an-argyle-user). ' open_banking: type: object description: Only relevant to [banking reports](/api-reference/banking-overview#create-an-argyle-user). properties: end_user: type: object description: Contains details about the person or entity making the lending decision. properties: name: type: string description: Name of the lender or entity. address: type: string description: Street address or P.O. Box information (include apartment or unit numbers). city: type: string description: Name of the city, town, district, or similar regional entity. state: type: string description: State, county, province, region, or equivalent. zip: type: string description: Zip code, or equivalent. phone: type: string description: 'Phone number of the lender or entity. Must be 10 or 11 digits (with or without hyphens). ' external_id: type: string description: Any string. Maximum 100 characters. example: first_name: Sarah last_name: Longfield email: sarah@email.com phone_number: '+12125555555' external_metadata: notes: Moved to stage 2 of loan approval. category: Summer Initiative external_id: July_Connection responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/User' delete: summary: Delete a user description: 'Deletes a user object. Deleting a user object will also delete all accounts and resources associated with the user. ' parameters: - in: path name: id required: true schema: type: string format: uuid description: ID of the user object to be deleted. responses: '204': description: '204 status code: No content.' /v2/sessions: post: summary: Create a session description: 'Create a connection session and return a `link` URL that launches the frontend experience. Session links expire after one hour. A new session link can be created at any time by creating another session for the active verification. This endpoint is for payroll and banking verifications only.' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ClientSessionCreateRequest' examples: payroll: summary: Example Request (Payroll) value: verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b configuration: redirect_url: https://your-application.com/return flow_id: 12ABCD3E items: - item_000000001 - item_000000002 language: EN mobile_app: true banking: summary: Example Request (Banking) value: verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b configuration: experience: 97f1eccb-241d-4052-8409-fab9e27a589b single_use_url: false redirect_url: https://your-application.com/return responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ClientSession' examples: payroll: summary: Example Response (Payroll) value: verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b configuration: experience: null single_use_url: false redirect_url: https://your-application.com/return flow_id: 12ABCD3E items: - item_000000001 - item_000000002 language: EN mobile_app: true link: https://connect.argyle.com/?... data_source: payroll banking: summary: Example Response (Banking) value: verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b configuration: experience: 97f1eccb-241d-4052-8409-fab9e27a589b single_use_url: false redirect_url: https://your-application.com/return link: https://connect2.finicity.com?... data_source: banking /v2/verifications: post: summary: Order a verification description: 'Orders a new verification. [Create a user](/api-reference/verifications-guide#create-a-user) or update an existing user with the required details before ordering payroll, banking, or document verifications. ' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ClientVerificationCreateRequest' examples: payroll: summary: Example Request (Payroll) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: voie loan: &id001 number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: &id002 cost_center: '5' banking: summary: Example Request (Banking) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: voai configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true loan: *id001 billing: *id002 documents: summary: Example Request (Documents) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 employments: - employer: Warehouse Services Inc status: active hire_date: '2023-02-01' termination_date: null report: type: doc-voi-mortgage loan: *id001 billing: *id002 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ClientVerification' examples: payroll: summary: Example Response (Payroll) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: voie file_url: null json_url: null employments: [] loan: *id001 billing: *id002 data_source: payroll banking: summary: Example Response (Banking) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: voai file_url: null json_url: null configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true employments: [] loan: *id001 billing: *id002 data_source: banking documents: summary: Example Response (Documents) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: doc-voi-mortgage file_url: null json_url: null employments: - employer: Warehouse Services Inc status: active hire_date: '2023-02-01' termination_date: null loan: *id001 billing: *id002 data_source: documents get: summary: List all verifications description: Returns a paginated list of all verification objects. parameters: - name: user in: query required: false schema: type: string format: uuid description: Filter by user ID. - name: status_state in: query required: false schema: type: string enum: - PENDING - PROCESSING - PAUSED - CANCELLED - COMPLETED description: Filter by verification status `state`. - name: status_code in: query required: false schema: type: string enum: - pending - documents_processing - more_data_required - report_available - waiting_on_third_party - report_generating - argyle_timeout - cancelled_by_client - completed - completed_with_errors - user_session_started - authenticated description: Filter by verification status `code`. - name: report_type in: query required: false schema: type: string enum: - voie - voe - voa - voi - voai - voe-transactions - doc-voi-mortgage description: Filter by report `type`. - name: loan_number in: query required: false schema: type: string description: Filter by loan `number`. - name: limit in: query required: false schema: type: integer description: 'Number of verification objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - name: cursor in: query required: false schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string nullable: true description: URL for the next page of results, if available. previous: type: string nullable: true description: URL for the previous page of results, if available. results: type: array description: Array of verification objects. items: $ref: '#/components/schemas/ClientVerification' example: next: https://api-sandbox.argyle.com/v2/verifications?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: 2a14ce6f-3aed-4c15-8ea2-92a17b6edb95 type: voie file_url: null json_url: null employments: [] loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: payroll - id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc3333 user: 018051aa-f7a9-a0db-2f38-6cfa325e9345 created_at: '2023-03-10T05:14:06.081Z' updated_at: '2023-03-10T13:03:06.081Z' channel: api status: state: PROCESSING code: authenticated errors: [] report: id: null type: voai file_url: null json_url: null configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true employments: [] loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: banking /v2/verifications/refresh: post: summary: Refresh a verification description: 'Creates a new payroll, banking, or Doc VOI verification without requiring the user to reconnect or upload additional documents. For payroll and banking, a valid connection must already exist. For Doc VOI, the new report is generated from the user''s existing uploaded documents.' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ClientVerificationRefreshRequest' examples: payroll: summary: Example Request (Payroll) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: voie loan: *id001 billing: *id002 banking: summary: Example Request (Banking) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: voa configuration: from_date: '2025-01-01T00:00:00Z' loan: *id001 billing: *id002 documents: summary: Example Request (Documents) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: doc-voi-mortgage loan: *id001 billing: *id002 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ClientVerification' examples: payroll: summary: Example Response (Payroll) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: voie file_url: null json_url: null employments: [] loan: *id001 billing: *id002 data_source: payroll banking: summary: Example Response (Banking) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: voa file_url: null json_url: null configuration: from_date: '2025-01-01T00:00:00Z' employments: [] loan: *id001 billing: *id002 data_source: banking documents: summary: Example Response (Documents) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: doc-voi-mortgage file_url: null json_url: null employments: [] loan: *id001 billing: *id002 data_source: documents /v2/verifications/{id}: get: summary: Retrieve a verification description: Retrieves a verification. parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the verification to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ClientVerification' example: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PROCESSING code: authenticated errors: [] report: id: null type: voai file_url: null json_url: null configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true employments: [] loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: banking patch: summary: Update a verification description: 'Updates verification metadata or employments. After a verification is updated, it will re-enter the `PROCESSING` state. ' parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the verification to be updated. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ClientVerificationUpdateRequest' examples: payroll: summary: Example Request (Payroll) value: loan: number: '5678' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: new_cost_center banking: summary: Example Request (Banking) value: loan: number: '5678' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: new_cost_center documents: summary: Example Request (Documents) value: employments: - employer: Warehouse Services Inc status: previous hire_date: '2015-08-28' termination_date: '2023-05-01' - employer: Amazon status: active hire_date: '2023-06-15' termination_date: null loan: borrower_id: '5678' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ClientVerification' examples: payroll: summary: Example Response (Payroll) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PROCESSING code: authenticated errors: [] report: id: null type: voie file_url: null json_url: null employments: [] loan: number: '5678' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: new_cost_center data_source: payroll banking: summary: Example Response (Banking) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PROCESSING code: authenticated errors: [] report: id: null type: voai file_url: null json_url: null configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true employments: [] loan: number: '5678' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: new_cost_center data_source: banking documents: summary: Example Response (Documents) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PROCESSING code: documents_processing errors: [] report: id: null type: doc-voi-mortgage file_url: null json_url: null employments: - employer: Warehouse Services Inc status: previous hire_date: '2015-08-28' termination_date: '2023-05-01' - employer: Amazon status: active hire_date: '2023-06-15' termination_date: null loan: number: '1234' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: documents /v2/verifications/{id}/cancel: post: summary: Cancel a verification description: 'Cancels a verification order. Only verifications in the `PAUSED` state can be cancelled. ' parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the verification to be cancelled. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ClientVerification' example: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: CANCELLED code: cancelled_by_client errors: [] report: id: null type: doc-voi-mortgage file_url: null json_url: null employments: - employer: Warehouse Services Inc status: active hire_date: '2023-02-01' termination_date: null loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: documents /partners/v2/users: post: summary: Create a user description: Creates a new user object for partner verification workflows. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartnerUserCreateRequest' example: client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 first_name: Jane last_name: Doe ssn: 000-00-0000 email: jane@example.com phone_number: '+15555555555' address: city: New York line1: 123 Main St line2: null state: NY country: US postal_code: null birth_date: year: 1990 month: 1 day: 13 external_id: null external_metadata: suppress_verification: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerCreateUserResponse' example: user_token: id: 7a614711-066f-4b6b-b319-4c6236b5acc1 /partners/v2/users/{id}: patch: summary: Update a user description: Updates a user object. parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the user object to be updated. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartnerUserUpdateRequest' example: email: jane@example.com phone_number: '+15555555555' external_id: ABC external_metadata: suppress_verification: true additional_id: '123' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerUser' example: id: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: '2023-03-09T04:54:35.170468Z' items_connected: - item_123456789 - item_987654321 employers_connected: - Whole Goods - Bullseye first_name: Jane last_name: Doe ssn: 000-00-0000 email: jane@example.com phone_number: '+15555555555' address: city: New York line1: 123 Main St line2: null state: NY country: US postal_code: null birth_date: year: 1990 month: 1 day: 13 external_metadata: suppress_verification: true additional_id: '123' external_id: ABC /partners/v2/sessions: post: summary: Create a session description: 'Create a connection session and return a `link` URL that launches the frontend experience. Session links expire after one hour. A new session link can be created at any time by creating another session for the active verification. This endpoint is for payroll and banking verifications only.' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartnerSessionCreateRequest' examples: payroll: summary: Example Request (Payroll) value: verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b configuration: redirect_url: https://your-application.com/return flow_id: 12ABCD3E items: - item_000000001 - item_000000002 language: EN mobile_app: true banking: summary: Example Request (Banking) value: verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b configuration: experience: 97f1eccb-241d-4052-8409-fab9e27a589b single_use_url: false redirect_url: https://your-application.com/return responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerSession' examples: payroll: summary: Example Response (Payroll) value: verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b configuration: experience: null single_use_url: false redirect_url: https://your-application.com/return flow_id: 12ABCD3E items: - item_000000001 - item_000000002 language: EN mobile_app: true link: https://connect.argyle.com/?... data_source: payroll banking: summary: Example Response (Banking) value: verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b configuration: experience: 97f1eccb-241d-4052-8409-fab9e27a589b single_use_url: false redirect_url: https://your-application.com/return link: https://connect2.finicity.com?... data_source: banking /partners/v2/verifications: post: summary: Order a verification description: 'Orders a new verification. [Create a user](/api-reference/partners-verifications-guide#create-a-user) or update an existing user with the required details before ordering payroll, banking, or document verifications. ' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartnerVerificationCreateRequest' examples: payroll: summary: Example Request (Payroll) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: voie loan: &id003 number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: &id004 cost_center: '5' banking: summary: Example Request (Banking) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: voai configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true loan: *id003 billing: *id004 documents: summary: Example Request (Documents) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 employments: - employer: Warehouse Services Inc status: active hire_date: '2023-02-01' termination_date: null report: type: doc-voi-mortgage loan: *id003 billing: *id004 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerVerification' examples: payroll: summary: Example Response (Payroll) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: voie file_url: null json_url: null employments: [] loan: *id003 billing: *id004 data_source: payroll banking: summary: Example Response (Banking) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: voai file_url: null json_url: null configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true employments: [] loan: *id003 billing: *id004 data_source: banking documents: summary: Example Response (Documents) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: doc-voi-mortgage file_url: null json_url: null employments: - employer: Warehouse Services Inc status: active hire_date: '2023-02-01' termination_date: null loan: *id003 billing: *id004 data_source: documents get: summary: List all verifications description: Returns a paginated list of all verification objects. parameters: - name: user in: query required: false schema: type: string format: uuid description: Filter by user ID. - name: status_state in: query required: false schema: type: string enum: - PENDING - PROCESSING - PAUSED - CANCELLED - COMPLETED description: Filter by verification status `state`. - name: status_code in: query required: false schema: type: string enum: - pending - documents_processing - more_data_required - report_available - waiting_on_third_party - report_generating - argyle_timeout - cancelled_by_client - completed - completed_with_errors - user_session_started - authenticated description: Filter by verification status `code`. - name: report_type in: query required: false schema: type: string enum: - voie - voe - voa - voi - voai - voe-transactions - doc-voi-mortgage description: Filter by report `type`. - name: loan_number in: query required: false schema: type: string description: Filter by loan `number`. - name: limit in: query required: false schema: type: integer description: 'Number of verification objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - name: cursor in: query required: false schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string nullable: true description: URL for the next page of results, if available. previous: type: string nullable: true description: URL for the previous page of results, if available. results: type: array description: Array of verification objects. items: $ref: '#/components/schemas/PartnerVerification' example: next: https://api-sandbox.argyle.com/partners/v2/verifications?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: 2a14ce6f-3aed-4c15-8ea2-92a17b6edb95 type: voie file_url: null json_url: null employments: [] loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: payroll - id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc3333 user: 018051aa-f7a9-a0db-2f38-6cfa325e9345 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-10T05:14:06.081Z' updated_at: '2023-03-10T13:03:06.081Z' channel: api status: state: PROCESSING code: authenticated errors: [] report: id: null type: voai file_url: null json_url: null configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true employments: [] loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: banking /partners/v2/verifications/refresh: post: summary: Refresh a verification description: 'Creates a new payroll, banking, or Doc VOI verification without requiring the user to reconnect or upload additional documents. For payroll and banking, a valid connection must already exist. For Doc VOI, the new report is generated from the user''s existing uploaded documents.' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartnerVerificationRefreshRequest' examples: payroll: summary: Example Request (Payroll) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: voie loan: *id003 billing: *id004 banking: summary: Example Request (Banking) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: voa configuration: from_date: '2025-01-01T00:00:00Z' loan: *id003 billing: *id004 documents: summary: Example Request (Documents) value: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 report: type: doc-voi-mortgage loan: *id003 billing: *id004 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerVerification' examples: payroll: summary: Example Response (Payroll) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: voie file_url: null json_url: null employments: [] loan: *id003 billing: *id004 data_source: payroll banking: summary: Example Response (Banking) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: voa file_url: null json_url: null configuration: from_date: '2025-01-01T00:00:00Z' employments: [] loan: *id003 billing: *id004 data_source: banking documents: summary: Example Response (Documents) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PENDING code: pending errors: [] report: id: null type: doc-voi-mortgage file_url: null json_url: null employments: [] loan: *id003 billing: *id004 data_source: documents /partners/v2/verifications/{id}: get: summary: Retrieve a verification description: Retrieves a verification. parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the verification to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerVerification' example: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PROCESSING code: authenticated errors: [] report: id: null type: voai file_url: null json_url: null configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true employments: [] loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: banking patch: summary: Update a verification description: 'Updates verification metadata or employments. After a verification is updated, it will re-enter the `PROCESSING` state. ' parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the verification to be updated. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartnerVerificationUpdateRequest' examples: payroll: summary: Example Request (Payroll) value: loan: number: '5678' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: new_cost_center banking: summary: Example Request (Banking) value: loan: number: '5678' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: new_cost_center documents: summary: Example Request (Documents) value: employments: - employer: Warehouse Services Inc status: previous hire_date: '2015-08-28' termination_date: '2023-05-01' - employer: Amazon status: active hire_date: '2023-06-15' termination_date: null loan: borrower_id: '5678' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerVerification' examples: payroll: summary: Example Response (Payroll) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PROCESSING code: authenticated errors: [] report: id: null type: voie file_url: null json_url: null employments: [] loan: number: '5678' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: new_cost_center data_source: payroll banking: summary: Example Response (Banking) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PROCESSING code: authenticated errors: [] report: id: null type: voai file_url: null json_url: null configuration: from_date: '2024-01-01T00:00:00Z' income_stream_confidence_minimum: 50 report_custom_fields: - label: loanID value: '12345' shown: true employments: [] loan: number: '5678' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: new_cost_center data_source: banking documents: summary: Example Response (Documents) value: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: PROCESSING code: documents_processing errors: [] report: id: null type: doc-voi-mortgage file_url: null json_url: null employments: - employer: Warehouse Services Inc status: previous hire_date: '2015-08-28' termination_date: '2023-05-01' - employer: Amazon status: active hire_date: '2023-06-15' termination_date: null loan: number: '1234' borrower_id: '5678' application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: documents /partners/v2/verifications/{id}/cancel: post: summary: Cancel a verification description: 'Cancels a verification order. Only verifications in the `PAUSED` state can be cancelled. ' parameters: - name: id in: path required: true schema: type: string format: uuid description: ID of the verification to be cancelled. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerVerification' example: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: CANCELLED code: cancelled_by_client errors: [] report: id: null type: doc-voi-mortgage file_url: null json_url: null employments: - employer: Warehouse Services Inc status: active hire_date: '2023-02-01' termination_date: null loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: documents /partners/v2/webhooks: post: summary: Create webhook subscription description: 'Creates a partner webhook subscription for `verifications.updated` or `verifications.creation_failed`. For `verifications.updated`, set `config.include_resource = true` to include the full verification object in `data.resource`.' tags: - Webhooks requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartnerWebhookSubscriptionRequest' example: events: - verifications.updated name: name-for-the-webhook-subscription url: https://your-webhook-backend.com secret: optional-secret config: include_resource: true responses: '200': description: '' content: application/json: schema: oneOf: - $ref: '#/components/schemas/PartnerVerificationWebhookMessage' - $ref: '#/components/schemas/PartnerVerificationCreationFailedWebhookMessage' examples: verifications_updated: summary: Example Webhook Update value: event: verifications.updated name: name-for-the-webhook-subscription data: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 verification: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 resource: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 created_at: '2023-03-09T16:22:06.081Z' updated_at: '2023-03-09T16:22:06.081Z' channel: api status: state: COMPLETED code: completed errors: [] report: id: 2a14ce6f-3aed-4c15-8ea2-92a17b6edb95 type: doc-voi-mortgage file_url: www.argyle.com/storagename/pdf json_url: www.argyle.com/storagename/json employments: - employer: Starbucks status: active hire_date: '2015-08-28' termination_date: null loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' data_source: documents verifications_creation_failed: summary: Example Webhook Delivery value: event: verifications.creation_failed name: name-for-the-webhook-subscription data: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 context: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 attempted_at: '2023-03-09T16:22:06.081Z' channel: encompass data_source: banking report_type: voa loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' /partners/v2/user-uploads: post: summary: Upload a document description: Upload a document via the API. requestBody: required: true content: multipart/form-data: schema: type: object required: - user - document_type - upload properties: user: type: string format: uuid description: ID of the user object. document_type: type: string enum: - paystubs - W-2 - 1099 - proof-of-identity - proof-of-address - miscellaneous description: The type of document. upload: type: string format: binary description: 'Link to the document to be uploaded. Max of 1 document per POST request. ' responses: '200': $ref: '#/components/responses/PartnerUserUploadResponse' /partners/v2/accounts/{id}: get: summary: Retrieve an account description: Retrieves an account object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the account object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Account' example: id: 0187c66e-e7e5-811c-b006-2232f00f426a user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 employers: - Whole Goods item: item_123456789 source: thepayrollcompany created_at: '2023-01-30T12:53:22.561Z' updated_at: '2023-01-30T12:55:04.478Z' scanned_at: '2023-01-30T12:55:04.016Z' connection: status: connected error_code: null error_message: null updated_at: '2023-01-30T12:53:25.561Z' direct_deposit_switch: status: success error_code: null error_message: null updated_at: '2023-01-30T12:55:03.478Z' availability: shifts: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 94 available_from: '2020-04-11T12:53:27Z' available_to: '2023-01-25T00:00:00Z' gigs: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 217 available_from: '2020-04-11T12:53:27Z' available_to: '2023-01-25T00:00:00Z' paystubs: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 68 available_from: '2020-05-11T12:53:27Z' available_to: '2023-01-29T23:59:59Z' payroll_documents: status: synced updated_at: '2023-01-30T12:53:44.308912Z' identities: status: synced updated_at: '2023-01-30T12:53:44.028552Z' ratings: status: synced updated_at: '2023-01-30T12:55:03.359356Z' vehicles: status: synced updated_at: '2023-01-30T12:53:44.321951Z' deposit_destinations: status: synced updated_at: '2023-01-30T12:53:42.586391Z' user_forms: status: in_progress updated_at: '2023-01-30T12:53:42.586391Z' available_count: 0 files_count: 1 in_progress_count: 1 user_uploads: status: synced updated_at: '2023-01-30T12:54:41.621Z' files_count: 2 in_progress_count: 0 ongoing_refresh: status: enabled /partners/v2/accounts: get: summary: List all accounts description: Returns a paginated list of all account objects. parameters: - in: query name: user required: true schema: type: string format: uuid description: Filter by user ID. - in: query name: item schema: type: string format: uuid description: Filter by Item ID. - in: query name: ongoing_refresh_status schema: type: string enum: - enabled - disabled - idle description: Filter by `status` of the `ongoing_refresh` object. - in: query name: limit schema: type: integer description: 'Number of account objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200.' - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Account' example: next: https://api-sandbox.argyle.com/partners/v2/accounts?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0185a8b8-60eb-80ca-7482-5f24504573f7 user: 0186c5b8-8fa1-67b3-39af-14b3e18da8a7 employers: - Half Bads item: item_000000001 source: payrollcorp created_at: '2023-01-30T18:25:13.491Z' updated_at: '2023-01-30T18:46:44.034Z' scanned_at: '2023-01-30T18:46:43.446Z' connection: status: connected error_code: null error_message: null updated_at: '2023-01-30T18:25:30.334956Z' direct_deposit_switch: status: error error_code: confirmation_timeout error_message: This user did not finish confirming the direct deposit switch. updated_at: '2023-01-30T18:35:31.961Z' availability: shifts: status: synced updated_at: '2023-01-30T18:46:43Z' available_count: 132 available_from: '2020-03-03T18:25:30Z' available_to: '2023-01-28T00:00:00Z' gigs: status: synced updated_at: '2023-01-30T18:46:43Z' available_count: 242 available_from: '2020-03-03T18:25:30Z' available_to: '2023-01-28T00:00:00Z' paystubs: status: synced updated_at: '2023-01-30T18:46:43Z' available_count: 40 available_from: '2020-03-03T18:25:30Z' available_to: '2023-01-02T00:00:00Z' payroll_documents: status: synced updated_at: '2023-01-30T18:45:35.228Z' identities: status: synced updated_at: '2023-01-30T18:45:34.960Z' ratings: status: synced updated_at: '2023-01-30T18:45:35.235Z' vehicles: status: synced updated_at: '2023-01-30T18:45:35.237Z' deposit_destinations: status: synced updated_at: '2023-01-30T18:25:31.438Z' user_forms: null user_uploads: null ongoing_refresh: status: enabled - id: 01856c65-43b6-8b5d-b32a-56b8fbda5c28 user: 0186c5b8-8fa1-67b3-39af-14b3e18da8a7 employers: [] item: item_000012271 source: doc_upload_item created_at: '2023-01-30T15:15:53.176Z' updated_at: '2023-01-30T15:16:12.042Z' scanned_at: null connection: status: connecting error_code: null error_message: null updated_at: '2023-01-30T15:16:14.695Z' direct_deposit_switch: status: idle error_code: null error_message: null updated_at: '2023-01-30T15:16:11.703Z' availability: shifts: null gigs: null paystubs: null payroll_documents: null identities: null ratings: null vehicles: null deposit_destinations: null user_forms: status: synced updated_at: '2023-01-30T15:16:12.012Z' available_count: 1 files_count: 3 in_progress_count: 0 user_uploads: null ongoing_refresh: status: idle /partners/v2/payroll-documents/{id}: get: summary: Retrieve a payroll document description: Retrieves a payroll document object. parameters: - in: path name: id schema: type: string format: uuid required: true description: ID of the payroll document object to be retrieved. responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PayrollDocument' example: id: 0183b2c1-02e5-a5e5-38f2-ecd51a5cf3d6 account: 0187c66e-e7e5-811c-b006-2232f00f426a document_number: ced46eb3-7586-3cd7-2418-8eb9482bc3ec available_date: '2019-03-14T17:46:25Z' expiration_date: '2027-03-12T17:46:25Z' employer: GigAndGo employment: 42d6531c-520a-26b9-35c3-b7137a6d205a document_type: drivers-licence document_type_description: Driver's license file_url: api.argyle.com/partners/v2/payroll-documents/{id}/file created_at: '2023-03-13T17:46:28.240Z' updated_at: '2023-03-13T17:46:28.240Z' ocr_data: {} metadata: {} /partners/v2/payroll-documents: get: summary: List all payroll documents description: Returns a paginated list of all payroll document objects. parameters: - in: query name: user required: true schema: type: string format: uuid description: Filter by user ID. - in: query name: account required: false schema: type: string format: uuid description: Filter by account ID. - in: query name: employment required: false schema: type: string format: uuid description: Filter by employment ID. - in: query name: from_available_date required: false schema: type: string format: date-time description: 'Filter for payroll documents with an `available_date` on or after this timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). ' - in: query name: to_available_date required: false schema: type: string format: date-time description: 'Filter for payroll documents with an `available_date` on or before this timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). ' - in: query name: limit required: false schema: type: integer description: 'Number of payroll document objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - in: query name: cursor required: false schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/PayrollDocument' example: next: https://api-sandbox.argyle.com/partners/v2/payroll-documents?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0186dc02-05b6-b83f-c366-b39a267e1570 account: 0185a8b8-60eb-80ca-7482-5f24504573f7 document_number: null available_date: '2020-05-13T17:25:59Z' expiration_date: null employer: Whole Goods employment: 0186a27d-e5c6-735a-a359-6315b34d544c document_type: payout-statement document_type_description: null file_url: api.argyle.com/partners/v2/payroll-documents/{id}/file created_at: '2023-03-13T17:27:01.501Z' updated_at: '2023-03-13T17:27:01.501Z' ocr_data: {} metadata: {} - id: 0176dc14-bb37-402a-7be1-f5261759fae7 account: 0187c66e-e7e5-811c-b006-2232f00f426a document_number: ced46eb3-7586-3cd7-2418-8eb9482bc3ec available_date: '2019-03-14T17:46:25Z' expiration_date: '2027-03-12T17:46:25Z' employer: GigAndGo employment: 42d6531c-520a-26b9-35c3-b7137a6d205a document_type: drivers-licence document_type_description: Driver's license file_url: api.argyle.com/partners/v2/payroll-documents/{id}/file created_at: '2023-03-13T17:46:28.240Z' updated_at: '2023-03-13T17:46:28.240Z' ocr_data: {} metadata: {} /partners/v2/paystubs/{id}: get: summary: Retrieve a paystub description: Retrieves a paystub object. parameters: - in: path name: id schema: type: string format: uuid required: true description: 'ID of the paystub object to be retrieved. ' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartnerPaystub' /partners/v2/paystubs: get: summary: List all paystubs description: Returns a paginated list of all paystub objects. parameters: - in: query name: account required: false schema: type: string format: uuid description: Filter by account ID. - in: query name: user required: false schema: type: string format: uuid description: Filter by user ID. - in: query name: employment required: false schema: type: string format: uuid description: Filter by employment ID. - in: query name: from_start_date required: false schema: type: string format: date-time description: 'Filter for paystubs with a `paystub_date` on or after this timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). ' - in: query name: to_start_date required: false schema: type: string format: date-time description: 'Filter for paystubs with a `paystub_date` on or before this timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). ' - in: query name: limit required: false schema: type: integer description: 'Number of paystubs objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' - in: query name: cursor required: false schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/PartnerPaystub' /partners/v2/receipts: post: summary: Generate a receipt description: Returns a PDF listing all billable transactions associated with the user. requestBody: required: true content: application/json: schema: type: object properties: user: type: string format: uuid description: ID of the user. required: - user example: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 responses: '200': description: '' headers: Content-Type: description: Content type of response payload. schema: type: string example: application/pdf Content-Disposition: description: Response disposition with receipt filename. schema: type: string example: attachment; filename="receipt.pdf" Content-Length: description: Size of response payload in bytes. schema: type: integer example: 12345 content: application/pdf: schema: type: string format: binary examples: default: value: '200 OK Content-Type: application/pdf Content-Disposition: attachment; filename="receipt.pdf" Content-Length: 12345 [PDF binary stream omitted] ' /v2/vehicles/{id}: get: summary: Retrieve a vehicle description: Retrieves a vehicle object. parameters: - name: id in: path description: ID of the vehicle object to be retrieved. required: true schema: type: string format: uuid responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Vehicle' example: id: 01763a69-5cbe-2edb-ade1-5591157c354d account: 0187c66e-e7e5-811c-b006-2232f00f426a identification: AEWUQ7 make: Ford model: Mondeo type: car year: 1998 vin: QUICELDKTRQJ4S33C employer: GigAndGo created_at: '2023-02-09T13:42:03.966Z' updated_at: '2023-02-09T13:42:03.966Z' metadata: {} /v2/vehicles: get: summary: List all vehicles description: Returns a paginated list of all vehicle objects. parameters: - name: account in: query description: Filter by account ID. schema: type: string format: uuid - name: user in: query description: Filter by user ID. schema: type: string format: uuid - name: limit in: query description: 'Number of vehicle objects returned [per page](/api-guide/overview#pagination). Default: 10. Maximum: 200. ' schema: type: integer - in: query name: cursor schema: type: string description: The URL returned in `next` or `previous` used to retrieve another [page](/api-guide/overview#pagination) of results. responses: '200': description: '' content: application/json: schema: type: object properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/Vehicle' example: next: https://api-sandbox.argyle.com/v2/vehicles?cursor=ZXhhbXBsZV9jdXJzb3I previous: null results: - id: 0176364c-c8a2-4d43-2a12-7b4146a829a9 account: 0187c66e-e7e5-811c-b006-2232f00f426a identification: JASJ1Y make: Ford model: Focus type: car year: 2011 vin: W081C4YIZQYE55DSE employer: GigAntic created_at: '2023-02-09T13:28:11.427Z' updated_at: '2023-02-09T13:32:13.215Z' metadata: source: gig platform - id: 01763a69-5cbe-2edb-ade1-5591157c354d account: 0187c66e-e7e5-811c-b006-2232f00f426a identification: AEWUQ7 make: Ford model: Mondeo type: car year: 1998 vin: QUICELDKTRQJ4S33C employer: GigAndGo created_at: '2023-02-09T13:42:03.966Z' updated_at: '2023-02-09T13:42:03.966Z' metadata: {} components: securitySchemes: basicAuth: type: http scheme: basic description: Username = api_key_id, Password = api_key_secret schemas: Account: type: object example: id: 0187c66e-e7e5-811c-b006-2232f00f426a user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 employers: - Whole Goods item: item_123456789 source: thepayrollcompany created_at: '2023-01-30T12:53:22.561Z' updated_at: '2023-01-30T12:55:04.478Z' scanned_at: '2023-01-30T12:55:04.016Z' connection: status: connected error_code: null error_message: null updated_at: '2023-01-30T12:53:25.561Z' direct_deposit_switch: status: success error_code: null error_message: null updated_at: '2023-01-30T12:55:03.478Z' availability: shifts: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 94 available_from: '2020-04-11T12:53:27Z' available_to: '2023-01-25T00:00:00Z' gigs: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 217 available_from: '2020-04-11T12:53:27Z' available_to: '2023-01-25T00:00:00Z' paystubs: status: synced updated_at: '2023-01-30T12:55:03Z' available_count: 68 available_from: '2020-05-11T12:53:27Z' available_to: '2023-01-29T23:59:59Z' payroll_documents: status: synced updated_at: '2023-01-30T12:53:44.308Z' identities: status: synced updated_at: '2023-01-30T12:53:44.028Z' ratings: status: synced updated_at: '2023-01-30T12:55:03.359Z' vehicles: status: synced updated_at: '2023-01-30T12:53:44.321Z' deposit_destinations: status: synced updated_at: '2023-01-30T12:53:42.586Z' user_forms: status: in_progress updated_at: '2023-01-30T12:53:42.586Z' available_count: 0 files_count: 1 in_progress_count: 1 user_uploads: status: synced updated_at: '2023-01-30T12:54:41.621Z' files_count: 2 in_progress_count: 0 ongoing_refresh: status: enabled properties: id: type: string format: uuid description: Unique ID of the connected payroll account. user: type: string format: uuid description: ID of the user that connected the account. employers: type: array items: type: string description: 'Employers associated with the account. A single employer is usually returned per account. Exceptions can occur when an LLC and Co. version of the same employer is returned. ' item: type: string description: ID of the Item in Link through which the account was connected. source: type: string description: Payroll data source. Typically a third-party payroll system unless the employer uses an in-house system. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the user connected the account. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the account was last updated. An update occurs every time an account is scanned for new data, and when any values of the account object change (such as an updated connection status). scanned_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the account was last scanned for new data. A `null` value indicates the account was never connected. connection: type: object description: Object containing information about the account's connection status. properties: status: type: string enum: - connecting - connected - error description: 'Status of Argyle''s connection with the user''s payroll system. - `connecting` — The user submitted new or revised login credentials through Link and Argyle is establishing the connection. - `connected` — An account connection was successfully made. See the `availability` object for updates on initial data retrieval. - `error` — An [account connection error](/api-reference/account-connection-errors) has occurred. Data refreshes have been paused. ' error_code: type: string enum: - account_disabled - account_inaccessible - account_incomplete - account_nonunique - account_not_found - all_employers_connected - auth_method_temporarily_unavailable - auth_required - connection_unavailable - credentials_managed_by_organization - existing_account_found - expired_credentials - full_auth_required - insufficient_account_data - invalid_account_type - invalid_auth - invalid_credentials - invalid_employer_identifier - invalid_login_method - invalid_login_url - invalid_mfa - invalid_store_identifier - known_employer_redirect - login_attempts_exceeded - login_cancelled_by_the_user - login_gov_not_linked - mfa_attempts_exceeded - mfa_cancelled_by_the_user - mfa_exhausted - mfa_not_configured - mfa_timeout - multi_driver_account - ongoing_refresh_disabled - passkey_limit_reached - personal_data_access_not_granted - physical_mfa_unsupported - platform_temporarily_unavailable - platform_unavailable - service_unavailable - session_limit_reached - system_error - temporary_credentials - tos_required - trial_connections_exhausted - trial_period_expired - unrecognized_employer_email - unsupported_auth_type - unsupported_business_account - unsupported_language - unsupported_mfa_method - user_action_timeout description: The [account connection error](/api-reference/account-connection-errors) that occurred. error_message: type: string description: Description of the error. Common causes and troubleshooting steps can be found in account connection errors. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the connection status last changed. direct_deposit_switch: type: object description: Object containing deposit switch status information. properties: status: type: string enum: - idle - awaiting_confirmation - awaiting_user_action - awaiting_connection - scanning - updating - success - error description: 'Status of a deposit switch. - `idle` — The deposit switch process has not started. - `awaiting_confirmation` — The user started the deposit switch flow in Link but has not clicked "Confirm". - `awaiting_user_action` — The user has confirmed the deposit switch but needs to complete a multi-factor authentication (MFA) step. - `awaiting_connection` — Argyle is connecting to the user''s payroll system. - `scanning` — Argyle is scanning the user''s existing direct deposits before initiating the deposit switch. - `updating` — The deposit switch is in progress. - `success` — The deposit switch was successful. - `error` — A deposit switch error occurred, and the deposit switch could not be completed. ' error_code: type: string enum: - account_invalid - account_closed - account_blocked - confirmation_expired - confirmation_invalid - confirmation_timeout - deposit_account_mismatch - deposit_destination_unsupported - employer_unsupported - employer_account_invalid - employer_account_closed - employer_account_blocked - employer_confirmation_invalid - internal_server_error - invalid_request - item_invalid - name_mismatch - payroll_account_mismatch - temporarily_unavailable - terminate_flow - unauthorized - unexpected - user_input_required description: The deposit switch error that occurred. error_message: type: string description: Description of the error. Common causes and troubleshooting steps can be found in deposit switch errors. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the deposit switch status last changed. availability: type: object description: Object containing information on data availability for each of Argyle's data sets, and any user-uploaded documents or "can't find my income" response forms. properties: shifts: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true gigs: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true paystubs: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true payroll_documents: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true identities: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true ratings: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true vehicles: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true deposit_destinations: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true user_forms: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true user_uploads: allOf: - $ref: '#/components/schemas/AvailabilityItem' nullable: true ongoing_refresh: type: object description: Object containing the account's `ongoing_refresh` status (whether the account will be updated with new data after each [data refresh](/overview/ongoing-refresh#refresh-frequency)). properties: status: type: string enum: - enabled - disabled - idle description: 'The account''s `ongoing_refresh` status. - `idle` — This account never experienced a successful payroll connection — only uploading documents or only completing a "can''t find my income source" response form is not considered a successful payroll connection. - `enabled` — Ongoing refresh is currently enabled for this connected payroll account. - `disabled` — Ongoing refresh is currently disabled for this connected payroll account. Ongoing refresh can be [disabled manually](/api-reference/accounts#disable) via the API for individual accounts. ' AvailabilityItem: type: object description: 'Status of the account''s most recent data scan (initial data retrieval included) or [document upload](/api-reference/user-uploads) submission. - `in_progress` — A data scan is in progress, or a document was uploaded but not submitted. - `synced` — The most recent data scan of the account was successful, or an uploaded document was submitted. - `sync_failed` — Data retrieval during the most recent data scan failed, resulting in an [account connection error](/api-reference/account-connection-errors). ' properties: status: type: string enum: - in_progress - synced - sync_failed updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the most recent change to available data. available_count: type: integer description: 'Number of gig events, paystubs available, or response form submissions. During initial data retrieval, the `available_count` will increase until all data has been retrieved and `availability.status` becomes `synced`. ' files_count: type: integer description: Total number of uploaded documents. in_progress_count: type: integer description: Total number of documents uploaded or response forms in progress but not submitted. available_from: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the earliest gig or paystub available. available_to: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the latest gig or paystub available. DepositDestination: type: object example: id: 0176e1ea-60ca-c561-eb8e-6dcdb33b1b55 account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: Whole Goods destination_type: ach_deposit_account status: active allocation_type: percent currency: USD allocation_value: '100' method: Direct deposit ach_deposit_account: account_number: '123456780000' bank_name: NW Bank routing_number: '026010000' account_type: savings created_at: '2023-03-14T16:00:49.420Z' updated_at: '2023-03-14T16:00:49.420Z' metadata: null properties: id: type: string format: uuid description: Unique ID of the deposit destination. account: type: string format: uuid description: ID of the account associated with the deposit destination. employer: type: string description: Employer name. destination_type: type: string enum: - ach_deposit_account - card - acss_debit description: Destination where payouts are sent. status: type: string enum: - active - inactive - pending description: "Whether the deposit destination is currently set to receive\ \ payments.\n\nAdditional details for gig employers:\n`inactive` indicates\ \ the user added this card or bank account to the gig platform, but chose\ \ another preferred deposit destination in their payout settings.\n\n\ ---\n\n**Note:**\nDeposit destination details for individual payouts from\ \ gig employers are also listed within the [metadata](/api-reference/paystubs#object-metadata)\ \ object of the user's [paystubs](/api-reference/paystubs).\n\n```json\n\ // Example - payout to debit card:\n\n\"metadata\": {\n \"origin_type\"\ : \"DRIVER_DIRECT\",\n \"payout_on\": \"2022-06-28 21:15:04+00:00\",\n\ \ \"issue_info\": {\n \"description\": \"\",\n \"type\": \"UNKNOWN_ISSUE_TYPE\"\ \n },\n \"deposited_ot\": \"2321 Visa\",\n \"origin_period\": null,\n\ \ \"raw_type\": \"DRIVER_DIRECT\"\n}\n```\n\n```json\n// Example - payout\ \ to bank account:\n\n\"metadata\": {\n \"origin_type\": \"REGULAR\"\ ,\n \"payout_on\": \"2022-11-17 07:20:32+00:00\",\n \"issue_info\":\ \ {\n \"description\": \"\",\n \"type\": \"UNKNOWN_ISSUE_TYPE\"\n\ \ },\n \"deposited_ot\": \"5329 FIFTH SIXTH BANK\",\n \"origin_period\"\ : {\n \"start\": \"2022-11-14 14:06:29+00:00\",\n \"end\": \"2022-11-16\ \ 14:06:29+00:00\"\n },\n \"raw_type\": \"REGULAR\"\n}\n```\n" allocation_type: type: string enum: - percent - amount description: Whether payments sent to this deposit destination are a percentage or amount of the user's total pay. currency: type: string description: 'Currency ([ISO 4217](https://en.wikipedia.org/wiki/ISO_4217)) in which payouts are sent to the deposit destination. ' allocation_value: type: string description: 'What `percent` or `amount` of the user''s pay is being allocated to this deposit destination. Numerical values are used for *exact* amounts or percentages, and `remainder` is used when this deposit destination is receiving a remainder amount after pay is allocated to all other deposit destinations. ' method: type: string description: Payment method, such as direct deposit. ach_deposit_account: type: object description: 'Details for deposit destinations with a `destination_type` of `ach_deposit_account`, which pertains to U.S. bank accounts. ' properties: account_number: type: string description: Bank account number. May be obfuscated depending on the payroll system. bank_name: type: string description: 'Name of the bank, as returned by the payroll system. Some payroll systems will override the `bank_name` included in your target deposit destination configuration and instead use a bank name they derive from another source, such as the routing number of the account. ' routing_number: type: string description: Routing number of the bank account. account_type: type: string description: The type of bank account. card: type: object description: 'Details for deposit destinations with a `destination_type` of `card`, which pertains to debit cards or similar cards that can receive payouts. ' properties: card_number: type: string description: Card number. Typically obfuscated. card_name: type: string description: Card name or vendor. Typically Visa or MasterCard. is_platform_card: type: boolean description: Whether the card is directly issued by a platform such as Uber or Lyft. acss_debit: type: object description: 'Details for deposit destinations with a `destination_type` of `acss_debit`, which pertains to Canadian bank accounts that use the Automated Clearing Settlement System (ACSS). ' properties: account_number: type: string description: Bank account number. May be obfuscated depending on the payroll system. account_type: type: string description: The type of bank account. institution_number: type: string description: 3-digit code that identifies the user's bank. transit_number: type: string description: 5-digit code that identifies the bank branch. created_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the deposit destination object was created. ' updated_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the deposit destination object most recently changed. ' metadata: type: object description: Additional, non-categorized information. Employer: type: object example: id: item_000000003 name: GigAndGo logo_url: argyle.com/image-holdings kind: gig mapping_status: verified status: healthy properties: id: type: string description: Unique ID of the [Item](/api-reference/items). ID format — `item_123456789` name: type: string description: Name of the Item. logo_url: type: string description: URL location of the Item's logo image file. kind: type: string enum: - employer - gig - platform - benefits description: 'Type of Item. - `employer` — individual employer - `gig` — gig platform - `platform` — payroll provider platform - `benefits` — government benefits ' mapping_status: type: string enum: - verified - mapped - unmapped description: 'Verification status of the Item. - `verified` — The payroll system associated with the Item is known, and the Item has previously experienced a successful connection that returned paystub data. - `mapped` — The payroll system associated with the Item is known, but the Item is awaiting a successful connection. - `unmapped` — The payroll system associated with this Item is not yet known. If an unmapped Item is selected in Link, the user will be given the option to search for the relevant payroll system and attempt to connect using their login credentials. ![](/images/argyle-guides/api-ref/items/1-mapping-status.png) ' status: type: string enum: - healthy - issues - unavailable description: 'Health status of the Item. - `healthy` — Normal service. - `issues` — Impacted service. New account connections still supported. - `unavailable` — Impacted service. New account connections not supported. [Ongoing refresh](/overview/ongoing-refresh) paused. ' Employment: type: object example: id: 0183d52a-d3b2-331d-c753-3662a20e352b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 account: 0187c66e-e7e5-811c-b006-2232f00f426a created_at: '2023-01-30T12:53:24.561Z' employer: Whole Goods employment_status: active origin: retrieved properties: id: type: string format: uuid description: 'Unique ID of the employment. Can be used to filter the following data sets: - [Identities](/api-reference/identities#list) - [Paystubs](/api-reference/paystubs#list) - [Payroll Documents](/api-reference/payroll-documents#list) ' account: type: string format: uuid description: ID of the account associated with the employment. user: type: string format: uuid description: ID of the user associated with the employment. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the employment object was created. employer: type: string description: Employer name on the most recent paystub associated with the employment. employment_status: type: string enum: - active - inactive - terminated description: 'Job status of the employment. `inactive` and `terminated` definitions vary by Item and can overlap. `inactive` typically indicates the employee left voluntarily, is on leave, or has not been active for a certain period of time. `terminated` typically indicates the employee is no longer employed. Specific reasons for termination, if available, are returned in the `termination_reason` field. We recommend using data from the `/paystubs` and `/gigs` endpoints to construct a more wholistic timeline of employment history. ' origin: type: string enum: - retrieved - acquired description: 'Whether the employment was defined by the connected payroll system or paystubs. - `retrieved` — Employment defined by the connected payroll system. - `acquired` — Employment defined by retrieved paystubs. ' Gig: type: object example: id: 0187dbfa-6f5e-a33a-af26-7e12ff408fea account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: GigAndGo created_at: '2023-03-08T08:31:37.037Z' updated_at: '2023-03-08T08:31:37.037Z' status: completed type: delivery task_count: 2 start_datetime: '2023-03-08T08:08:57Z' end_datetime: '2023-03-08T08:31:36Z' all_datetimes: request_at: '2023-03-08T08:08:57Z' accept_at: '2023-03-08T08:09:38Z' pickup_at: '2023-03-08T08:12:57Z' dropoff_at: '2023-03-08T08:31:36Z' cancel_at: null shift_start: null shift_end: null breaks: null duration: 2659 timezone: America/New_York earning_type: work start_location: lat: '40.65932120164202' lng: '-73.8526246331782' formatted_address: 201 North W St, New York, NY 10014, US end_location: lat: '40.689177462234504' lng: '-73.89453884284752' formatted_address: 102 South E St, New York, NY 10002, US task_details: events: - order_id: null sequence: '1' type: accept name: null formatted_address: 201 North W St, New York, NY 10014, US lat: '40.65932120164202' lng: '-73.89453884284752' datetime: '2023-03-08T08:09:38Z' - order_id: '1' sequence: '2' type: pickup name: Healthy Snacks formatted_address: 150 East N St, New York, NY 10014, US lat: '40.673422892136178' lng: '-73.88931269893891' datetime: '2023-03-08T08:12:57Z' - order_id: '2' sequence: '3' type: pickup name: Gourmet Desserts formatted_address: 182 East N St, New York, NY 10014, US lat: '40.673523811763259' lng: '-73.86335212657626' datetime: '2023-03-08T08:12:57Z' - order_id: null sequence: '4' type: dropoff name: null formatted_address: 102 South E St, New York, NY 10002, US lat: '40.689177462234504' lng: '-73.89453884284752' datetime: '2023-03-08T08:31:36Z' orders: - order_id: '1' sequence: '1' income: currency: USD total_charge: '34.75' customer_price: '26.38' fees: '8.37' total: '19.96' pay: '22.28' tips: null bonus: '0.00' other: '-2.32' - order_id: '2' sequence: '2' income: currency: USD total_charge: '7.25' customer_price: '7.25' fees: null total: '4.30' pay: '4.30' tips: '0.00' bonus: '0.00' other: null distance: '1.80' distance_unit: miles metadata: income.other: name: 'Taxes: Withholding tax' value: '-15.32' circumstances: is_pool: false is_rush: false is_surge: true service_type: Comfort Ride position: null income: currency: USD total_charge: '42.00' customer_price: '33.68' fees: '8.37' total: '30.68' pay: '26.58' tips: '6.42' bonus: '0.00' other: '-2.32' income_rates: hour: '92.70' mile: '20.20' properties: id: type: string format: uuid description: Unique ID of the gig assignment. account: type: string format: uuid description: Unique ID of the account associated with the gig assignment. employer: type: string description: Employer name. created_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the gig object was created. ' updated_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the gig object most recently changed. ' status: type: string enum: - scheduled - in_progress - completed - cancelled description: Current state of the gig assignment. type: type: string enum: - delivery - rideshare - hourly - services description: The type of gig assignment. task_count: type: integer description: 'Number of discrete tasks in the gig assignment. **Note:** When `task_count` is greater than 1 (e.g. two pickups in one delivery), the gig object contains aggregated values for the entire gig assignment. Individual task-level details can be found in the [`task_details`](https://docs.argyle.com/api-reference/gigs#object-task_details) object. ' start_datetime: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the gig assignment started. ' end_datetime: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the gig assignment ended. ' all_datetimes: type: object description: Other timestamps related to the gig assignment. properties: request_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the gig assignment was created. ' accept_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the gig assignment was accepted. ' pickup_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when "package" (rider, food, or similar) was obtained. ' dropoff_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when "package" (rider, food, or similar) was delivered. ' cancel_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the gig assignment was cancelled. ' shift_start: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the work shift started. ' shift_end: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the work shift ended. ' breaks: type: array items: type: object properties: break_start: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the break started. ' break_end: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the break ended. ' duration: type: integer description: Total time of the gig assignment (in seconds). timezone: type: string description: 'Timezone ([IANA](https://www.iana.org/time-zones)) where the gig assignment took place. ' earning_type: type: string enum: - offer - work - incentive - adjustment - other description: The earnings category. start_location: type: object description: Starting location information for the gig assignment. properties: lat: type: string description: 'Latitude ([ISO 6709](https://en.wikipedia.org/wiki/ISO_6709)) where the gig assignment started. ' format: degrees lng: type: string description: 'Longitude ([ISO 6709](https://en.wikipedia.org/wiki/ISO_6709)) where the gig assignment started. ' format: degrees formatted_address: type: string description: Full address of where the gig assignment started. end_location: type: object description: Ending location information for the gig assignment. properties: lat: type: string format: degrees description: 'Latitude ([ISO 6709](https://en.wikipedia.org/wiki/ISO_6709)) where the gig assignment ended. ' lng: type: string format: degrees description: 'Longitude ([ISO 6709](https://en.wikipedia.org/wiki/ISO_6709)) where the gig assignment ended. ' formatted_address: type: string description: Full address of where the gig assignment ended. task_details: type: object description: Task-level details for the gig assignment. properties: events: type: array description: Geographical information and timestamps. items: type: object properties: order_id: type: string description: 'Argyle-added reference ID. Connects `events` to `orders`. **Note:** Only available if the underlying gig platform provides a clear link between events and their associated orders (monetary charges). ' sequence: type: string description: 'Counter starting at 1. The sequential ordering of each event, as represented by the gig platform. ' type: type: string enum: - request - accept - pickup - dropoff - other - cancel description: The type of event. name: type: string description: 'Name associated with the geographical location. **Note:** Primarily available for delivery platforms, where name is the pickup establishment (i.e. restaurant name). ' formatted_address: type: string description: Full address of the geographical location. lat: type: string description: 'Latitude ([ISO 6709](https://en.wikipedia.org/wiki/ISO_6709)) of the geographical location. ' lng: type: string description: 'Longitude ([ISO 6709](https://en.wikipedia.org/wiki/ISO_6709)) of the geographical location. ' datetime: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the event. ' orders: type: array description: Payment and earnings information. items: type: object properties: order_id: type: string description: 'Argyle-added reference ID. Connects `orders` to `events`. ' sequence: type: string description: 'Counter starting at 1. The sequential ordering of each order, as represented by the gig platform. ' income: type: object description: Payment and earnings information for the order. properties: currency: type: string description: 'Currency code ([ISO 4217](https://en.wikipedia.org/wiki/ISO_4217)). ' total_charge: type: string description: Total amount charged to the customer. customer_price: type: string description: 'Amount the customer paid for the order, not including `fees` and `tips`. ' fees: type: string description: Fees charged to the gig employee by the gig platform. total: type: string description: 'Total earnings received by the gig employee ( `pay` + `tips` + `bonus` + `other` ). ' pay: type: string description: Earnings related to the assignment received by the gig employee. tips: type: string description: Tips received by the gig employee. bonus: type: string description: Bonus earnings received by the gig employee. other: type: string description: 'Other payments made or received by the gig employee. Common examples: refunds (tolls), taxes, partial cash payments, reimbursements, or miscellaneous payments categorized as "other". ' distance: type: string description: Distance traveled during the gig assignment. distance_unit: type: string enum: - miles - km description: Unit of the distance traveled. metadata: type: object description: 'Additional, non-categorized information. ' circumstances: type: object description: Metadata specific to the gig platform, such as whether the assignment occurred during peak hours. income: type: object description: Payment and earnings information for the gig assignment. properties: currency: type: string description: 'Currency code ([ISO 4217](https://en.wikipedia.org/wiki/ISO_4217)). ' total_charge: type: string description: Total amount charged to the customer. customer_price: type: string description: 'Amount the customer paid for the order, not including `fees` and `tips`. **Note:** Only available if directly returned by the gig platform. ' fees: type: string description: Fees charged to the gig employee by the gig platform. total: type: string description: 'Total earnings received by the gig employee ( `pay` + `tips` + `bonus` + `other` ). ' pay: type: string description: Earnings related to the assignment received by the gig employee. tips: type: string description: Tips received by the gig employee. bonus: type: string description: Bonus earnings received by the gig employee. other: type: string description: "Other payments made or received by the gig employee.\n\ \nCommon examples: refunds (tolls), taxes, partial cash payments,\ \ reimbursements, or miscellaneous payments categorized as \"other\"\ .\n\n**Note:**\n Additional details for other income are listed within\ \ metadata in the following format:\n\n ```json\n \"metadata\":\ \ {\n \"income.other\": {\n \"name\": \"Taxes: Withholding\ \ tax\",\n \"value\": \"-15.32\"\n }\n }\n ```\n" income_rates: type: object description: 'Amount earned by the gig employee per hour or per mile. **Note:** Values are not calculated, and are only returned if directly provided by the gig platform. ' properties: hour: type: string description: Earnings per hour. *Not calculated* mile: type: string description: Earnings per mile. *Not calculated* Address: type: object properties: city: type: string description: Name of the city, town, district, or similar regional entity. example: New York line1: type: string description: Address-Line 1, usually street address or P.O. Box information. example: 852 North W St line2: type: string description: Address-Line 2, usually the apartment or unit number. example: Apt 221 state: type: string description: State, county, province, region, or equivalent. example: NY country: type: string description: 'Two-letter country code [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format). ' example: US postal_code: type: string description: Zip code, or equivalent. example: '10014' BasePay: type: object properties: amount: type: string description: Defined pay amount per period. Does not include bonus, commission or similar incentive-based income. example: '58024.50' period: type: string enum: - hourly - daily - weekly - biweekly - semimonthly - monthly - annual - salary description: 'Payment interval that specifically corresponds to the base pay `amount`. - `hourly` - `daily` - `weekly` - `biweekly` — every two weeks - `semimonthly` — twice a month - `monthly` - `annual` - `salary` — only when explicitly mentioned and no other pay period information is present ' example: annual currency: type: string description: 'Pay currency ([ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code). ' example: USD PlatformIds: type: object properties: employee_id: type: string description: Internal user ID assigned by the employer. example: OB238HDW5 position_id: type: string description: Internal position ID assigned by the employer. example: 6ELL4O7PM platform_user_id: type: string description: ID assigned by the payroll system. example: JLH7B9V6O6YGN9O7 Identity: type: object example: id: 0153b145-7ab9-bea2-cc16-a8b71328942f account: 0187c66e-e7e5-811c-b006-2232f00f426a address: city: New York line1: 852 North W St line2: Apt 221 state: NY country: US postal_code: '10014' first_name: Sarah last_name: Longfield full_name: Sarah Longfield birth_date: '1980-10-30' email: sarah@email.com phone_number: '+12125555555' picture_url: www.argyle.com/logofoldername employment_status: active employment_type: full-time job_title: Store Manager ssn: 522-09-1191 marital_status: Married filing jointly gender: Female original_hire_date: '2019-01-03' hire_date: '2020-04-08' termination_date: null termination_reason: null employer: Whole Goods employment: 0183d52a-d3b2-331d-c753-3662a20e352b base_pay: amount: '58024.50' period: annual currency: USD pay_cycle: semimonthly platform_ids: employee_id: OB238HDW5 position_id: 6ELL4O7PM platform_user_id: JLH7B9V6O6YGN9O7 created_at: '2023-01-30T12:53:24.561Z' updated_at: '2023-01-30T12:55:06.478Z' metadata: null properties: id: type: string format: uuid description: Unique ID of the identity. example: 0153b145-7ab9-bea2-cc16-a8b71328942f account: type: string format: uuid description: ID of the account associated with the identity. example: 0187c66e-e7e5-811c-b006-2232f00f426a address: $ref: '#/components/schemas/Address' first_name: type: string description: First name of the employee. Usually the legal first name. example: Sarah last_name: type: string description: Last name of the employee. Usually the legal last name. example: Longfield full_name: type: string description: Full name of the employee. Sourced from payroll data if available, otherwise constructed from available names and suffixes. example: Sarah Longfield birth_date: type: string format: date description: 'Date of birth in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. If values are obfuscated (rare), a dash will replace the value (e.g. --01-31 when the year is obfuscated). ' example: '1980-10-30' email: type: string description: Email address. example: '[email protected]' phone_number: type: string description: 'Phone number [E.164](https://en.wikipedia.org/wiki/E.164) international format). ' example: '+12125555555' picture_url: type: string description: URL location of the user's profile image. example: www.argyle.com/logofoldername employment_status: type: string enum: - active - inactive - terminated description: "Job status of the employment relevant to the identity.\n\n\ - Definitions of `inactive` and `terminated` vary by Item and can overlap.\n\ \ - `inactive` typically indicates the employee left voluntarily, is\ \ on leave, or has not been active for a certain period of time.\n -\ \ `terminated` typically indicates the employee is no longer employed.\ \ Specific reasons for termination, if available, are returned in the\ \ `termination_reason` field.\n- We recommend using data from the `/paystubs`\ \ and `/gigs` endpoints to construct a more wholistic timeline of employment\ \ history.\n" example: active employment_type: type: string enum: - full-time - part-time - contractor - military - benefits - seasonal - temporary - regular - other description: "Type of employment.\n\n
\nEmployment type enum definitions\n\n- `full-time`\n\ \ - Employment in which an individual is regularly scheduled to work\ \ 30 or more hours per week, or meets the employer's internal threshold\ \ for a standard full-time workweek.\n - **Examples:** `full-time employee`,\ \ `36+ hours weekly`\n- `part-time`\n - Employment in which an individual\ \ is regularly scheduled to work fewer than 30 hours per week, or meets\ \ the employer's internal threshold for a standard part-time workweek.\n\ \ - **Examples:** `PT regular`, `20+ hours weekly`\n- `contractor`\n\ \ - Work performed by an individual engaged for a specific project or\ \ timeframe who is not an employee of the organization.\n - **Examples:**\ \ `gig worker`, `contract employee`, `contract worker`, `freelancer`\n\ - `military`\n - Compensation derived from active-duty or reserve military\ \ service.\n - *Automatically set for military platforms.*\n- `benefits`\n\ \ - Non-wage compensation or government-issued assistance.\n - *Automatically\ \ set for benefits platforms.*\n- `seasonal`\n - Employment that occurs\ \ at approximately the same time each year, typically lasting six months\ \ or less.\n - **Examples:** `seasonal on-call`, `seasonal part-time`,\ \ `peak seasonal`\n- `temporary`\n - Short-term employment with a defined\ \ end date, usually lasting one year or less.\n - **Examples:** `internship`,\ \ `substitute employee`, `temporary full-time`, `temporary part-time`\n\ - `regular`\n - Ongoing employment with no specified end date that does\ \ not fall into more specialized categories.\n - **Examples:** `permanent`,\ \ `W-2`, `salaried`\n- `other`\n - Work or income that does not fit standard\ \ classifications.\n - **Examples:** `variable`, `casual`, `employee`,\ \ `PRN (on-call)`\n\n
\n" example: full-time job_title: type: string description: Job title. example: Store Manager ssn: type: string description: Social Security number. example: 522-09-1191 marital_status: type: string description: Marital status. example: Married filing jointly gender: type: string description: Gender. example: Female original_hire_date: type: string format: date description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the user''s **earliest** employment start date. ' example: '2019-01-03' hire_date: type: string format: date description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the user''s **most recent** employment start date. `hire_date` may differ from `original_hire_date` due to a promotion, a re-hiring event, or similar. ' example: '2020-04-08' termination_date: type: string format: date nullable: true description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the user was terminated. example: null termination_reason: type: string nullable: true description: Reason for termination. example: null employer: type: string description: Name of the employer. example: Whole Goods employment: type: string description: '[Employment](/api-reference/employments) ID. Can be used as a filter when [listing identities](/api-reference/identities/list-all-identities). ' example: 0183d52a-d3b2-331d-c753-3662a20e352b base_pay: $ref: '#/components/schemas/BasePay' pay_cycle: type: string enum: - daily - weekly - biweekly - semimonthly - monthly - quarterly description: 'Payment frequency. - `daily` - `weekly` - `biweekly` — every two weeks - `semimonthly` — twice a month - `monthly` - `quarterly` ' example: semimonthly platform_ids: $ref: '#/components/schemas/PlatformIds' created_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the identity object was created. ' example: '2023-01-30T12:53:24.561594Z' updated_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the identity object most recently changed. ' example: '2023-01-30T12:55:06.478699Z' metadata: type: object description: Additional, non-categorized information. example: {} SendInviteRequest: type: object required: - first_name - last_name example: first_name: Sarah last_name: Longfield phone_number: 212-555-5555 email: sarah@email.com properties: first_name: type: string description: First name of the invite recipient. last_name: type: string description: Last name of the invite recipient. full_name: type: string deprecated: true description: 'Full name of the invite recipient. **Required when** `first_name` and `last_name` are empty. ' phone_number: type: string description: 'Phone number of the invite recipient. **Required when** `email` is empty. ' email: type: string description: 'Email address of the invite recipient. **Required when** `phone_number` is empty. ' external_id: type: string description: '[External identifier](/overview/data-structure/users#external-identifiers) often used to group users. Will populate the `external_id` property of the [user object](/api-reference/users#object-external_id), and can be used to search for users within the [Connections](https://console.argyle.com/connections) section of Console. ' flow_id: type: string description: 'ID used to [customize](/console/flows/email-sms-templates) the user''s experience in Link. **Warning:** Must be the ID of an [Email/SMS Template](/console/flows/email-sms-templates). ' flow_items: type: array items: type: string description: 'List of specific Items to display to the invite recipient. Instead of full search, [direct login](/workflows/account-connections#direct-login) will be used (one Item) or [list](/workflows/account-connections#list) (multiple Items). **Warning:** `flow_items` will override direct login Items associated with the `flow_id`. ' dds_config: type: object description: 'Unencrypted target deposit destination configuration. Adds a deposit switching flow after the user connects their payroll accounts. ' override_invite_template: type: object deprecated: true description: 'Overrides the text and branding of the email/SMS template specified via the [`flow_id`](/api-reference/invites#send-flow_id) property (or default invite settings, if no templates exist). Also provides a way to Cc members of your team to be notified by email when the user has connected their payroll account(s) by using the `reply_to` parameter. ' properties: brand: type: object properties: color: type: string description: HEX color code. logo: type: string description: URL to a logo. email: type: object properties: reply_to: type: array items: type: string description: Emails to notify after a user connects an account. subject: type: string sender: type: string header: type: string subheader: type: string body_text_icon_1: type: string description: URL to an icon. body_text_header_1: type: string body_text_subheader_1: type: string body_text_icon_2: type: string description: URL to an icon. body_text_header_2: type: string body_text_subheader_2: type: string body_text_icon_3: type: string description: URL to an icon. body_text_header_3: type: string body_text_subheader_3: type: string sms_text: type: string landing_page: type: object properties: header: type: string subheader: type: string step_1: type: string step_2: type: string step_3: type: string flow_id: type: string description: 'ID used to [customize](/console/flows/embedded-experiences) the user''s experience in Link. **Warning:** Must be the ID of an [embedded experience](/console/flows/embedded-experiences). Any `flow_id` included outside of this object will take priority. ' success_page: type: object properties: header: type: string subheader: type: string button_text: type: string button_url: type: string InviteObject: type: object example: id: 0424137bc-edc5-35de-c1b5-1c3cddb4b227 user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 user_token: bcJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWEiOiIxNDRhMTRkNS04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2ODc3OTMzODAsImZpZCI6IjUyYWM3ZFFiLTI1MzAtNGYyNy04NTZlLTkwOTk1ZDA4NWJkMCIsImlhdCI6MTY4Nzc4OTc4MCwiaXNzIjoiYXJneWxlLWNvcmUtYXV1aC1kZXYiLCJqdGkiOiI2ZWJiOGIxMS0wYzFjLTRiNjEtYmI5NS04ZGQ0YzA0OGQwNzUiLCJzdWIiOiIwMTg4ZjgxYy0zZTFkLTRlZDEtMjEyYy02NmE3YzE4YzVjYzMiLCJ1c2VyX2lkIjoiMDE4OGY4MWMtM2UxZC00ZWQxLTIxMmMtNjZhN2MxN2M1Y2MzIn0.TNiZojOiiXtPVamyCDjz4f2GwR4TA8x6JR3RwjTECjY email: sarah@email.com phone_number: 212-555-5555 full_name: Sarah Longfield first_name: Sarah last_name: Longfield revoked_at: null status: sent group_id: d8a07e5b-13a3-11ef-af7e-c7eb00762562 url: https://verify.argyle.com/connect/0424137bc-edc5-35de-c1b5-1c3cddb4b227 created_at: '2023-03-09T23:57:05.756Z' updated_at: '2023-03-09T23:57:05.756Z' invited_at: '2023-03-09T23:57:05.756Z' flow_id: 8DRRA4XC flow_items: - item_000000001 - item_000000002 reply_to: - person1@email.com - person2@email.com deliveries: - id: d7c85e44-9729-11f0-b297-f3718e19503e method: email status: sent sent_at: '2023-03-09T23:57:24.000Z' updated_at: '2023-03-09T23:57:24.000Z' invite_template_id: null properties: id: type: string format: uuid description: Unique ID of the invite. example: 0424137bc-edc5-35de-c1b5-1c3cddb4b227 user: type: string format: uuid description: ID of the user. example: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 user_token: type: string description: '[User token](/link/user-tokens) required to initialize embedded instances of Link for the user. **Warning:** This user token will expire after one hour. A new user token can be created at any time using the [/user-tokens](/api-reference/user-tokens#create) API endpoint. ' example: bcJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRfaWEiOiIxNDRhMTRkNS04YzEzLTQzZGYtOTI4Ni01OWY4NjFkOWEyMDIiLCJleHAiOjE2ODc3OTMzODAsImZpZCI6IjUyYWM3ZFFiLTI1MzAtNGYyNy04NTZlLTkwOTk1ZDA4NWJkMCIsImlhdCI6MTY4Nzc4OTc4MCwiaXNzIjoiYXJneWxlLWNvcmUtYXV1aC1kZXYiLCJqdGki2eJiZGI4YTExMS0wYzFjLTRiNjEtYmI5NS04ZGQ0YzA0OGQwNzUiLCJzdWIiOiIwMTg4ZjgxYy0zZTFkLTRlZDEtMjEyYy02NmB3YzE4YzVjYzMiLCJ1c2VyX2lkIjoiMDE4OGY4MWMtM2UxZC00ZWQxLTIxMmMtNjZhN2MxN2M1Y2MzIn0.TNiZojOiiXtPVamyCDjz4f2GwR4TA8x6JR3RwjTECjY email: type: string description: Email of the invite recipient. example: sarah@email.com phone_number: type: string description: Phone number of the invite recipient. example: 212-555-5555 full_name: type: string deprecated: true description: Full name of the invite recipient. example: Sarah Longfield first_name: type: string description: First name of the invite recipient. example: Sarah last_name: type: string description: Last name of the invite recipient. example: Longfield revoked_at: type: string format: date-time nullable: true description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the invite was revoked. example: null status: type: string enum: - sent - initiated - attempted - completed - revoked description: 'The invite''s status. - `sent` — Invite sent successfully. - `initiated` — User clicked the invite URL and was successfully able to enter Link, but has not submitted login credentials, uploaded documents, or completed a response form. - `attempted` — User submitted login credentials through Link (creating a user ID), but no accounts were successfully connected. Also includes users who only submitted a response form. - `completed` — User successfully connected an account or uploaded a document. - `revoked` — The invite was [revoked](/api-reference/invites#revoke-invite). The user can no longer access Link via the invite URL. ' group_id: type: string format: uuid nullable: true description: ID of the [group](/console/management/groups) associated with the invite. example: d8a07e5b-13a3-11ef-af7e-c7eb00762562 url: type: string description: URL included in the invite that connects the user to Link. example: https://verify.argyle.com/connect/0424137bc-edc5-35de-c1b5-1c3cddb4b227 created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the invite was created. example: '2023-03-09T23:57:05.756Z' updated_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the invite was updated. **Warning:** The timestamp is updated after re-sending or revoking an invite. ' example: '2023-03-09T23:57:05.756Z' invited_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the invite was sent. **Warning:** The timestamp is updated after re-sending or revoking an invite. ' example: '2023-03-09T23:57:05.756Z' flow_id: type: string nullable: true description: ID of the Flow specified via the `flow_id` parameter when sending the invite. example: 8DRRA4XC flow_items: type: array items: type: string nullable: true description: Any Items specified via the `flow_items` parameter when sending the invite. example: - item_000000001 - item_000000002 reply_to: type: array items: type: string nullable: true description: 'Emails of your team members that will be notified when the user has connected their payroll account(s). Depending on the invite method, these emails are sourced from: 1. If sending invites via the API, the `reply_to` parameter of the `override_invite_template` object. 2. If sending invites [via Console](/console/flows/email-sms-templates#sending-invites), the Console member that sends the invite and any Cc''d members of your team. 3. If sending invites via Argyle''s POS & LOS integrations ([Encompass](/integrations/pos-los/encompass/payroll-verifications), [Empower](/integrations/pos-los/empower), or [nCino](/integrations/pos-los/ncino)), the email address of the Loan Officer sending the invite. 4. If sending links to Argyle using [Shareable URLs](/console/flows/shareable-urls), any emails saved in the email notifications toggle of "General settings" of the associated [Shareable URL Flow](https://console.argyle.com/flows). 5. If sending links to Argyle using [Shareable URLs with URL modifications](/console/flows/shareable-urls#url-modifications), the email overwrite specified at the end of the URL. ' deliveries: type: array description: Array of objects containing information about the delivery status of the invite. items: $ref: '#/components/schemas/InviteDelivery' invite_template_id: type: string format: uuid nullable: true deprecated: true description: '(Deprecated) Customization ID. - Deprecated in favor of [`override_invite_template`](/api-reference/invites#send-override_invite_template).' example: null InviteDelivery: type: object properties: id: type: string format: uuid description: Unique ID of the invite delivery. method: type: string enum: - email - sms description: Invite delivery method. status: type: string enum: - sent - delivered - undelivered - opened description: Status of the invite delivery. sent_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the invite was sent. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the delivery status was last updated. Item: type: object example: id: item_000000001 name: Whole Goods kind: employer known_limitations: First 5 digits of SSN obfuscated. status: healthy status_details: null logo_url: argyle.com/image-holdings is_grouping: false mapping_status: verified features: data_retrieval: refresh_frequency: 5h field_coverage: identities: first_name: supported: true last_name: supported: true '...': supported: true paystubs: hours_ytd: supported: false paystub_period: start_date: supported: true end_date: supported: true '...': supported: true payroll_documents: '...': supported: true deposit_destinations: '...': supported: true shifts: '...': supported: true gigs: '...': supported: true vehicles: '...': supported: true ratings: '...': supported: true direct_deposit_switch: card: supported: true max_allocations: '3' deposit_account: types: - ach_deposit_account supported: true max_allocations: '2' amount_allocation: false percent_allocation: true amount_precision: null percent_precision: '0.01' properties: id: type: string description: 'Unique ID of the Item. ID format — `item_123456789` ' name: type: string description: Name of the Item. kind: type: string enum: - employer - gig - platform - benefits description: Type of Item. known_limitations: type: string nullable: true description: 'Known limitations of the Item, such as historical data limits, unique behavior, or degree of value obfuscation. Otherwise `null`. ' status: type: string enum: - healthy - issues - unavailable description: 'Health status of the Item. - `healthy` — Normal service. - `issues` — Impacted service. New account connections still supported. - `unavailable` — Impacted service. New account connections not supported. [Ongoing refresh](/overview/ongoing-refresh) paused. ' status_details: type: string nullable: true description: 'Additional details on the Item''s health status, such as degraded account connection ability or paused [ongoing refresh](/overview/ongoing-refresh). Otherwise `null`. ' logo_url: type: string description: URL location of the Item's logo image file. is_grouping: type: boolean description: '`true` if the Item does not directly support account connections, but instead acts as a container for other Items. ' mapping_status: type: string enum: - verified - mapped - unmapped description: 'Verification status of the Item. - `verified` — The payroll system associated with the Item is known, and the Item has previously experienced a successful connection that returned paystub data. - `mapped` — The payroll system associated with the Item is known, but the Item is awaiting a successful connection. - `unmapped` — The payroll system associated with this Item is not yet known. If an `unmapped` Item is selected in Link, the user will be given the option to search for the relevant payroll system and attempt to connect using their login credentials. ' matching_score: type: string description: 'Confidence score based on the degree of similarity between the Item and the search term. Ranges from "1.00" (strong match) to "0.01" (weak match). `matching_score` is only returned when [listing Items](/api-reference/items#list) and is only applicable when the `q` "free-text search" [query parameter](/api-reference/items#list-q) is used. ' features: type: object description: 'What data fields the Item supports, the Item''s deposit switching capabilities, and how often the Item is refreshed with new data. *Only returned when* [retrieving individual Items](/api-reference/items#retrieve) *by Item ID.* ' properties: data_retrieval: type: object description: Details on how often the Item is re-scanned for new data. properties: refresh_frequency: type: string description: 'How often the Item is re-scanned to check for new data, which is used to update all accounts connected to this Item. Rounded up to the nearest hour, in the format `#hr`. *`null` values indicate [ongoing data refreshes](/overview/ongoing-refresh) have temporarily been suspended. Check the Item''s health [status](#object-status) and [status_details](#object-status_details) for more information.* ' field_coverage: type: object description: 'Contains information on whether the Item returns data for a particular property within one of Argyle''s data sets. *Does not include object ID''s, account ID''s, or metadata. `null` values are returned for properties of new or uncommon Items until a determination on data availability can be made.* ' properties: identities: type: object description: All data fields of the [identity object](/api-reference/identities#object). paystubs: type: object description: All data fields of the [paystub object](/api-reference/paystubs#object). payroll_documents: type: object description: All data fields of the [payroll document object](/api-reference/payroll-documents#object). deposit_destinations: type: object description: All data fields of the [deposit destination object](/api-reference/deposit-destinations#object). shifts: type: object description: All data fields of the [shift object](/api-reference/shifts#object). gigs: type: object description: All data fields of the [gig object](/api-reference/gigs#object). vehicles: type: object description: All data fields of the [vehicle object](/api-reference/vehicles#object). ratings: type: object description: All data fields of the [rating object](/api-reference/ratings#object). direct_deposit_switch: type: object description: Contains information on the Item's deposit switch capabilities. properties: card: type: object description: Employer supports payouts to debit cards. properties: supported: type: boolean description: '`true` if the Item supports payouts to debit cards. Generally applies to gig platforms, where users can send instant payouts to debit cards. ' max_allocations: type: string format: integer description: Number of debit cards that can be added to the Item's underlying platform. deposit_account: type: object description: Direct deposit capabilities. properties: types: type: array items: type: string description: 'The types of bank accounts supported. Only `ach_deposit_account` (U.S. deposit account) is currently supported. ' supported: type: boolean description: '`true` if the Item supports deposit switching.' max_allocations: type: string format: integer description: Number of total bank accounts supported by the Item's underlying platform. amount_allocation: type: boolean description: '`true` if the Item''s direct deposit settings support using exact amounts to define how pay is allocated to different bank accounts.' percent_allocation: type: boolean description: '`true` if the Item''s direct deposit settings support using exact percentages of total pay to define how pay is allocated to different bank accounts.' amount_precision: type: string nullable: true description: 'What level of precision is allowed when setting amount allocations. - `100` - `10` - `1` — e.g. $52 or $53 - `0.10` - `0.01` — e.g. $52.05 or $52.06 - `null` Null values indicate the platform does not specify an exact level of precision. ' percent_precision: type: string nullable: true description: 'What level of precision is allowed when setting percentage allocations. - `100` - `10` - `1` — e.g. 52% or 53% - `0.10` - `0.01` — e.g. 52.05% or 52.06% - `0.001` - `0.0001` - `null` Null values indicate the platform does not specify an exact level of precision. ' OpenBankingBankAccount: type: object additionalProperties: true example: id: '8057637863' user: 01975b3b-5ba6-3ec1-2148-f595b6d92614 account_number_display: '2203' name: Savings type: savings aggregation_status_code: 0 status: active institution: '102168' aggregation_success_date: '2026-06-04T16:57:26.000Z' aggregation_attempt_date: '2026-06-04T16:57:26.000Z' created_date: '2026-06-04T16:57:17.000Z' currency: USD institution_login: 8029158291 display_position: 1 parent_bank_account: null linked_account_date: '2026-06-04T16:57:22.000Z' error_code: null error_message: null real_account_number_last4: '2203' balance: 22327.3 balance_date: '2026-06-04T16:57:26.000Z' last_updated_date: '2026-06-04T16:57:22.000Z' market_segment: personal last_transaction_date: '2026-06-04T16:57:23.000Z' oldest_transaction_date: '2024-06-08T12:00:00.000Z' properties: id: type: string description: ID of the bank account. user: type: string format: uuid description: ID of the user associated with the bank account. account_number_display: type: string description: Display account identifier. name: type: string description: Account name. type: type: string description: Bank account type. enum: - checking - savings - cd - moneyMarket - creditCard - lineOfCredit - investment - investmentTaxDeferred - employeeStockPurchasePlan - ira - 401k - roth - 403b - 529plan - rollover - ugma - utma - keogh - 457plan - 401a - brokerageAccount - educationSavings - healthSavingsAccount - pension - profitSharingPlan - roth401k - sepIRA - simpleIRA - thriftSavingsPlan - variableAnnuity - cryptocurrency - mortgage - loan - studentLoan - studentLoanGroup - studentLoanAccount aggregation_status_code: type: integer description: 'Status code of the most recent aggregation attempt. See [Aggregation status codes](/api-reference/bank-accounts#aggregation-status-codes). ' status: type: string description: Bank account status. enum: - pending - active institution: type: string description: ID of the financial institution. aggregation_success_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the last successful aggregation for the account. aggregation_attempt_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the last aggregation attempt for the account, whether successful or not. created_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) for when the bank account was created. currency: type: string description: Currency code. institution_login: type: integer description: ID of the institution login. display_position: type: integer description: Display position of the account at the financial institution. parent_bank_account: type: string description: ID of the parent bank account. linked_account_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) for when the account was linked. error_code: type: string description: Bank connection error code. error_message: type: string description: Bank connection error message. real_account_number_last4: type: string description: Last four digits of the account number. balance: type: number description: Account balance amount. balance_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) for when the balance was recorded. last_updated_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) for when the account was last updated. market_segment: type: string enum: - personal - business description: Indicates whether the account is personal or business. last_transaction_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the latest transaction. oldest_transaction_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the oldest transaction. BankingReportRequest: type: object properties: user: type: string format: uuid description: ID of the user. webhook: type: string format: uri description: Webhook URL to receive report-related [Connect Events](/api-reference/banking-overview#connect-events). bank_accounts: type: array items: type: string description: List of [bank account](/api-reference/bank-accounts) IDs to be included in the report. from_date: type: string format: date-time description: 'Restrict report to data from on or after this datetime ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). - `VOAI` reports - controls the length of asset history - `VOA` reports - controls the length of asset history - `VOI` reports - controls the length of income history ' income_from_date: type: string format: date-time description: 'Restrict report to data from on or after this datetime ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). - `VOAI` reports - controls the length of income history - Does not apply to `VOA` or `VOI` reports. ' report_custom_fields: type: array maxItems: 5 description: Include up to `5` custom objects in the report metadata. Often used for identifying information. items: $ref: '#/components/schemas/BankingReportCustomField' income_stream_confidence_minimum: type: integer minimum: 0 maximum: 100 description: 'Limit income streams used in the report to those above this confidence value (`0-100` accepted). Only available for `VOI` and `VOAI` report types. ' required: - user BankingReportCustomField: type: object properties: label: type: string description: Custom field name. value: type: string description: Custom field value. shown: type: boolean description: Show custom field on report PDF. BankingReport: type: object description: Report object. example: id: cde25bb1-5cf4-4544-9df8-04212a781e1b user: 01975b3b-5ba6-3ec1-2148-f595b6d92614 reference_id: cde25bb1-5cf4-4544-9df8-04212a781e1b generated_at: '2025-06-10T20:39:35.000Z' created_at: '2025-06-10T20:39:35.000Z' type: voai status: generated file_url: www.argyle.com/storagename/pdf json_url: www.argyle.com/storagename/json accounts: [] last_synced_at: null external_id: null source: open-banking metadata: origin_report_id: 5u6fx59dnw4b bank_accounts_requested: - '8057637863' from_date: '1970-01-19T17:30:50.000Z' report_custom_fields: - label: loanID value: '12345' shown: true income_stream_confidence_minimum: 50 properties: id: type: string format: uuid description: Unique ID of the report object. user: type: string format: uuid description: ID of the user associated with the report. reference_id: type: string format: uuid deprecated: true description: Report PDF identifier. generated_at: type: string format: date-time deprecated: true description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the report was requested. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the report was requested. type: type: string enum: - voa - voi - voai description: 'The type of report. - `voa` - Verification of Assets - `voi` - Verification of Income - `voai` - Verification of Assets and Income ' status: type: string enum: - generating - generated description: 'Progress of report generation. - `generating` - The report is being generated. - `generated` - The report is ready to download. ' file_url: type: string description: Download link to the report PDF. Requires [Argyle authentication headers](/api-guide/overview#authentication). json_url: type: string description: Download link to the report in JSON. Requires [Argyle authentication headers](/api-guide/overview#authentication). accounts: type: array description: Not used in banking reports. items: type: object additionalProperties: true last_synced_at: type: string format: date-time nullable: true description: Not used in banking reports. external_id: type: string nullable: true description: The [`external_id`](/api-reference/users#object-external_id) of the user, otherwise `null`. source: type: string description: The source of the report data. metadata: type: object description: Additional info. PayrollDocument: type: object example: id: 0176dc14-bb37-402a-7be1-f5261759fae7 account: 0187c66e-e7e5-811c-b006-2232f00f426a document_number: ced46eb3-7586-3cd7-2418-8eb9482bc3ec available_date: '2021-03-14T17:46:25Z' expiration_date: null employer: GigAndGo employment: 42d6531c-520a-26b9-35c3-b7137a6d205a document_type: '1099' document_type_description: 1099 Form 2020 file_url: api.argyle.com/partners/v2/payroll-documents/{id}/file created_at: '2023-03-13T17:46:28.240Z' updated_at: '2023-03-13T17:46:28.240Z' ocr_data: form_type: 1099-MISC omb_no: 1545-0115 year: '2020' form: recipient: name: BOB JONES address: city: null country: null line1: 759 VICTORIA PLAZA line2: null postal_code: '10014' state: NY recipient_tin: 111-11-1112 payer: name: WAREHOUSE SERVICES INC address: city: SEATTLE country: null line1: 202 WESTLAKE AVE N (55 line2: null postal_code: '98109' state: WA payer_tin: 11-1111112 account_no: 000110CHIC/NHO rent_1: null royalties_2: null other_inc_3: null fed_inc_4: null fishing_5: null med_care_6: null comp_7: null crop_insurance_10: null golden_parachute_13: null gross_attorney_14: null sec_409a_defer_15a: null sec_409a_inc_15b: null state_tax_16: null state_no_17: null state_inc: null warnings: - field_name: rent_1 message: rent_1 value empty/bad format severity: 0 - field_name: royalties_2 message: royalties_2 value empty/bad format severity: 0 - field_name: other_inc_3 message: other_inc_3 value empty/bad format severity: 0 - field_name: fed_inc_4 message: fed_inc_4 value empty/bad format severity: 0 - field_name: fishing_5 message: fishing_5 value empty/bad format severity: 0 - field_name: med_care_6 message: med_care_6 value empty/bad format severity: 0 - field_name: comp_7 message: comp_7 not found severity: 0 - field_name: crop_insurance_10 message: crop_insurance_10 value empty/bad format severity: 0 - field_name: golden_parachute_13 message: golden_parachute_13 value empty/bad format severity: 0 - field_name: gross_attorney_14 message: gross_attorney_14 value empty/bad format severity: 0 - field_name: sec_409a_defer_15a message: sec_409a_defer_15a value empty/bad format severity: 0 - field_name: sec_409a_inc_15b message: sec_409a_inc_15b not found severity: 0 - field_name: state_tax_16 message: state_tax_16 value empty/bad format severity: 0 - field_name: state_no_17 message: state_no_17 value empty/bad format severity: 0 - field_name: state_inc message: state_inc value empty/bad format severity: 0 confidence: EXACT_MATCH ocr_page_count: 1 metadata: null properties: id: type: string format: uuid description: 'Unique ID of the payroll document object. Also the `payroll_document` ID value of the [paystub object](/api-reference/paystubs#object). ' account: type: string format: uuid description: ID of the account where the payroll document was sourced. document_number: type: string description: Identification number that appears on the payroll document. available_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the payroll document was made available to the user on the underlying payroll system. expiration_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when payroll document (such as a driver's license) expires. employer: type: string description: Employer name. employment: type: string description: '[Employment](/api-reference/employments) ID. Can be used as a filter when [listing payroll documents](/api-reference/partners-data-sets/list-all-payroll-documents). ' document_type: type: string description: The type of payroll document, as returned by the payroll system. The following values are the most common, but document_type is not restricted to these values. enum: - payout-statement - W-2 - W-4 - W-9 - 1095 - 1095-C - 1099 - profile-picture - drivers-license - vehicle-insurance - vehicle-registration - vehicle-inspection - other document_type_description: type: string description: Description of the payroll document type. file_url: type: string description: "URL linking to the original payroll document file.\n\nThis\ \ static URL redirects to a download page that requires [Argyle authentication\ \ headers](/api-guide/overview#authentication). See the dropdown below\ \ for more information.\n\n**Implementation requirements for client-side\ \ applications**\n 1. Ensure your HTTP client or library (e.g. Axios,\ \ Python requests, etc.) or similar tool is configured to pursue redirects.\ \ Most tools support this functionality.\n\n 2. [Basic authentication\ \ headers](https://docs.argyle.com/api-guide/overview#authentication)\ \ for Argyle must be appended to the file download request.\n" created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the payroll document object was created. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the payroll document object most recently changed. ocr_data: type: object description: 'Argyle scans and provides additional information for 1099 and W-2 documents retrieved from connected payroll accounts. ' properties: form_type: type: string description: "The specific type of 1099 or W-2 document.\n\n **W-2\ \ and W-2c**\n W-2: Wage and Tax Statement\n W-2c: Corrected\ \ Wage and Tax Statement\n\n - **`control_no_d`**: Identifies the\ \ W-2 in the payer's records. \n - **`comp_1`**: The amount of\ \ wages, tips, and other compensation. \n - **`fed_income_tax_2`**:\ \ The amount of federal income tax withheld. \n - **`ss_wages_3`**:\ \ The amount of social security wages. \n - **`ss_tax_4`**: The\ \ amount of social security tax withheld. \n - **`med_wages_5`**:\ \ The amount of Medicare wages and tips. \n - **`med_tax_6`**:\ \ The amount of Medicare tax withheld. \n - **`ss_tips_7`**: The\ \ amount of social security tips. \n - **`tips_8`**: The amount\ \ of allocated tips. \n - **`verification_9`**: Code used to identify\ \ the accuracy of the form's contents for electronic tax returns.\ \ \n - **`benefits_10`**: The amount of dependent care benefits.\ \ \n - **`nonqualified_11`**: The amount of contributions made\ \ to a non-qualified savings plan. \n - **`uncollected_ss_RRTA_12a`**:\ \ The amount of uncollected social security or RRTA tax on tips. \ \ \n - **`uncollected_med_tax_12b`**: The amount of uncollected\ \ Medicare tax on tips. \n - **`insurance_12c`**: The amount of\ \ taxable costs of group-term life insurance over $50,000. \n \ \ - **`plan_401k_12d`**: The amount of elective deferrals related\ \ to contributions to 401-k plans. \n - **`other_14`**: Used to\ \ report additional tax information. \n - **`employers_state_15`**:\ \ Lists the states for which the employer withheld the taxes and to\ \ which state the employer remitted the taxes, indicated by the employer's\ \ state ID number. \n - **`state_wages_16`**: The amount of state\ \ wages, tips, etc. \n - **`state_income_tax_17`**: The amount\ \ of state income tax. \n - **`local_wages_18`**: The amount of\ \ local wages, tips, etc. \n - **`local_income_tax_19`**: The\ \ amount of local income tax. \n - **`locality_name_20`**: The\ \ name of the locality where taxes indicated in the `local_income_tax_19`\ \ field are paid. \n\n **1099-NEC**\n 1099-NEC: Non-Employee\ \ Compensation\n\n - **`account_no`**: A code that is unique to\ \ the recipient and the form, for example, a bank account number,\ \ employee ID, etc. \n - **`comp_1`**: The amount of non-employee\ \ compensation. \n - **`fed_inc_tax_4`**: The amount of federal\ \ income tax withheld. \n - **`state_tax_5`**: The amount of state\ \ tax withheld. \n - **`state_no_6`**: The abbreviated name of\ \ the state and the payer's state tax identification number. \n \ \ - **`state_inc_7`**: The amount of state income. \n\n **1099-SSA**\n\ \ 1099-SSA: Social Security Benefits\n\n - **`recipient_name_1`**:\ \ The name of the recipient. \n - **`benefits_3`**: The amount\ \ of benefits paid. \n - **`benefits_ssa_4`**: The amount of benefits\ \ repaid to the Social Security Administration (SSA). \n - **`net_benefits_5`**:\ \ The amount of net benefits. \n - **`fed_inc_tax_6`**: The amount\ \ of voluntary federal income tax withholding. \n - **`claim_no`**:\ \ The social security number under which a claim is filed or benefits\ \ are paid. \n\n **1099-MISC**\n 1099-MISC: Miscellaneous Income\n\ \n - **`account_no`**: A code that is unique to the recipient and\ \ the form, for example, a bank account number, employee ID, etc.\ \ \n - **`rent_1`**: The amount of rental income. \n - **`royalties_2`**:\ \ The amount of royalty income. \n - **`other_inc_3`**: Other\ \ income. \n - **`fed_inc_4`**: The amount of federal income tax\ \ withheld. \n - **`fishing_5`**: The amount of fishing boat proceeds.\ \ \n - **`med_care_6`**: The amount of medical and health care\ \ payment. \n - **`comp_7`**: The amount of non-employee compensation.\ \ \n - **`crop_insurance_10`**: The amount of crop insurance proceeds.\ \ \n - **`golden_parachute_13`**: The amount of excess golden\ \ parachute payments. \n - **`gross_attorney_14`**: The amount\ \ of gross proceeds paid to an attorney. \n - **`sec_409a_defer_15a`**:\ \ The amount of section 409A deferrals. \n - **`sec_409a_inc_15b`**:\ \ The amount of section 409A income. \n - **`state_tax_16`**:\ \ The amount of state tax withheld. \n - **`state_no_17`**: The\ \ abbreviated name of the state and the payer's state tax identification\ \ number. \n - **`state_inc`**: The amount of state income. \n\ \n **1099-INT**\n 1099-INT: Interest Income\n\n - **`payer_rtn`**:\ \ The payer's RTN (Routing and Transit Number). \n - **`account_no`**:\ \ A code that is unique to the recipient and the form, for example,\ \ a bank account number, employee ID, etc. \n - **`interest_1`**:\ \ The amount of interest income. \n - **`withdraw_penalty_2`**:\ \ The amount of early withdrawal penalty. \n - **`interest_obligations_3`**:\ \ The amount of interest earned on U.S. savings bonds or Treasury\ \ notes, bills, or bonds. \n - **`fed_inc_tax_4`**: The amount\ \ of federal income tax withheld. \n - **`investment_5`**: The\ \ amount of investment expenses. \n - **`foreign_tax_6`**: The\ \ amount of foreign tax paid. \n - **`foreign_possession_7`**:\ \ Shows the country or U.S. possession to which the foreign tax was\ \ paid. \n\n **1099-R**\n 1099-R: Distributions from Pensions\ \ and Annuities\n\n - **`control_no`**: The code that uniquely\ \ identifies a particular 1099-R document in the employer's records.\ \ \n - **`gross_1`**: The amount of gross distribution. \n \ \ - **`tax_amount_2a`**: The amount of distribution that is taxable.\ \ \n - **`fed_inc_tax_4`**: The amount of federal income tax withheld.\ \ \n - **`distribution_code_7`**: A code that identifies the type\ \ of distribution received. \n - **`distribution_percent_9`**:\ \ The percentage of total distribution received. \n - **`state_tax_14`**:\ \ The amount of state tax withheld. \n - **`state_no_15`**: The\ \ abbreviated name of the state and the payer's state tax identification\ \ number. \n\n **1099-G**\n 1099-G: Certain Government Payments\n\ \n - **`a_unemployment_comp_1`**: The amount of unemployment compensation.\ \ \n - **`a_state_inc_tax_2`**: The amount of state or local income\ \ tax refunds, credits, or offsets. \n - **`a_benefits_this_year_3`**:\ \ The amount of benefits repaid for the current year. \n - **`a_benefits_prev_year_3`**:\ \ The amount of benefits repaid for the previous year. \n - **`a_fed_inc_tax_4`**:\ \ The amount of federal income tax withheld. \n - **`b_unemployment_comp_1`**:\ \ The amount of unemployment compensation, paid family leave. \n\ \ - **`b_state_inc_tax_2`**: The amount of state or local income\ \ tax refunds, credits, or offsets. \n - **`b_benefits_this_year_3`**:\ \ The amount of benefits repaid for the current year. \n - **`b_benefits_prev_year_3`**:\ \ The amount of benefits repaid for the previous year. \n - **`b_fed_inc_tax_4`**:\ \ The amount of federal income tax withheld. \n\n **1099-K**\n \ \ 1099-K: Payment Card and Third Party Network Transactions\n\n\ \ - **`pse_name_phone`**: Payment settlement entity's name and\ \ telephone number. \n - **`account_no`**: A code that is unique\ \ to the recipient and the form, for example, a bank account number,\ \ employee ID, etc. \n - **`gross_1a`**: Gross amount of payment\ \ card/third-party network transactions. \n - **`gross_1b`**:\ \ The amount of Card Not Present transactions. \n - **`category_code_2`**:\ \ Merchant category code. \n - **`no_transactions_3`**: Number\ \ of payment transactions. \n - **`fed_inc_tax_4`**: The amount\ \ of federal income tax withheld. \n - **`january_5a`**: The total\ \ reportable payment transactions for this month. \n - **`february_5b`**:\ \ The total reportable payment transactions for this month. \n \ \ - **`march_5c`**: The total reportable payment transactions for\ \ this month. \n - **`april_5d`**: The total reportable payment\ \ transactions for this month. \n - **`may_5e`**: The total reportable\ \ payment transactions for this month. \n - **`june_5f`**: The\ \ total reportable payment transactions for this month. \n - **`july_5g`**:\ \ The total reportable payment transactions for this month. \n \ \ - **`august_5h`**: The total reportable payment transactions for\ \ this month. \n - **`september_5i`**: The total reportable payment\ \ transactions for this month. \n - **`october_5j`**: The total\ \ reportable payment transactions for this month. \n - **`november_5k`**:\ \ The total reportable payment transactions for this month. \n \ \ - **`december_5l`**: The total reportable payment transactions\ \ for this month. \n - **`state_6`**: State. \n - **`state_id_7`**:\ \ State identification number. \n - **`state_income_8`**: The\ \ amount of state income tax withheld. \n" enum: - W-2 - W-2c - 1099-NEC - 1099-SSA - 1099-MISC - 1099-INT - 1099-R - 1099-G - 1099-K omb_no: type: string description: OMB reference number. year: type: string description: Calendar year. form: type: object description: Information scanned from the payroll document. properties: recipient: type: object properties: name: type: string description: Recipient name, as it appears on the form. address: type: object description: Recipient address, as it appears on the form. properties: city: type: string description: Name of the city, town, district, or similar regional entity. country: type: string description: Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format). line1: type: string description: Address-Line 1, usually street address or P.O. Box information. line2: type: string description: Address-Line 2, usually the apartment or unit number. postal_code: type: string description: Zip code, or equivalent. state: type: string description: State, county, province, region, or equivalent. recipient_tin: type: string description: Recipient's tax identification number. payer: type: object properties: name: type: string description: Payer name, as it appears on the form. address: type: object description: Payer address, as it appears on the form. properties: city: type: string description: Name of the city, town, district, or similar regional entity. country: type: string description: Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format). line1: type: string description: Address-Line 1, usually street address or P.O. Box information. line2: type: string description: Address-Line 2, usually the apartment or unit number. postal_code: type: string description: Zip code, or equivalent. state: type: string description: State, county, province, region, or equivalent. payer_tin: type: string description: Payer's tax identification number. warnings: type: array description: Information on scan quality and missing fields. items: type: object properties: field_name: type: string description: Which field encountered the error. message: type: string description: The `field_name` and warning message. enum: - not found - value empty/bad format - obfuscated - obfuscated last two digits given - obfuscated last four digits given - 'field_name had non numeric chars removed, original value: ' - 'field_name invalid - non numeric value, original value: ' severity: type: number format: float description: 'The severity of the encountered issue. - `0.0`: The field was found, but its value was unclear or obfuscated. - `0.5`: A field or value was not found, but unclear if it needed to be present. - `1.0`: A field or value was not found. ' enum: - 0.0 - 0.5 - 1.0 confidence: type: string description: "Indicator of how successful the scanning process went.\n\ \n- **`EXACT_MATCH`**: No errors found. \n- **`HIGH`**: 1 error was\ \ found. \n- **`MEDIUM`**: 2 errors were found. \n- **`LOW`**: 3\ \ errors were found. \n- **`NO_MATCH`**: 4 or more errors were found.\ \ This typically indicates the document's `form_type` did not match\ \ the scanned document. \n" enum: - EXACT_MATCH - HIGH - MEDIUM - LOW - NO_MATCH ocr_page_count: type: integer description: Number of pages scanned. error: type: string description: "An error was encountered during document retrieval.\n\n\ - **`invalid_document`**: The document was empty, cropped, missing\ \ required fields, or otherwise incomplete. \n- **`type_mismatch`**:\ \ The document does not match the classified type. \n- **`unrecognized_document_type`**:\ \ The document could not be classified. \n- **`unsupported_document_type`**:\ \ The document type is not supported. \n- **`unsupported_document_subtype`**:\ \ The document sub-type (e.g., 1099-C) is not supported. \n- **`unknown`**:\ \ An unknown issue occurred. The Argyle team will automatically be\ \ notified and will investigate. \n" enum: - invalid_document - type_mismatch - unrecognized_document_type - unsupported_document_type - unsupported_document_subtype - unknown nullable: true metadata: type: object description: Additional, non-categorized information. Paystub: type: object example: id: 0187dc99-63be-bc96-51bf-af6b51d43687 account: 0187c66e-e7e5-811c-b006-2232f00f426a payroll_document: 0186eb89-2e52-b3c5-ac6d-05e7debb2aff deduction_list: - amount: '38.10' name: 401K tax_classification: pre_tax amount_ytd: '139.70' - amount: '25.40' name: Garnishment tax_classification: post_tax amount_ytd: '76.20' - amount: '25.40' name: Garnishment tax_classification: post_tax amount_ytd: '101.60' filing_status: - type: federal location: null status: married filing separately - type: state location: NY status: married filing separately tax_list: - amount: '88.91' name: Federal Withholding type: federal amount_ytd: '850.99' - amount: '139.72' name: Social Security Tax type: fica amount_ytd: '381.04' status: completed paystub_date: '2023-03-12T00:00:00Z' paystub_period: start_date: '2023-02-28T00:00:00Z' end_date: '2023-03-07T00:00:00Z' currency: USD gross_pay: '1607.63' deductions: '88.90' taxes: '228.63' net_pay: '1290.10' reimbursements: '0.00' hours: '49.60' fees: null net_pay_ytd: '12714.18' gross_pay_ytd: '15730.10' employer: Whole Goods employment: 0186a27d-e5c6-735a-a359-6315b34d544c employer_address: city: New York line1: 852 North W St line2: Apt 221 state: NY country: US postal_code: '10014' created_at: '2023-03-13T19:53:57.122Z' updated_at: '2023-03-13T19:53:57.122Z' destinations: - reference: CHECKING *********2201 amount: '1290.10' method: direct deposit ach_deposit_account: bank_name: NW Regional routing_number: null account_number: '*********2201' card: null hours_ytd: '422.00' deductions_ytd: '533.40' taxes_ytd: '2502.17' gross_pay_list: - name: Regular type: base start_date: '2023-02-28' end_date: '2023-03-07' rate: '25.6088' hours: '49.5977' amount: '1270.14' hours_ytd: '422.0000' amount_ytd: '13971.54' - name: Commission type: commission start_date: '2023-03-04' end_date: '2023-03-04' rate: null hours: null amount: '337.49' hours_ytd: null amount_ytd: '1758.56' gross_pay_list_totals: base: amount: '1270.14' amount_ytd: '13971.54' hours: '49.5977' hours_ytd: '422.0000' rate_implied: '25.6100' rate_implied_ytd: '33.1100' overtime: null commission: amount: '337.49' amount_ytd: '1758.56' hours: null hours_ytd: null rate_implied: null rate_implied_ytd: null bonus: null other: null metadata: null properties: id: type: string format: uuid description: Unique ID of the paystub object. account: type: string format: uuid description: ID of the account associated with the paystub. payroll_document: type: string format: uuid description: 'ID of the [payroll document object](/api-reference/payroll-documents#object) associated with this paystub. ' deduction_list: type: array items: $ref: '#/components/schemas/Deduction' description: An itemized list of deductions listed on the paystub. Each object corresponds to one line item. filing_status: type: array items: $ref: '#/components/schemas/FilingStatus' description: Information on the user's filing status. tax_list: type: array items: $ref: '#/components/schemas/Tax' description: An itemized list of tax withholdings listed on the paystub. Each object corresponds to one line item. status: type: string enum: - completed - scheduled - cancelled - excluded description: 'Payment status of the paystub. - `completed` — Payment has been made to the user. - `scheduled` — Payment is scheduled to be made to the user. - `cancelled` — Payment was cancelled, and was not nor will be paid to the user. - `excluded` — Tag used for dummy/sample/watermarked/test paystubs present in the account. These paystubs are excluded when generating reports and other calculations and should not be considered proof of income. ' paystub_date: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the payment date, sourced from the paystub. ' paystub_period: type: object properties: start_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the start of the work period. end_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the end of the work period. description: Start date and end date of the work period. currency: type: string description: Currency code ([ISO 4217](https://en.wikipedia.org/wiki/ISO_4217)). gross_pay: type: string description: Total gross pay from the paystub period before taxes or deductions. deductions: type: string description: Total amount of deductions from the paystub period. taxes: type: string description: Total tax amount from the paystub period. net_pay: type: string description: Net pay (gross pay minus taxes and deductions) from the paystub period. reimbursements: type: string description: Total reimbursement amount from the paystub period. hours: type: string description: Total hours worked during the paystub period. fees: type: string description: Total fees incurred during the paystub period. net_pay_ytd: type: string description: Net pay year-to-date, including this paystub. gross_pay_ytd: type: string description: Gross pay year-to-date, including this paystub. employer: type: string description: Employer name. employment: type: string description: '[Employment](/api-reference/employments) ID. Can be used as a filter when [listing paystubs](/api-reference/paystubs/list-all-paystubs). ' employer_address: type: object properties: city: type: string description: Name of the city, town, district, or similar regional entity. line1: type: string description: Address-Line 1, usually street address or P.O. Box information. line2: type: string description: Address-Line 2, usually the apartment or unit number. state: type: string description: State, county, province, region, or equivalent. country: type: string description: Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format). postal_code: type: string description: Zip code, or equivalent. description: Object containing employer address information, sourced from the paystub. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the paystub object was created. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the paystub object most recently changed. destinations: type: array items: $ref: '#/components/schemas/Destination' description: Contains information on where and how pay was delivered to the user. hours_ytd: type: string description: Total hours worked year-to-date, including this paystub's work period. deductions_ytd: type: string description: Total deductions year-to-date, including amounts from this paystub. taxes_ytd: type: string description: Total taxes year-to-date, including amounts from this paystub. gross_pay_list: type: array items: $ref: '#/components/schemas/GrossPay' description: An itemized list of gross pay listed on the paystub. Each object corresponds to one line item. gross_pay_list_totals: type: object properties: base: $ref: '#/components/schemas/GrossPayTotal' overtime: $ref: '#/components/schemas/GrossPayTotal' commission: $ref: '#/components/schemas/GrossPayTotal' bonus: $ref: '#/components/schemas/GrossPayTotal' other: $ref: '#/components/schemas/GrossPayTotal' description: 'Sums the values of `gross_pay_list` objects based on their `type`: * **base** = base + pto * **overtime** = overtime * **commission** = commission * **bonus** = bonus * **other** = disability + benefits + tips + stock + other ' metadata: type: object description: Additional, non-categorized information. Deduction: type: object properties: amount: type: string description: Amount of the deduction. name: type: string description: Name or description of the deduction. tax_classification: type: string enum: - pre_tax - post_tax description: 'Tax classification. - `pre_tax` - `post_tax` ' amount_ytd: type: string description: Total amount deducted year-to-date, including the amounts from this paystub. FilingStatus: type: object properties: type: type: string enum: - federal - state - local description: 'Tax authority. - `federal` - `state` - `local` ' location: type: string description: 'Local jurisdiction. Values depend on `type`. - if type is `federal` — `null` - if type is `state` — state abbreviation code - if type is `local` — city name or area code ' status: type: string description: Marital status. Tax: type: object properties: amount: type: string description: Amount of the tax withholding. name: type: string description: Name or description of the tax withholding. type: type: string enum: - federal - state - local - fica - other description: 'Payroll tax type. - `federal` - `state` - `local` - `fica` - `other` ' amount_ytd: type: string description: 'Total tax withholdings year-to-date (specific to the tax `type`), including the amounts from this paystub. ' Destination: type: object properties: reference: type: string description: Describes where the payment was sent, such as a checking account or bank name. amount: type: string description: Pay amount sent to the destination. method: type: string description: Payment method, such as direct deposit. ach_deposit_account: type: object properties: bank_name: type: string description: Name of the bank account. routing_number: type: string description: Routing number of the bank account. account_number: type: string description: Account number of the bank account. description: Details for bank account destinations. card: type: object properties: name: type: string description: Name of the card where the payout was sent. number: type: string description: Card number. description: Details for payout card destinations. GrossPay: type: object properties: name: type: string description: Name or description of the gross pay line item. type: type: string enum: - base - pto - overtime - commission - bonus - disability - benefits - tips - stock - other description: 'Categorized type of gross pay, based on `name`. Used in `gross_pay_list_totals`. - `base` - `pto` - `overtime` - `commission` - `bonus` - `disability` - `benefits` - `tips` - `stock` - `other` ' start_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the start of the work period. end_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the end of the work period. rate: type: string description: Hourly rate of gross pay earnings for this line item. hours: type: string description: Hours worked for this line item. amount: type: string description: Gross pay earned from this line item. hours_ytd: type: string description: Total hours worked year-to-date related to this gross pay line item, including this paystub's work period. amount_ytd: type: string description: Total gross pay earned year-to-date related to this gross pay line item, including this paystub. GrossPayTotal: type: object properties: amount: type: string description: Gross pay earned from line items of this type. amount_ytd: type: string description: Total gross pay earned year-to-date from line items of this type, including this paystub. hours: type: string description: Hours worked from line items of this type. hours_ytd: type: string description: Hours worked year-to-date from line items of this type, including this paystub. rate_implied: type: string description: Calculated ratio of `amount` to `hours` of gross pay list totals. rate_implied_ytd: type: string description: Calculated ratio of `amount_ytd` to `hours_ytd` of gross pay list totals. Rating: type: object example: id: 0176a5bd-6ed4-1a21-8661-32bc3546e6de account: 0187c66e-e7e5-811c-b006-2232f00f426a rating: '4.98' acceptance_rate: '0.91' ontime_rate: '0.94' achievements: - count: 3 label: excellent_service points: null metadata: null badge_url: www.partner.com/badgeinfo description: Excellent Service - count: 1 label: great_amenities points: null metadata: null badge_url: www.partner.com/badgeinfo description: Great Amenities rewards: - program_name: Driver Rewards Program tier: Elite valid_through: '2026-05-15' points: '117' employer: GigAndGo created_at: '2023-03-15T13:19:55.723Z' updated_at: '2023-03-15T13:19:55.723Z' metadata: null properties: id: type: string format: uuid description: Unique ID of the rating object. account: type: string format: uuid description: ID of the account associated with the rating object. rating: type: string description: A normalized average of the user's ratings between 0 and 5. Overall average, as payroll system do not typically provide ratings information for individual events. acceptance_rate: type: string description: Percent of the time the user accepts a task. Decimal between 0 and 1. ontime_rate: type: string description: Percent of the time the user completes a task on time. Decimal between 0 and 1. achievements: type: array items: type: object description: Individual ratings or achievement information, sorted into relevant key:value pairs. Varies by gig platform. rewards: type: array description: Rewards program information. items: type: object properties: program_name: type: string description: Name of the rewards program. tier: type: string description: Current rewards program tier or status. valid_through: type: string description: Date until the current tier or status is valid. points: type: string description: Points earned in the current rewards period. employer: type: string description: Name of the user's employer. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the rating object was created. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the rating object most recently changed. metadata: type: object description: Additional, non-categorized information. Report: type: object example: id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 reference_id: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b generated_at: '2023-03-09T16:22:06.081Z' created_at: '2023-03-09T16:22:06.081Z' type: voie status: generated file_url: www.argyle.com/storagename/pdf json_url: www.argyle.com/storagename/json last_synced_at: '2023-03-09T14:08:25.069Z' accounts: - id: 0187c66e-e7e5-811c-b006-2232f00f426a item: item_123456789 last_synced_at: '2023-03-09T14:08:25.069105Z' - id: 0185a8b8-60eb-80ca-7482-5f24504573f7 item: item_000000001 last_synced_at: '2023-03-01T05:10:59.558295Z' metadata: {} external_id: July_Connection properties: id: type: string format: uuid description: 'Unique ID of the report object. Also the "**Reference #**" on the report PDF. ' user: type: string format: uuid description: ID of the user associated with the report. reference_id: type: string format: uuid description: Report PDF identifier. deprecated: true generated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the report was requested. deprecated: true created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the report was requested. type: type: string enum: - voe - voie - voe-mortgage - voie-mortgage description: 'The type of report. - `voie` - Verification of Income and Employment - `voe` - Verification of Employment - `voie-mortgage` - Verification of Income and Employment, integrated with Fannie Mae''s Desktop Underwriter (DU) validation service and Freddie Mac''s asset and income modeler (AIM) - `voe-mortgage` - Verification of Employment, integrated with Fannie Mae''s Desktop Underwriter (DU) validation service and Freddie Mac''s asset and income modeler (AIM) ' status: type: string enum: - waiting_for_sync - generating - generated - failed description: 'Progress of report generation. - `waiting_for_sync`: Data from the connected payroll account is still being retrieved. - `generating`: The report is being generated. - `generated`: The report is ready to download. - `failed`: A system error occurred, preventing report generation. ' file_url: type: string description: 'Download link to the report PDF. This static URL redirects to a download page that requires [Argyle authentication headers](/api-guide/overview#authentication). See the dropdown below for more information. Implementation requirements for client-side applications: ' json_url: type: string description: 'Download link to the report in JSON. This static URL redirects to a download page that requires [Argyle authentication headers](/api-guide/overview#authentication). See the dropdown below for more information. ' last_synced_at: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the account used to generate the report was last scanned for new data before the report was generated. If multiple accounts were used, the more recent timestamp. Used to populate the "Data as of" date on the report PDF. ' accounts: type: array items: type: object properties: id: type: string format: uuid description: ID of the account. item: type: string description: ID of the Item in Link through which the account was connected. last_synced_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the account was last scanned for new data before the report was generated. description: The accounts used to generate the report. metadata: type: object description: Any metadata for internal use added when generating the report. external_id: type: string description: The [external_id](/api-reference/users#object-external_id) of the user, otherwise `null`. Shift: type: object example: id: 0183d245-b5c1-2a6d-5e37-1b831d765c5d account: 0187c66e-e7e5-811c-b006-2232f00f426a employer: Whole Goods created_at: '2023-04-27T07:02:01.279Z' updated_at: '2023-04-27T07:02:01.279Z' status: completed type: hourly start_datetime: '2023-04-26T00:00:00Z' end_datetime: '2023-04-26T08:00:00Z' all_datetimes: shift_start: '2023-04-26T00:00:00Z' shift_end: '2023-04-26T08:00:00Z' breaks: - break_start: '2023-04-26T03:36:00Z' break_end: '2023-04-26T04:24:00Z' hours: '7.2' timezone: America/New_York location: 302 East N St, New York, NY 10014, US metadata: null properties: id: type: string format: uuid description: Unique ID of the shift. account: type: string format: uuid description: Unique ID of the account associated with the shift. employer: type: string description: Employer name. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the shift object was created. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the shift object most recently changed. status: type: string enum: - scheduled - in_progress - completed - cancelled description: Current state of the shift. type: type: string enum: - hourly - services description: The type of shift. start_datetime: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the shift started. end_datetime: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the shift ended. all_datetimes: type: object description: Contains information on when the shift started and ended, and any breaks taken in between. properties: shift_start: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the shift started. shift_end: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the shift ended. breaks: type: array items: type: object properties: break_start: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the break started. break_end: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the break ended. hours: type: string description: Time duration of the shift, subtracting breaks. Up to four decimal places. timezone: type: string description: Timezone ([IANA](https://www.iana.org/time-zones)) where the shift took place. location: type: string description: Full address of where the shift took place. metadata: type: object description: Additional, non-categorized information. UserForm: type: object example: id: 0186ef31-4a6c-bc77-ffb7-a9db11505d7d account: 0182c1e2-59ec-16ba-34e2-4f20594a7df7 data: income_source: Block & Fish Tackle payroll_provider: Payroll Corp. created_at: '2023-03-17T10:50:30.414Z' updated_at: '2023-03-17T10:50:31.621Z' properties: id: type: string format: uuid description: Unique ID of the user form. account: type: string format: uuid description: ID of the account associated with the user form. data: type: object properties: income_source: type: string description: User response entered into the `Income source` input field. example: Block & Fish Tackle payroll_provider: type: string description: User response entered into the `Payroll provider (optional)` input field. example: Payroll Corp. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the user form was submitted. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the user form object was last updated. CreateUserTokenRequest: type: object properties: user: type: string format: uuid description: ID of the user object. required: - user CreateUserTokenResponse: type: object properties: user_token: type: string description: The generated user token. UserUpload: type: object example: id: 01320596-2c3d-189c-53e7-a8ce6d625b33 account: 01856c65-43b6-8b5d-b32a-56b8fbda5c28 document_type: proof-of-identity file_url: www.argyle.com/storagename file_name: my_drivers_license.pdf metadata: employment: null ocr_data: null ocr_authenticity: null ocr_authenticity_score: null processing: classification: unauthorized ocr: unauthorized authenticity: unauthorized created_at: '2024-07-08T13:43:49.864Z' updated_at: '2024-07-08T13:43:51.868Z' properties: id: type: string format: uuid description: Unique ID of the uploaded document. account: type: string format: uuid description: ID of the account associated with the uploaded document. document_type: type: string description: 'The document [category](/workflows/document-processing#enabling-document-uploads) in Link the user selected, or the `document_type` provided when [uploading via the API](/api-reference/user-uploads#upload). If [OCR processing](/integrations/ocr/ocrolus) is enabled, this value is overwritten when the document is found to be a different type. Possible values: - `paystubs` - `W-2` - `1099` - `proof-of-identity` - `proof-of-address` - `miscellaneous` ' file_url: type: string description: 'URL linking to the original uploaded document file. This static URL redirects to a download page that requires [Argyle authentication headers](/api-guide/overview#authentication). **Implementation requirements for client-side applications** 1. Ensure your HTTP client or library (for example, Axios or Python requests) is configured to follow redirects. 2. Append [Basic authentication headers](/api-guide/overview#authentication) for Argyle to the file download request. ' file_name: type: string description: File name of the uploaded document on the user's computer or phone. metadata: type: object description: Contains document OCR and authenticity information. properties: employment: type: object deprecated: true description: Contains document verification data. ocr_data: type: object description: 'Contains [Ocrolus OCR](/integrations/ocr/ocrolus#api) data. Available for paystubs, W-2s, and 1099s when Ocrolus is enabled. ' ocr_authenticity: type: object description: 'Contains [Ocrolus authenticity](/integrations/ocr/ocrolus#api) data. Includes individual instances of tampering or other authenticity-related edits made to the uploaded document that were detected. Available for paystubs, W-2s, and 1099s when Ocrolus is enabled. ' ocr_authenticity_score: type: integer description: '[Ocrolus authenticity score](/integrations/ocr/ocrolus#authenticity-scores). Single score that captures the likelihood the uploaded document is authentic, as determined by Ocrolus. Available for paystubs, W-2s, and 1099s when Ocrolus is enabled. ' processing: type: object description: Contains OCR processing statuses. properties: classification: type: string enum: - unauthorized - idle - in_progress - completed - failed description: 'OCR classification processing status. - `unauthorized`: Classification permissions are not enabled. - `idle`: Processing has not started. - `in_progress`: Processing is in progress. - `completed`: Processing successfully completed. - `failed`: Processing failed. ' ocr: type: string enum: - unauthorized - idle - in_progress - completed - failed description: 'Full OCR processing status. - `unauthorized`: Full OCR permissions are not enabled. - `idle`: Processing has not started. - `in_progress`: Processing is in progress. - `completed`: Processing successfully completed. - `failed`: Processing failed. ' authenticity: type: string enum: - unauthorized - idle - in_progress - completed - failed description: 'OCR authenticity processing status. - `unauthorized`: Full OCR permissions are not enabled. Full OCR permissions are required for authenticity. - `idle`: Processing has not started. - `in_progress`: Processing is in progress. - `completed`: Processing successfully completed. - `failed`: Processing failed. ' created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the uploaded document was submitted. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the user upload object was last updated. User: type: object properties: id: type: string format: uuid description: Unique ID of the user. example: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 created_at: type: string format: date-time description: Timestamp (ISO 8601) when the user object was created. example: '2023-01-30T22:25:38.971Z' items_connected: type: array items: type: string description: Items the user has connected through Link. Typically employers or payroll platforms. example: - item_123456789 - item_987654321 employers_connected: type: array items: type: string description: Individual employers associated with the connected Items. example: - Whole Goods - Bullseye external_metadata: type: object description: '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. ' example: notes: Moved to stage 2 of loan approval. category: Summer Initiative external_id: type: string description: 'Free-text field where [additional context](/overview/data-structure/users#external-identifiers) 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](/console/flows/email-sms-templates#inviting-new-users) or [shareable URLs](/console/flows/shareable-urls#customizations). - Can be used as a query parameter when [listing users](/api-reference/users#list). (Only exact matches are supported) - Can be used to search for specific users within the [Connections](https://console.argyle.com/connections) section of Console. - Will appear on billing CSVs if associated with a user. ' example: July_Connection first_name: type: string description: First name of the user. example: Sarah last_name: type: string description: Last name of the user. example: Longfield email: type: string description: Email of the user. example: sarah@email.com phone_number: type: string description: Phone number of the user. E.164 international format. example: '+12125555555' ssn: type: string description: Social Security number of the user. example: null address: type: object description: Address of the user. properties: city: type: string description: Name of the city, town, district, or similar regional entity. example: null line1: type: string description: Address-Line 1, usually street address or P.O. Box information. example: null line2: type: string description: Address-Line 2, usually the apartment or unit number. example: null state: type: string description: State, county, province, region, or equivalent. example: null country: type: string description: Two-letter country code (ISO 3166-1 alpha-2 format). example: null postal_code: type: string description: Zip code, or equivalent. example: null birth_date: type: object description: Date of birth of the user. properties: year: type: integer description: Birth year (1900 or later). example: null month: type: integer description: Birth month (between 1 and 12). example: null day: type: integer description: Birth day (between 1 and 31). example: null ClientCreateUserResponse: type: object description: Response returned after creating a client user. properties: user_token: type: string description: Token associated with the created user. id: type: string format: uuid description: Unique ID of the user. ClientAddress: type: object description: Address of the user. properties: city: type: string description: Name of the city, town, district, or similar regional entity. line1: type: string description: Address-Line 1, usually street address or P.O. Box information. line2: type: string nullable: true description: Address-Line 2, usually the apartment or unit number. state: type: string description: State, county, province, region, or equivalent. country: type: string description: Two-letter country code (ISO 3166-1 alpha-2 format). postal_code: type: string nullable: true description: Zip code, or equivalent. ClientBirthDate: type: object description: Date of birth in year-month-day format. properties: year: type: integer description: Birth year (1900 or later). month: type: integer description: Birth month (between 1 and 12). day: type: integer description: Birth day (between 1 and 31). ClientOpenBankingEndUser: type: object description: Contains details about the person or entity making the lending decision. properties: name: type: string description: Name of the lender or entity. address: type: string description: Street address or P.O. Box information (include apartment or unit numbers). city: type: string description: Name of the city, town, district, or similar regional entity. state: type: string description: State, county, province, region, or equivalent. zip: type: string description: Zip code, or equivalent. phone: type: string description: Phone number of the lender or entity. ClientOpenBanking: type: object description: Banking-specific user metadata. properties: end_user: $ref: '#/components/schemas/ClientOpenBankingEndUser' ClientUserCreateRequest: type: object description: 'Request body for creating a client user. This matches the public `/v2/users` request shape. `external_metadata.suppress_verification = true` is recommended when manually orchestrating banking and document verification flows. ' properties: first_name: type: string description: User first name. last_name: type: string description: User last name. email: type: string description: User email address. phone_number: type: string description: User phone number. E.164 international format recommended. ssn: type: string description: User Social Security number. address: $ref: '#/components/schemas/ClientAddress' birth_date: $ref: '#/components/schemas/ClientBirthDate' external_metadata: type: object description: Additional metadata for internal workflows. additionalProperties: true open_banking: $ref: '#/components/schemas/ClientOpenBanking' external_id: type: string nullable: true description: External identifier for your internal mapping. ClientUserUpdateRequest: type: object description: Request body for updating a client user. properties: first_name: type: string description: User first name. last_name: type: string description: User last name. email: type: string description: User email address. phone_number: type: string description: User phone number. ssn: type: string description: User Social Security number. address: $ref: '#/components/schemas/ClientAddress' birth_date: $ref: '#/components/schemas/ClientBirthDate' external_metadata: type: object description: Additional metadata for internal workflows. additionalProperties: true open_banking: $ref: '#/components/schemas/ClientOpenBanking' external_id: type: string nullable: true description: External identifier for your internal mapping. ClientUser: type: object description: Client user object. properties: id: type: string format: uuid description: Unique ID of the user. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the user was created. items_connected: type: array items: type: string description: Items the user has connected through Link. employers_connected: type: array items: type: string description: Employers associated with the connected items. first_name: type: string description: User first name. last_name: type: string description: User last name. email: type: string description: User email address. phone_number: type: string description: User phone number. ssn: type: string description: User Social Security number. address: $ref: '#/components/schemas/ClientAddress' birth_date: $ref: '#/components/schemas/ClientBirthDate' external_metadata: type: object description: Additional metadata for internal workflows. additionalProperties: true external_id: type: string nullable: true description: External identifier for your internal mapping. ClientSessionCreateConfiguration: type: object description: Connection session configuration for payroll and banking verifications. properties: experience: type: string format: uuid description: Banking only. Optional bank connection experience customization ID. single_use_url: type: boolean description: Banking only. If `true`, the session link expires after one successful connection. redirect_url: type: string nullable: true description: Payroll and banking. Optional redirect URL after session completion. Hosted/direct-launch flows should always set this. On desktop browsers, use a regular `https://` URL. For mobile app flows, use a custom scheme such as `your-custom-scheme://return-to-app`, or a Universal Link on iOS / App Link on Android. Universal Links and App Links are the more modern approach. You can include an application-owned state or nonce value to match the returning browser session to an internal user, session, or verification. Argyle appends `user_submission_complete` and `user_attempted_employer_selection`, which mirror the [`onClose`](/link/reference/callbacks#onclose) fields. flow_id: type: string description: Payroll only. Optional payroll embedded connection experience customization ID. items: type: array description: Payroll only. Limits Link to the provided Items. If one Item is provided, Link skips search and opens that Item's login screen. If multiple Items are provided, Link shows only those Items. items: type: string example: - item_000000001 - item_000000002 language: type: string enum: - EN - ES - RU - ZH description: Payroll only. Supported Link [display language](/link/initialization/overview#optional-initialization-parameters). mobile_app: type: boolean description: Payroll only. Set to `true` when the session is used in a mobile app, including Hosted Link opened in a secure browser context. ClientSessionConfiguration: allOf: - $ref: '#/components/schemas/ClientSessionCreateConfiguration' ClientSessionCreateRequest: type: object properties: verification: type: string format: uuid description: ID of the verification used to initialize the session. configuration: $ref: '#/components/schemas/ClientSessionCreateConfiguration' required: - verification ClientSession: type: object description: Client connection session object. properties: verification: type: string format: uuid description: Verification ID associated with the session. configuration: $ref: '#/components/schemas/ClientSessionConfiguration' link: type: string description: URL used to launch the payroll or banking frontend experience. For payroll, use it as `connectUrl` when initializing the [Web SDK](/link/initialization/web#initialize-with-connecturl); the returned session URL already determines whether the session runs in Sandbox or Production. Alternatively, open it directly for [Hosted Link](/link/initialization/hosted-link). For banking, use it to launch either an Embedded banking session or a Hosted banking session. Session links expire after one hour. A new session link can be created at any time by creating another session for the active verification. data_source: type: string enum: - payroll - banking description: Source of connection data. ClientVerificationListResponse: type: object description: Paginated list of client verification objects. properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/ClientVerification' ClientVerification: type: object properties: id: type: string format: uuid description: Unique ID of the verification. user: type: string format: uuid description: ID of the user associated with the verification. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the verification was requested. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the verification object was last updated. channel: type: string enum: - api - encompass example: api description: Origin of the verification order. status: $ref: '#/components/schemas/ClientVerificationStatus' report: $ref: '#/components/schemas/ClientVerificationReport' employments: type: array description: List of employments for the user. Documents only. items: $ref: '#/components/schemas/ClientVerificationEmployment' loan: $ref: '#/components/schemas/ClientVerificationLoan' billing: $ref: '#/components/schemas/ClientVerificationBilling' data_source: type: string enum: - payroll - banking - documents description: Source of verification data. ClientVerificationStatus: type: object description: Verification status information. properties: state: type: string enum: - PENDING - PROCESSING - PAUSED - CANCELLED - COMPLETED description: 'Verification state. - `PENDING` - Initial status after verification is created. - `PROCESSING` - Verification processing is underway. - `PAUSED` - Verification is paused because more data or documents are required. - `CANCELLED` - Verification has been cancelled. - `COMPLETED` - Verification is complete and report assets are available. ' code: type: string enum: - pending - documents_processing - more_data_required - report_available - waiting_on_third_party - report_generating - argyle_timeout - cancelled_by_client - completed - completed_with_errors - user_session_started - authenticated description: 'Verification status code. For `doc-voi-mortgage` report types: - `pending` - Verification created. - `documents_processing` - Documents processing. - `more_data_required` - More data or documents are needed to complete the verification. - `report_available` - Data and documents are sufficient to complete verification. - `waiting_on_third_party` - Awaiting processing by a third party. - `report_generating` - Report is currently generating. - `argyle_timeout` - Verification request has been cancelled by Argyle after 180 days of inactivity. - `cancelled_by_client` - Verification has been cancelled. - `completed` - Verification request complete. Report can be retrieved. - `completed_with_errors` - Verification request completed. Report can be retrieved but is not GSE eligible. For payroll and banking report types: - `pending` - Verification created. - `user_session_started` - User opened the payroll or banking connection experience. - `authenticated` - User authenticated for payroll or banking; data aggregation is in progress. - `completed` - Report is ready for download.' errors: type: array description: 'Error information. Error details can explain what caused a `PAUSED` state or prevented GSE eligibility for a `COMPLETED` document verification. ' items: $ref: '#/components/schemas/ClientVerificationError' ClientVerificationError: type: object description: Verification error details. properties: code: type: string description: Error code. title: type: string description: Error title. message: type: string description: Error message. resources: type: array description: Additional troubleshooting resources (for example, the ID of an unmatched document). items: $ref: '#/components/schemas/ClientVerificationErrorResource' example: code: self-employed_income title: Self-employed income message: Self-employed income cannot be assessed using Paystub and W2 Data. resources: - id: null type: employments name: Freelance Consulting LLC ClientVerificationErrorResource: type: object description: Verification error resource details. properties: id: type: string nullable: true description: ID of the associated resource, if available. type: type: string description: Resource type. name: type: string description: Resource name. ClientReportCustomField: type: object description: Custom field returned in report JSON as a pass-through value. properties: label: type: string description: Custom field name. value: type: string description: Custom field value. shown: type: boolean description: Show custom field on report PDF. ClientVerificationReportConfiguration: type: object description: Optional banking report configurations. properties: bank_accounts: type: array items: type: string description: List of [bank account](/api-reference/bank-accounts) IDs to be included in the report. from_date: type: string format: date-time description: 'Restrict report to data from on or after this datetime ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). - `VOAI` reports - controls the length of asset history - `VOA` reports - controls the length of asset history - `VOI` reports - controls the length of income history ' income_from_date: type: string format: date-time description: 'Restrict report to data from on or after this datetime ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). - `VOAI` reports - controls the length of income history - Does not apply to `VOA` or `VOI` reports. ' income_stream_confidence_minimum: type: integer minimum: 0 maximum: 100 description: 'Limit income streams used in the report to those above this confidence value (`0-100` accepted). Only available for `VOI` and `VOAI` report types. ' report_custom_fields: type: array maxItems: 5 description: Include up to `5` custom objects in the report metadata. Often used for identifying information. items: $ref: '#/components/schemas/ClientReportCustomField' ClientVerificationReport: type: object description: Report information. properties: id: type: string format: uuid nullable: true description: 'Unique ID of the report. Only available when verification state is `COMPLETED`. ' type: type: string enum: &id005 - voie - voe - voa - voi - voai - voe-transactions - doc-voi-mortgage description: 'The type of report. Payroll: - `voie` - Verification of Income and Employment. - `voe` - Verification of Employment. Banking: - `voa` - Banking verification of assets. - `voi` - Banking verification of income. - `voai` - Banking verification of income and assets. - `voe-transactions` - Banking verification of employment. Documents: - `doc-voi-mortgage` - Mortgage document-based verification of income, integrated with Freddie Mac''s AIM Check.' file_url: type: string nullable: true example: www.argyle.com/storagename/pdf description: 'Download link to the report PDF. Requires [Argyle authentication headers](/api-guide/overview#authentication). Only available when verification state is `COMPLETED`. ' json_url: type: string nullable: true example: www.argyle.com/storagename/json description: 'Download link to the report in JSON. Requires [Argyle authentication headers](/api-guide/overview#authentication). Only available when verification state is `COMPLETED`. ' configuration: $ref: '#/components/schemas/ClientVerificationReportConfiguration' ClientVerificationEmployment: type: object description: Employment details for the user. properties: employer: type: string description: Name of the employer. status: type: string enum: - active - previous description: User's current employment status at this employer. hire_date: type: string format: date description: Employment start date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. termination_date: type: string format: date nullable: true description: Employment end date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. `null` when employment `status` is `active`. ClientVerificationEmploymentRequest: allOf: - $ref: '#/components/schemas/ClientVerificationEmployment' - type: object required: - employer - status - hire_date ClientVerificationLoan: type: object description: Optional loan details. properties: number: type: string description: Loan number or identifier. borrower_id: type: string description: Borrower identifier. application_id: type: string description: Application identifier. officer_email: type: string description: Email of the loan officer requesting the verification. ClientVerificationBilling: type: object description: Optional billing details. properties: cost_center: type: string description: Cost center identifier. ClientVerificationCreateReportRequest: type: object description: Report request configuration. properties: type: type: string enum: *id005 description: 'The type of report to generate. Payroll: - `voie` - Verification of Income and Employment. - `voe` - Verification of Employment. Banking: - `voa` - Banking verification of assets. - `voi` - Banking verification of income. - `voai` - Banking verification of income and assets. - `voe-transactions` - Banking verification of employment. Documents: - `doc-voi-mortgage` - Mortgage document-based verification of income, integrated with Freddie Mac''s AIM Check.' configuration: allOf: - $ref: '#/components/schemas/ClientVerificationReportConfiguration' - description: Optional banking report configurations. required: - type ClientVerificationRefreshReportRequest: type: object description: Report request configuration for refresh requests. properties: type: type: string enum: - voie - voe - voa - voi - voai - voe-transactions - doc-voi-mortgage description: 'Payroll, banking, or Doc VOI report type to generate. Payroll: - `voie` - Verification of Income and Employment. - `voe` - Verification of Employment. Banking: - `voa` - Banking verification of assets. - `voi` - Banking verification of income. - `voai` - Banking verification of income and assets. - `voe-transactions` - Banking verification of employment. Documents: - `doc-voi-mortgage` - Mortgage document-based verification of income, integrated with Freddie Mac''s AIM Check.' configuration: allOf: - $ref: '#/components/schemas/ClientVerificationReportConfiguration' - description: Optional banking report configurations. required: - type ClientVerificationCreateRequest: type: object description: 'Request body for ordering a verification. - `user` and `report` are required for all requests. - `employments` is required for document verifications only. - `report.configuration` is used for banking verifications only.' properties: user: type: string format: uuid description: User ID for the verification. employments: type: array description: 'List of employments for the user. Required for document verifications only. Not used for payroll or banking verifications.' items: $ref: '#/components/schemas/ClientVerificationEmploymentRequest' report: $ref: '#/components/schemas/ClientVerificationCreateReportRequest' loan: $ref: '#/components/schemas/ClientVerificationLoan' billing: $ref: '#/components/schemas/ClientVerificationBilling' required: - user - report ClientVerificationRefreshRequest: type: object properties: user: type: string format: uuid description: User ID for the verification refresh. report: $ref: '#/components/schemas/ClientVerificationRefreshReportRequest' loan: $ref: '#/components/schemas/ClientVerificationLoan' billing: $ref: '#/components/schemas/ClientVerificationBilling' required: - user - report ClientVerificationUpdateRequest: type: object description: 'Request body for updating a verification. - `loan` and `billing` can be updated for either data source. - `employments` can only be updated when a document verification is in the `PAUSED` state. - Updating `employments` replaces the full employments array. ' properties: loan: $ref: '#/components/schemas/ClientVerificationLoan' billing: $ref: '#/components/schemas/ClientVerificationBilling' employments: type: array description: Updated list of employments for the user. items: $ref: '#/components/schemas/ClientVerificationEmploymentRequest' PartnerPaystub: type: object example: id: 0187dc99-63be-bc96-51bf-af6b51d43687 account: 0187c66e-e7e5-811c-b006-2232f00f426a payroll_document: 0186eb89-2e52-b3c5-ac6d-05e7debb2aff deduction_list: - amount: '38.10' name: 401K tax_classification: pre_tax amount_ytd: '139.70' - amount: '25.40' name: Garnishment tax_classification: post_tax amount_ytd: '76.20' - amount: '25.40' name: Garnishment tax_classification: post_tax amount_ytd: '101.60' filing_status: - type: federal location: null status: married filing separately - type: state location: NY status: married filing separately tax_list: - amount: '88.91' name: Federal Withholding type: federal amount_ytd: '850.99' - amount: '139.72' name: Social Security Tax type: fica amount_ytd: '381.04' status: completed paystub_date: '2023-03-12T00:00:00Z' paystub_period: start_date: '2023-02-28T00:00:00Z' end_date: '2023-03-07T00:00:00Z' currency: USD gross_pay: '1607.63' deductions: '88.90' taxes: '228.63' net_pay: '1290.10' reimbursements: '0.00' hours: '49.60' fees: null net_pay_ytd: '12714.18' gross_pay_ytd: '15730.10' employer: Whole Goods employment: 0186a27d-e5c6-735a-a359-6315b34d544c employer_address: city: New York line1: 852 North W St line2: Apt 221 state: NY country: US postal_code: '10014' created_at: '2023-03-13T19:53:57.122Z' updated_at: '2023-03-13T19:53:57.122Z' destinations: - reference: CHECKING *********2201 amount: '1290.10' method: direct deposit ach_deposit_account: bank_name: NW Regional routing_number: null account_number: '*********2201' card: null hours_ytd: '422.00' deductions_ytd: '533.40' taxes_ytd: '2502.17' gross_pay_list: - name: Regular type: base start_date: '2023-02-28' end_date: '2023-03-07' rate: '25.6088' hours: '49.5977' amount: '1270.14' hours_ytd: '422.0000' amount_ytd: '13971.54' - name: Commission type: commission start_date: '2023-03-04' end_date: '2023-03-04' rate: null hours: null amount: '337.49' hours_ytd: null amount_ytd: '1758.56' gross_pay_list_totals: base: amount: '1270.14' amount_ytd: '13971.54' hours: '49.5977' hours_ytd: '422.0000' rate_implied: '25.6100' rate_implied_ytd: '33.1100' overtime: null commission: amount: '337.49' amount_ytd: '1758.56' hours: null hours_ytd: null rate_implied: null rate_implied_ytd: null bonus: null other: null metadata: null properties: id: type: string format: uuid description: Unique ID of the paystub object. account: type: string format: uuid description: ID of the account associated with the paystub. payroll_document: type: string format: uuid description: 'ID of the [payroll document object](/api-reference/payroll-documents#object) associated with this paystub. ' deduction_list: type: array items: $ref: '#/components/schemas/Deduction' description: An itemized list of deductions listed on the paystub. Each object corresponds to one line item. filing_status: type: array items: $ref: '#/components/schemas/FilingStatus' description: Information on the user's filing status. tax_list: type: array items: $ref: '#/components/schemas/Tax' description: An itemized list of tax withholdings listed on the paystub. Each object corresponds to one line item. status: type: string enum: - completed - scheduled - cancelled - excluded description: 'Payment status of the paystub. - `completed` — Payment has been made to the user. - `scheduled` — Payment is scheduled to be made to the user. - `cancelled` — Payment was cancelled, and was not nor will be paid to the user. - `excluded` — Tag used for dummy/sample/watermarked/test paystubs present in the account. These paystubs are excluded when generating reports and other calculations and should not be considered proof of income. ' paystub_date: type: string format: date-time description: 'Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the payment date, sourced from the paystub. ' paystub_period: type: object properties: start_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the start of the work period. end_date: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) of the end of the work period. description: Start date and end date of the work period. currency: type: string description: Currency code ([ISO 4217](https://en.wikipedia.org/wiki/ISO_4217)). gross_pay: type: string description: Total gross pay from the paystub period before taxes or deductions. deductions: type: string description: Total amount of deductions from the paystub period. taxes: type: string description: Total tax amount from the paystub period. net_pay: type: string description: Net pay (gross pay minus taxes and deductions) from the paystub period. reimbursements: type: string description: Total reimbursement amount from the paystub period. hours: type: string description: Total hours worked during the paystub period. fees: type: string description: Total fees incurred during the paystub period. net_pay_ytd: type: string description: Net pay year-to-date, including this paystub. gross_pay_ytd: type: string description: Gross pay year-to-date, including this paystub. employer: type: string description: Employer name. employment: type: string description: '[Employment](/api-reference/employments) ID. Can be used as a filter when [listing paystubs](/api-reference/paystubs/list-all-paystubs). ' employer_address: type: object properties: city: type: string description: Name of the city, town, district, or similar regional entity. line1: type: string description: Address-Line 1, usually street address or P.O. Box information. line2: type: string description: Address-Line 2, usually the apartment or unit number. state: type: string description: State, county, province, region, or equivalent. country: type: string description: Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format). postal_code: type: string description: Zip code, or equivalent. description: Object containing employer address information, sourced from the paystub. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the paystub object was created. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the paystub object most recently changed. destinations: type: array items: $ref: '#/components/schemas/Destination' description: Contains information on where and how pay was delivered to the user. hours_ytd: type: string description: Total hours worked year-to-date, including this paystub's work period. deductions_ytd: type: string description: Total deductions year-to-date, including amounts from this paystub. taxes_ytd: type: string description: Total taxes year-to-date, including amounts from this paystub. gross_pay_list: type: array items: $ref: '#/components/schemas/GrossPay' description: An itemized list of gross pay listed on the paystub. Each object corresponds to one line item. gross_pay_list_totals: type: object properties: base: $ref: '#/components/schemas/GrossPayTotal' overtime: $ref: '#/components/schemas/GrossPayTotal' commission: $ref: '#/components/schemas/GrossPayTotal' bonus: $ref: '#/components/schemas/GrossPayTotal' other: $ref: '#/components/schemas/GrossPayTotal' description: 'Sums the values of `gross_pay_list` objects based on their `type`: * **base** = base + pto * **overtime** = overtime * **commission** = commission * **bonus** = bonus * **other** = disability + benefits + tips + stock + other ' metadata: type: object description: Additional, non-categorized information. PartnerUserUpload: type: object example: id: 01320596-2c3d-189c-53e7-a8ce6d625b33 account: 01856c65-43b6-8b5d-b32a-56b8fbda5c28 document_type: proof-of-identity file_url: www.argyle.com/storagename file_name: my_drivers_license.pdf metadata: employment: null ocr_data: null ocr_authenticity: null ocr_authenticity_score: null processing: classification: unauthorized ocr: unauthorized authenticity: unauthorized created_at: '2024-07-08T13:43:49.864Z' updated_at: '2024-07-08T13:43:51.868Z' properties: id: type: string format: uuid description: Unique ID of the uploaded document. account: type: string format: uuid description: ID of the account associated with the uploaded document. document_type: type: string description: 'The document [category](/workflows/document-processing#enabling-document-uploads) in Link the user selected, or the `document_type` provided when [uploading via the API](/api-reference/user-uploads#upload). If [OCR processing](/integrations/ocr/ocrolus) is enabled, this value is overwritten when the document is found to be a different type. Possible values: - `paystubs` - `W-2` - `1099` - `proof-of-identity` - `proof-of-address` - `miscellaneous` ' file_url: type: string description: 'URL linking to the original uploaded document file. This static URL redirects to a download page that requires [Argyle authentication headers](/api-guide/overview#authentication). **Implementation requirements for client-side applications** 1. Ensure your HTTP client or library (for example, Axios or Python requests) is configured to follow redirects. 2. Append [Basic authentication headers](/api-guide/overview#authentication) for Argyle to the file download request. ' file_name: type: string description: File name of the uploaded document on the user's computer or phone. metadata: type: object description: Contains document OCR and authenticity information. properties: employment: type: object deprecated: true description: Contains document verification data. ocr_data: type: object description: 'Contains [Ocrolus OCR](/integrations/ocr/ocrolus#api) data. Available for paystubs, W-2s, and 1099s when Ocrolus is enabled. ' ocr_authenticity: type: object description: 'Contains [Ocrolus authenticity](/integrations/ocr/ocrolus#api) data. Includes individual instances of tampering or other authenticity-related edits made to the uploaded document that were detected. Available for paystubs, W-2s, and 1099s when Ocrolus is enabled. ' ocr_authenticity_score: type: integer description: '[Ocrolus authenticity score](/integrations/ocr/ocrolus#authenticity-scores). Single score that captures the likelihood the uploaded document is authentic, as determined by Ocrolus. Available for paystubs, W-2s, and 1099s when Ocrolus is enabled. ' processing: type: object description: Contains OCR processing statuses. properties: classification: type: string enum: - unauthorized - idle - in_progress - completed - failed description: 'OCR classification processing status. - `unauthorized`: Classification permissions are not enabled. - `idle`: Processing has not started. - `in_progress`: Processing is in progress. - `completed`: Processing successfully completed. - `failed`: Processing failed. ' ocr: type: string enum: - unauthorized - idle - in_progress - completed - failed description: 'Full OCR processing status. - `unauthorized`: Full OCR permissions are not enabled. - `idle`: Processing has not started. - `in_progress`: Processing is in progress. - `completed`: Processing successfully completed. - `failed`: Processing failed. ' authenticity: type: string enum: - unauthorized - idle - in_progress - completed - failed description: 'OCR authenticity processing status. - `unauthorized`: Full OCR permissions are not enabled. Full OCR permissions are required for authenticity. - `idle`: Processing has not started. - `in_progress`: Processing is in progress. - `completed`: Processing successfully completed. - `failed`: Processing failed. ' created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the uploaded document was submitted. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the user upload object was last updated. PartnerCreateUserResponse: type: object description: Response returned after creating a partner user. properties: user_token: type: string description: Token associated with the created user. id: type: string format: uuid description: Unique ID of the user. PartnerAddress: type: object description: Address of the user. properties: city: type: string description: Name of the city, town, district, or similar regional entity. line1: type: string description: Address-Line 1, usually street address or P.O. Box information. line2: type: string nullable: true description: Address-Line 2, usually the apartment or unit number. state: type: string description: State, county, province, region, or equivalent. country: type: string description: Two-letter country code (ISO 3166-1 alpha-2 format). postal_code: type: string nullable: true description: Zip code, or equivalent. PartnerBirthDate: type: object description: Date of birth in year-month-day format. properties: year: type: integer description: Birth year (1900 or later). month: type: integer description: Birth month (between 1 and 12). day: type: integer description: Birth day (between 1 and 31). PartnerOpenBankingEndUser: type: object description: Contains details about the person or entity making the lending decision. properties: name: type: string description: Name of the lender or entity. address: type: string description: Street address or P.O. Box information (include apartment or unit numbers). city: type: string description: Name of the city, town, district, or similar regional entity. state: type: string description: State, county, province, region, or equivalent. zip: type: string description: Zip code, or equivalent. phone: type: string description: Phone number of the lender or entity. PartnerOpenBanking: type: object description: Banking-specific user metadata. properties: end_user: $ref: '#/components/schemas/PartnerOpenBankingEndUser' PartnerUserCreateRequest: type: object properties: client: type: string format: uuid description: 'ID of the client on whose behalf the user is created. Provided to you by your Argyle Customer Success manager. ' first_name: type: string description: User first name. last_name: type: string description: User last name. email: type: string description: User email address. phone_number: type: string description: User phone number. E.164 international format recommended. ssn: type: string description: User Social Security number. address: $ref: '#/components/schemas/PartnerAddress' birth_date: $ref: '#/components/schemas/PartnerBirthDate' external_metadata: type: object description: Additional metadata for internal partner workflows. additionalProperties: true properties: suppress_verification: type: boolean description: Set to `true` for banking and document verification workflows. open_banking: $ref: '#/components/schemas/PartnerOpenBanking' external_id: type: string nullable: true description: External identifier for your internal mapping. required: - client PartnerUserUpdateRequest: type: object properties: first_name: type: string description: User first name. last_name: type: string description: User last name. email: type: string description: User email address. phone_number: type: string description: User phone number. ssn: type: string description: User Social Security number. address: $ref: '#/components/schemas/PartnerAddress' birth_date: $ref: '#/components/schemas/PartnerBirthDate' external_metadata: type: object description: Additional metadata for internal partner workflows. additionalProperties: true properties: suppress_verification: type: boolean description: Set to `true` for banking and document verification workflows. open_banking: $ref: '#/components/schemas/PartnerOpenBanking' external_id: type: string nullable: true description: External identifier for your internal mapping. PartnerUser: type: object description: Partner user object. properties: id: type: string format: uuid description: Unique ID of the user. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the user was created. items_connected: type: array items: type: string description: Items the user has connected through Link. employers_connected: type: array items: type: string description: Employers associated with the connected items. first_name: type: string description: User first name. last_name: type: string description: User last name. email: type: string description: User email address. phone_number: type: string description: User phone number. ssn: type: string description: User Social Security number. address: $ref: '#/components/schemas/PartnerAddress' birth_date: $ref: '#/components/schemas/PartnerBirthDate' external_metadata: type: object description: Additional metadata for internal partner workflows. additionalProperties: true external_id: type: string nullable: true description: External identifier for your internal mapping. PartnerSessionCreateConfiguration: type: object description: Connection session configuration for payroll and banking verifications. properties: experience: type: string format: uuid description: Banking only. Optional bank connection experience customization ID. single_use_url: type: boolean description: Banking only. If `true`, the session link expires after one successful connection. redirect_url: type: string nullable: true description: Payroll and banking. Optional redirect URL after session completion. Hosted/direct-launch flows should always set this. On desktop browsers, use a regular `https://` URL. For mobile app flows, use a custom scheme such as `your-custom-scheme://return-to-app`, or a Universal Link on iOS / App Link on Android. Universal Links and App Links are the more modern approach. You can include an application-owned state or nonce value to match the returning browser session to an internal user, session, or verification. Argyle appends `user_submission_complete` and `user_attempted_employer_selection`, which mirror the [`onClose`](/link/reference/callbacks#onclose) fields. flow_id: type: string description: Payroll only. Optional payroll embedded connection experience customization ID. items: type: array description: Payroll only. Limits Link to the provided Items. If one Item is provided, Link skips search and opens that Item's login screen. If multiple Items are provided, Link shows only those Items. items: type: string example: - item_000000001 - item_000000002 language: type: string enum: - EN - ES - RU - ZH description: Payroll only. Supported Link [display language](/link/initialization/overview#optional-initialization-parameters). mobile_app: type: boolean description: Payroll only. Set to `true` when the session is used in a mobile app, including Hosted Link opened in a secure browser context. PartnerSessionConfiguration: allOf: - $ref: '#/components/schemas/PartnerSessionCreateConfiguration' PartnerSessionCreateRequest: type: object properties: verification: type: string format: uuid description: ID of the verification used to initialize the session. configuration: $ref: '#/components/schemas/PartnerSessionCreateConfiguration' required: - verification PartnerSession: type: object description: Partner connection session object. properties: verification: type: string format: uuid description: Verification ID associated with the session. configuration: $ref: '#/components/schemas/PartnerSessionConfiguration' link: type: string description: URL used to launch the payroll or banking frontend experience. For payroll, use it as `connectUrl` when initializing the [Web SDK](/link/initialization/web#initialize-with-connecturl); the returned session URL already determines whether the session runs in Sandbox or Production. Alternatively, open it directly for [Hosted Link](/link/initialization/hosted-link). For banking, use it to launch either an Embedded banking session or a Hosted banking session. Session links expire after one hour. A new session link can be created at any time by creating another session for the active verification. data_source: type: string enum: - payroll - banking description: Source of connection data. PartnerVerificationListResponse: type: object description: Paginated list of partner verification objects. properties: next: type: string format: uri nullable: true description: URL for the next page of results, if available. previous: type: string format: uri nullable: true description: URL for the previous page of results, if available. results: type: array items: $ref: '#/components/schemas/PartnerVerification' PartnerVerification: type: object properties: id: type: string format: uuid description: Unique ID of the verification. user: type: string format: uuid description: ID of the user associated with the verification. client: type: string format: uuid description: ID of the client on whose behalf the verification was requested. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the verification was requested. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the verification object was last updated. channel: type: string enum: - api - encompass example: api description: Origin of the verification order. status: $ref: '#/components/schemas/PartnerVerificationStatus' report: $ref: '#/components/schemas/PartnerVerificationReport' employments: type: array description: List of employments for the user. Documents only. items: $ref: '#/components/schemas/PartnerVerificationEmployment' loan: $ref: '#/components/schemas/PartnerVerificationLoan' billing: $ref: '#/components/schemas/PartnerVerificationBilling' data_source: type: string enum: - payroll - banking - documents description: Source of verification data. PartnerVerificationStatus: type: object description: Verification status information. properties: state: type: string enum: - PENDING - PROCESSING - PAUSED - CANCELLED - COMPLETED description: 'Verification state. - `PENDING` - Initial status after verification is created. - `PROCESSING` - Verification processing is underway. - `PAUSED` - Verification is paused because more data or documents are required. - `CANCELLED` - Verification has been cancelled. - `COMPLETED` - Verification is complete and report assets are available. ' code: type: string enum: - pending - documents_processing - more_data_required - report_available - waiting_on_third_party - report_generating - argyle_timeout - cancelled_by_client - completed - completed_with_errors - user_session_started - authenticated description: 'Verification status code. For `doc-voi-mortgage` report types: - `pending` - Verification created. - `documents_processing` - Documents processing. - `more_data_required` - More data or documents are needed to complete the verification. - `report_available` - Data and documents are sufficient to complete verification. - `waiting_on_third_party` - Awaiting processing by a third party. - `report_generating` - Report is currently generating. - `argyle_timeout` - Verification request has been cancelled by Argyle after 180 days of inactivity. - `cancelled_by_client` - Verification has been cancelled. - `completed` - Verification request complete. Report can be retrieved. - `completed_with_errors` - Verification request completed. Report can be retrieved but is not GSE eligible. For payroll and banking report types: - `pending` - Verification created. - `user_session_started` - User opened the payroll or banking connection experience. - `authenticated` - User authenticated for payroll or banking; data aggregation is in progress. - `completed` - Report is ready for download.' errors: type: array description: 'Error information. Error details can explain what caused a `PAUSED` state or prevented GSE eligibility for a `COMPLETED` document verification. ' items: $ref: '#/components/schemas/PartnerVerificationError' PartnerVerificationError: type: object description: Verification error details. properties: code: type: string description: Error code. title: type: string description: Error title. message: type: string description: Error message. resources: type: array description: Additional troubleshooting resources (for example, the ID of an unmatched document). items: $ref: '#/components/schemas/PartnerVerificationErrorResource' example: code: self-employed_income title: Self-employed income message: Self-employed income cannot be assessed using Paystub and W2 Data. resources: - id: null type: employments name: Freelance Consulting LLC PartnerVerificationErrorResource: type: object description: Verification error resource details. properties: id: type: string nullable: true description: ID of the associated resource, if available. type: type: string description: Resource type. name: type: string description: Resource name. PartnerReportCustomField: type: object description: Custom field returned in report JSON as a pass-through value. properties: label: type: string description: Custom field name. value: type: string description: Custom field value. shown: type: boolean description: Show custom field on report PDF. PartnerVerificationReportConfiguration: type: object description: Optional banking report configurations. properties: bank_accounts: type: array items: type: string description: List of [bank account](/api-reference/bank-accounts) IDs to be included in the report. from_date: type: string format: date-time description: 'Restrict report to data from on or after this datetime ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). - `VOAI` reports - controls the length of asset history - `VOA` reports - controls the length of asset history - `VOI` reports - controls the length of income history ' income_from_date: type: string format: date-time description: 'Restrict report to data from on or after this datetime ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)). - `VOAI` reports - controls the length of income history - Does not apply to `VOA` or `VOI` reports. ' income_stream_confidence_minimum: type: integer minimum: 0 maximum: 100 description: 'Limit income streams used in the report to those above this confidence value (`0-100` accepted). Only available for `VOI` and `VOAI` report types. ' report_custom_fields: type: array maxItems: 5 description: Include up to `5` custom objects in the report metadata. Often used for identifying information. items: $ref: '#/components/schemas/PartnerReportCustomField' PartnerVerificationReport: type: object description: Report information. properties: id: type: string format: uuid nullable: true description: 'Unique ID of the report. Only available when verification state is `COMPLETED`. ' type: type: string enum: &id006 - voie - voe - voa - voi - voai - voe-transactions - doc-voi-mortgage description: 'The type of report. Payroll: - `voie` - Verification of Income and Employment. - `voe` - Verification of Employment. Banking: - `voa` - Banking verification of assets. - `voi` - Banking verification of income. - `voai` - Banking verification of income and assets. - `voe-transactions` - Banking verification of employment. Documents: - `doc-voi-mortgage` - Mortgage document-based verification of income, integrated with Freddie Mac''s AIM Check.' file_url: type: string nullable: true example: www.argyle.com/storagename/pdf description: 'Download link to the report PDF. Requires [Argyle authentication headers](/api-guide/overview#authentication). Only available when verification state is `COMPLETED`. ' json_url: type: string nullable: true example: www.argyle.com/storagename/json description: 'Download link to the report in JSON. Requires [Argyle authentication headers](/api-guide/overview#authentication). Only available when verification state is `COMPLETED`. ' configuration: $ref: '#/components/schemas/PartnerVerificationReportConfiguration' PartnerVerificationEmployment: type: object description: Employment details for the user. properties: employer: type: string description: Name of the employer. status: type: string enum: - active - previous description: User's current employment status at this employer. hire_date: type: string format: date description: Employment start date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. termination_date: type: string format: date nullable: true description: Employment end date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. `null` when employment `status` is `active`. PartnerVerificationEmploymentRequest: allOf: - $ref: '#/components/schemas/PartnerVerificationEmployment' - type: object required: - employer - status - hire_date PartnerVerificationLoan: type: object description: Optional loan details. properties: number: type: string description: Loan number or identifier. borrower_id: type: string description: Borrower identifier. application_id: type: string description: Application identifier. officer_email: type: string description: Email of the loan officer requesting the verification. PartnerVerificationBilling: type: object description: Optional billing details. properties: cost_center: type: string description: Cost center identifier. PartnerVerificationCreateReportRequest: type: object description: Report request configuration. properties: type: type: string enum: *id006 description: 'The type of report to generate. Payroll: - `voie` - Verification of Income and Employment. - `voe` - Verification of Employment. Banking: - `voa` - Banking verification of assets. - `voi` - Banking verification of income. - `voai` - Banking verification of income and assets. - `voe-transactions` - Banking verification of employment. Documents: - `doc-voi-mortgage` - Mortgage document-based verification of income, integrated with Freddie Mac''s AIM Check.' configuration: allOf: - $ref: '#/components/schemas/PartnerVerificationReportConfiguration' - description: Optional banking report configurations. required: - type PartnerVerificationRefreshReportRequest: type: object description: Report request configuration for refresh requests. properties: type: type: string enum: - voie - voe - voa - voi - voai - voe-transactions - doc-voi-mortgage description: 'Payroll, banking, or Doc VOI report type to generate. Payroll: - `voie` - Verification of Income and Employment. - `voe` - Verification of Employment. Banking: - `voa` - Banking verification of assets. - `voi` - Banking verification of income. - `voai` - Banking verification of income and assets. - `voe-transactions` - Banking verification of employment. Documents: - `doc-voi-mortgage` - Mortgage document-based verification of income, integrated with Freddie Mac''s AIM Check.' configuration: allOf: - $ref: '#/components/schemas/PartnerVerificationReportConfiguration' - description: Optional banking report configurations. required: - type PartnerVerificationCreateRequest: type: object description: 'Request body for ordering a verification. - `user` and `report` are required for all requests. - `employments` is required for document verifications only. - `report.configuration` is used for banking verifications only.' properties: user: type: string format: uuid description: User ID for the verification. employments: type: array description: 'List of employments for the user. Required for document verifications only. Not used for payroll or banking verifications.' items: $ref: '#/components/schemas/PartnerVerificationEmploymentRequest' report: $ref: '#/components/schemas/PartnerVerificationCreateReportRequest' loan: $ref: '#/components/schemas/PartnerVerificationLoan' billing: $ref: '#/components/schemas/PartnerVerificationBilling' required: - user - report PartnerVerificationRefreshRequest: type: object properties: user: type: string format: uuid description: User ID for the verification refresh. report: $ref: '#/components/schemas/PartnerVerificationRefreshReportRequest' loan: $ref: '#/components/schemas/PartnerVerificationLoan' billing: $ref: '#/components/schemas/PartnerVerificationBilling' required: - user - report PartnerVerificationUpdateRequest: type: object description: 'Request body for updating a verification. - `loan` and `billing` can be updated for either data source. - `employments` can only be updated when a document verification is in the `PAUSED` state. - Updating `employments` replaces the full employments array. ' properties: loan: $ref: '#/components/schemas/PartnerVerificationLoan' billing: $ref: '#/components/schemas/PartnerVerificationBilling' employments: type: array description: Updated list of employments for the user. items: $ref: '#/components/schemas/PartnerVerificationEmploymentRequest' PartnerWebhookSubscriptionRequest: type: object properties: events: type: array description: '`verifications.updated` or `verifications.creation_failed`' items: type: string enum: - verifications.updated - verifications.creation_failed example: verifications.updated name: type: string example: name-for-the-webhook-subscription description: Your name for the webhook subscription. url: type: string example: https://your-webhook-backend.com description: Where you want to receive webhook delivery. Argyle handles URL encoding for webhook URLs. Send the URL in its normal, unencoded form. secret: type: string example: optional-secret description: Optional secret used to verify webhooks. config: type: object description: Optional webhook delivery configuration. example: include_resource: true required: - events - name - url PartnerVerificationWebhookMessage: type: object properties: event: type: string description: '`verifications.updated`' example: verifications.updated name: type: string description: Name used for the webhook subscription. data: type: object properties: user: type: string format: uuid description: ID of the user. example: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 verification: type: string format: uuid description: ID of the verification. example: 43a2c6c3-1e63-91e5-88e3-f9ab2dcc489b client: type: string format: uuid description: ID of the client. example: 39096494-45c8-4fd8-9454-3d1cb2d62db7 resource: $ref: '#/components/schemas/PartnerVerification' PartnerVerificationCreationFailedWebhookMessage: type: object properties: event: type: string description: '`verifications.creation_failed`' example: verifications.creation_failed name: type: string description: Name used for the webhook subscription. data: type: object properties: user: type: string format: uuid description: ID of the user. example: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: type: string format: uuid description: ID of the client. example: 39096494-45c8-4fd8-9454-3d1cb2d62db7 context: $ref: '#/components/schemas/PartnerVerificationCreationFailedContext' example: event: verifications.creation_failed name: name-for-the-webhook-subscription data: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 client: 39096494-45c8-4fd8-9454-3d1cb2d62db7 context: user: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 attempted_at: '2023-03-09T16:22:06.081Z' channel: encompass data_source: banking report_type: voa loan: number: '1234' borrower_id: ABC789 application_id: '2121313' officer_email: john.doe@mortgage.com billing: cost_center: '5' PartnerVerificationCreationFailedContext: type: object properties: user: type: string format: uuid description: ID of the user. example: 018051aa-f7a9-a0db-2f38-6cfa325e9d69 attempted_at: type: string format: date-time description: Time when Argyle attempted to create the verification. example: '2023-03-09T16:22:06.081Z' channel: type: string description: Channel where verification creation was attempted. example: encompass data_source: type: string description: Data source requested for the verification. example: banking report_type: type: string description: Report type requested for the verification. example: voa loan: $ref: '#/components/schemas/PartnerVerificationLoan' billing: $ref: '#/components/schemas/PartnerVerificationBilling' Vehicle: type: object example: id: 01763a69-5cbe-2edb-ade1-5591157c354d account: 0187c66e-e7e5-811c-b006-2232f00f426a identification: AEWUQ7 make: Ford model: Mondeo type: car year: 1998 vin: QUICELDKTRQJ4S33C employer: GigAndGo created_at: '2023-02-09T13:42:03.966Z' updated_at: '2023-02-09T13:42:03.966Z' metadata: null properties: id: type: string format: uuid description: Unique ID of the vehicle. account: type: string format: uuid description: ID of the account associated with the vehicle. identification: type: string description: License plate number or similar vehicle identifier. make: type: string description: Vehicle brand or manufacturer. model: type: string description: Vehicle model. type: type: string enum: - car - pedestrian - ebike - bicycle - scooter - motorcycle - other description: The type of vehicle. year: type: string description: Year the vehicle was made. vin: type: string description: Vehicle Identification Number (VIN). employer: type: string description: Name of the user's employer. created_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when the vehicle object was created. updated_at: type: string format: date-time description: Timestamp ([ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)) when a property value of the vehicle object most recently changed. metadata: type: object description: Additional, non-categorized information.