openapi: 3.2.0 info: title: Fingoal Fastlink API version: 1.0.0 description: 'Operations tagged Fastlink across 2 of this provider''s published API definitions: fingoal-link-money-api-openapi.yml, fingoal-link-money-openapi-original.json. Each path carries the servers of the definition it was published in.' servers: - url: https://link-money-dev.fingoal.dev description: Development server security: - BearerAuth: [] tags: - name: Fastlink description: "The Link Money API permits end users to link and get data from their bank accounts. But of course, that requires a front-end interface. That's where the Fastlink comes in.\n\nThe Fastlink is an example of what we call a \"Linking Widget\" - a small application, usually embedded via iframe in another financial application, that allows end users to interact with an aggregation service - in this case, Yodlee's Fastlink. \n\nIn this documentation `Fastlink` refers specifically to `Fastlink 4`, which is the most recent version of Yodlee's Fastlink widget. We do not support older versions of Fastlink, and urge all of our onboarding customers to upgrade to Fastlink 4. \n\nTo open a frontend session with Link Money's Fastlink4, you must: \n- Have a client registered with the Link Money API\n- Have client credentials for the Link Money API \n- Have a single registered user with the Link Money API\n- Have a web application (or test web application) with HTML and JavaScript where the FL4 can be embedded.\n\n### Step 1: Get an authentication token\nFirst, get an authentication token for Link Money. \n```js\nconst fetch = require('node-fetch'); // If using Node.js, ensure to install the 'node-fetch' package\n\n// Client credentials and other required information. We recommend storing these in a secure location, such as a password vault.\nconst clientId = 'YOUR_CLIENT_ID';\nconst clientSecret = 'YOUR_CLIENT_SECRET';\n\n// The URL to your authentication endpoint\nconst tokenUrl = '{LINK_MONEY_BASE_URL}/oauth/token';\n\n// Prepare the request body\nconst requestBody = { clientId, clientSecret };\n\n// Make the HTTP POST request to obtain the JWT\ntry {\n const rawResponse = await fetch(tokenUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: requestBody\n });\n const data = await response.json();\n const token = data.accessToken;\n // Use the access token for subsequent API requests that require authentication\n} catch(error) {\n console.error('Error fetching the access token:', error);\n}\n```\n### Step 2: Get the Fastlink configuration\nWith the `token` from the request, you can authorize a call to the Fastlink widget endpoint. \n```js \nconst fetch = require('node-fetch'); // If using Node.js, ensure to install the 'node-fetch' package\nconst accessToken = \"{YOUR_ACCESS_TOKEN}\"; // see previous step.\nconst getFastlinkConfigUrl = '{LINK_MONEY_BASE_URL}/yodlee/fastlink';\nconst login_name = `any_string_of_your_choice`;\ntry {\n const rawResponse = await fetch(getFastlinkConfigUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${accessToken}`\n },\n\tbody: { login_name }\n });\n const data = await response.json();\n const { fastlinkConfiguration } = data;\n const { accessToken, fastLinkURL, configName } = fastlinkConfiguration;\n // Use the accessToken, fastLinkURL, and configName to embed the Fastlink widget in your application\n} catch(error) {\n console.error('Error fetching the access token:', error);\n}\n```\n### Step 3: Embed the Fastlink widget\nThe fields provided above have supplied you with everything you need to open the Yodlee Fastlink widget in your application. To complete the integration, you will need to use the Yodlee Fastlink SDK along with the configuration provided above.\n```html\n\n