Tink · Arazzo Workflow

Tink Trigger A Balance Refresh And Poll It

Version 1.0.0

Trigger an on-demand balance refresh for a credentials object, then poll until it finishes, then read fresh balances.

1 workflow 1 source API 1 provider
View Spec View on GitHub Open BankingPSD2Payment InitiationAccount AggregationRisk DecisioningPay by BankFinanceBankingEuropeVisaArazzoWorkflows

Provider

tink-com

Workflows

balance-refresh-and-poll
Trigger a balance refresh, poll to completion, then read the refreshed balances.
Triggers a balance refresh for the supplied credentials, re-checks its status until FINISHED or FAILED, and on success lists accounts and reads the first account's balances.
4 steps inputs: accessToken, credentialsId outputs: balanceRefreshId, balances, refreshStatus
1
createBalanceRefresh
createBalanceRefresh
Trigger an on-demand balance refresh for the supplied credentials object.
2
pollRefresh
getBalanceRefresh
Retrieve the balance refresh status. While the refresh is QUEUED or IN_PROGRESS, loop back and check again; on FINISHED proceed to read balances; on FAILED end the flow.
3
listAccounts
listAccounts
List the accounts to resolve an account id for the refreshed balances.
4
getBalances
getAccountBalances
Read the freshly refreshed balances for the first account.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Tink Trigger A Balance Refresh And Poll It
  summary: Trigger an on-demand balance refresh for a credentials object, then poll until it finishes, then read fresh balances.
  description: >-
    The Tink Balance Check flow. It triggers an on-demand refresh of account
    balances for a connected credentials object, polls the refresh by id until
    it reaches a terminal status (FINISHED or FAILED), and — when the refresh
    finishes — lists the accounts and reads the freshly updated balances of the
    first account. Every step spells out its request inline so the flow can be
    read and executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: dataApi
  url: ../openapi/tink-data-api-openapi.yml
  type: openapi
workflows:
- workflowId: balance-refresh-and-poll
  summary: Trigger a balance refresh, poll to completion, then read the refreshed balances.
  description: >-
    Triggers a balance refresh for the supplied credentials, re-checks its
    status until FINISHED or FAILED, and on success lists accounts and reads the
    first account's balances.
  inputs:
    type: object
    required:
    - accessToken
    - credentialsId
    properties:
      accessToken:
        type: string
        description: A user access token authorized for balance refresh and account reads.
      credentialsId:
        type: string
        description: The credentials object to refresh balances for.
  steps:
  - stepId: createBalanceRefresh
    description: >-
      Trigger an on-demand balance refresh for the supplied credentials object.
    operationId: createBalanceRefresh
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    requestBody:
      contentType: application/json
      payload:
        credentialsId: $inputs.credentialsId
    successCriteria:
    - condition: $statusCode == 202
    outputs:
      balanceRefreshId: $response.body#/balanceRefreshId
      status: $response.body#/status
  - stepId: pollRefresh
    description: >-
      Retrieve the balance refresh status. While the refresh is QUEUED or
      IN_PROGRESS, loop back and check again; on FINISHED proceed to read
      balances; on FAILED end the flow.
    operationId: getBalanceRefresh
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: balanceRefreshId
      in: path
      value: $steps.createBalanceRefresh.outputs.balanceRefreshId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      status: $response.body#/status
    onSuccess:
    - name: stillRunning
      type: goto
      stepId: pollRefresh
      criteria:
      - context: $response.body
        condition: $.status == "QUEUED" || $.status == "IN_PROGRESS"
        type: jsonpath
    - name: finished
      type: goto
      stepId: listAccounts
      criteria:
      - context: $response.body
        condition: $.status == "FINISHED"
        type: jsonpath
    - name: failed
      type: end
      criteria:
      - context: $response.body
        condition: $.status == "FAILED"
        type: jsonpath
  - stepId: listAccounts
    description: List the accounts to resolve an account id for the refreshed balances.
    operationId: listAccounts
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstAccountId: $response.body#/accounts/0/id
  - stepId: getBalances
    description: Read the freshly refreshed balances for the first account.
    operationId: getAccountBalances
    parameters:
    - name: Authorization
      in: header
      value: "Bearer $inputs.accessToken"
    - name: account_id
      in: path
      value: $steps.listAccounts.outputs.firstAccountId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      balances: $response.body#/balances
  outputs:
    balanceRefreshId: $steps.createBalanceRefresh.outputs.balanceRefreshId
    refreshStatus: $steps.pollRefresh.outputs.status
    balances: $steps.getBalances.outputs.balances

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/tink-com-balance-refresh-poll-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.