{"id":21286415,"url":"https://github.com/vultuk/node-tide","last_synced_at":"2025-07-11T11:32:46.171Z","repository":{"id":22990423,"uuid":"97880969","full_name":"vultuk/node-tide","owner":"vultuk","description":"A Node module to assist with connections to the Tide business banking API","archived":false,"fork":false,"pushed_at":"2024-05-28T00:03:29.000Z","size":154,"stargazers_count":2,"open_issues_count":12,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-23T08:54:28.947Z","etag":null,"topics":["module","nodejs","npm","tide"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vultuk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-07-20T21:49:12.000Z","updated_at":"2019-08-08T23:12:30.000Z","dependencies_parsed_at":"2024-05-28T03:24:20.295Z","dependency_job_id":"49db688c-2c59-4c87-a328-22fd2662248c","html_url":"https://github.com/vultuk/node-tide","commit_stats":{"total_commits":16,"total_committers":2,"mean_commits":8.0,"dds":0.1875,"last_synced_commit":"1453f08b6768a8b238502c3472ab802e29bb6526"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/vultuk/node-tide","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultuk%2Fnode-tide","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultuk%2Fnode-tide/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultuk%2Fnode-tide/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultuk%2Fnode-tide/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vultuk","download_url":"https://codeload.github.com/vultuk/node-tide/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultuk%2Fnode-tide/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264795402,"owners_count":23665231,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["module","nodejs","npm","tide"],"created_at":"2024-11-21T11:29:22.505Z","updated_at":"2025-07-11T11:32:45.241Z","avatar_url":"https://github.com/vultuk.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# node-tide [![NPM version](https://badge.fury.io/js/node-tide.svg)](https://npmjs.org/package/node-tide) [![Build Status](https://travis-ci.org/vultuk/node-tide.svg?branch=master)](https://travis-ci.org/vultuk/node-tide)\n\n\u003e A Node module to assist with connections to the Tide business banking API\n\n## Installation\n\n```sh\n$ npm install --save node-tide\n```\n\n## Quick Usage Guide\n\nBelow is a quick guide to using the node-tide module, you can see full information in the [documentation](./docs/index.md). There is also a [quick example application](https://github.com/vultuk/node-tide-example) available showing full integration with expressJs.\n\n### Getting the Authentication URL\n\nYou can easily get the URL required to authenticate against the Tide OAuth2 API.\n\n#### Javascript\n```js\nvar nodeTide = require('node-tide');\n\n// Create a new Tide application\nvar tide = new nodeTide.Tide();\n\n// Generate the OAuth2 URL the user needs to authenticate\nvar authenticationUrl = nodeTide.auth.generateAuthUrl({\n  applicationName: \"Node Tide Application\",\n  redirectUrl: \"https://mytideapp.com/tide/auth\"\n});\n\nconsole.log(authenticationUrl);\n```\n\n#### Typescript\n```ts\nimport { Tide, AuthenticationConfig } from \"node-tide\";\n\n// Create a new Tide application\nlet tide = new Tide();\n\n// Generate the OAuth2 URL the user needs to authenticate\nlet authenticationUrl: string = tide.auth.generateAuthUrl({\n  applicationName: \"Node Tide Application\",\n  redirectUrl: \"https://mytideapp.com/tide/auth\"\n} as AuthenticationConfig);\n\nconsole.log(authenticationUrl);\n```\n\n### Pulling a list of companies\n\nOnce you have authenticated you can then pull a list of companies for the user.\n\n#### Javascript\n```js\nvar nodeTide = require('node-tide');\nvar accessToken = \"my4cc35570k3n\"; // From authentication\n\n// Create a new Tide application\nvar tide = new nodeTide.Tide(accessToken);\n\n// Gets a list of companies\ntide.companies.all()\n  .then(function(companies) {\n    for (var i = 0; i \u003c companies.length; i++) {\n      console.log(companies[i].name);\n    }\n  })\n```\n\n#### Typescript\n```ts\nimport { Tide, Company } from \"node-tide\";\nlet accessToken: string = \"my4cc35570k3n\"; // From authentication\n\n// Create a new Tide application\nlet tide = new Tide(accessToken);\n\n// Gets a list of companies\nthis.companies.all()\n  .then((companies: Company[]) =\u003e {\n    companies.forEach((company: Company) =\u003e {\n      console.log(company.name);\n    })\n  })\n```\n\n### Pulling a list of accounts\n\nOnce you have a company ID you can then pull a list of accounts associated wtih a company.\n\n#### Javascript\n```js\nvar nodeTide = require('node-tide');\nvar accessToken = \"my4cc35570k3n\"; // From authentication\nvar companyId = 182736; // From the company list\n\n// Create a new Tide application\nvar tide = new nodeTide.Tide(accessToken);\n\n// Gets a list of accounts\ntide.accounts.all(companyId)\n  .then(function(accounts) {\n    for (var i = 0; i \u003c accounts.length; i++) {\n      console.log(accounts[i].name);\n    }\n  })\n```\n\n#### Typescript\n```ts\nimport { Tide, Account } from \"node-tide\";\nlet accessToken: string = \"my4cc35570k3n\"; // From authentication\nlet companyId: number = 182736; // From the company list\n\n// Create a new Tide application\nlet tide = new Tide(accessToken);\n\n// Gets a list of accounts\nthis.accounts.all(companyId)\n  .then((accounts: Account[]) =\u003e {\n    accounts.forEach((account: Account) =\u003e {\n      console.log(account.name);\n    })\n  })\n```\n\n### Pulling a list of transactions\n\nOnce you have an account ID you can then pull a list of transactions from an account.\n\n#### Javascript\n```js\nvar nodeTide = require('node-tide');\nvar accessToken = \"my4cc35570k3n\"; // From authentication\nvar accountId = 60192; // From the company list\n\n// Create a new Tide application\nvar tide = new nodeTide.Tide(accessToken);\n\n// Gets a list of accounts\ntide.transactions.all(accountId)\n  .then(function(transactions) {\n    for (var i = 0; i \u003c accounts.length; i++) {\n      console.log(transactions[i].amount);\n    }\n  })\n```\n\n#### Typescript\n```ts\nimport { Tide, Transaction } from \"node-tide\";\nlet accessToken: string = \"my4cc35570k3n\"; // From authentication\nlet accountId: number = 60192; // From the company list\n\n// Create a new Tide application\nlet tide = new Tide(accessToken);\n\n// Gets a list of accounts\nthis.transactions.all(accountId)\n  .then((transactions: Transaction[]) =\u003e {\n    transactions.forEach((transaction: Transaction) =\u003e {\n      console.log(transaction.amount);\n    })\n  })\n```\n\nIt is also possible to filter transactions by reference using `this.transactions.findReference(accountId, 'My Reference')` and also by date range using `this.transactions.findDateRange(accountId, moment().subtract(2, 'days'))`\n\n\n## License\n\nMIT © [Simon Skinner](https://twitter.com/vultuk)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvultuk%2Fnode-tide","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvultuk%2Fnode-tide","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvultuk%2Fnode-tide/lists"}