### Pagination Example Source: https://context7.com/basiqio/api-ref/llms.txt An example of a paginated response, showing how to retrieve large datasets with links to navigate through pages. ```APIDOC ## Paginated Response Example ### Description This example demonstrates a paginated response, commonly used for endpoints returning large lists of resources like accounts or transactions. It includes information about the total count, the size of the current page, and links for navigating to the next or first page. ### Method N/A (This is an example of a paginated response) ### Endpoint N/A ### Response #### Success Response (200) - **type** (string) - The type of the response, typically 'list'. - **count** (integer) - The total number of available items across all pages. - **size** (integer) - The number of items returned in the current response page. - **data** (array) - An array containing the resource items for the current page. - **links** (object) - An object containing navigational links. - **self** (string) - A URL to the current page. - **next** (string, optional) - A URL to the next page of results, if available. - **prev** (string, optional) - A URL to the previous page of results, if available. ### Response Example ```json { "type": "list", "count": 100, "size": 500, "data": [...], "links": { "self": "https://au-api.basiq.io/users/ea3a81/transactions", "next": "https://au-api.basiq.io/users/ea3a81/transactions?next=bf1ec9d4" } } ``` ``` -------------------------------- ### Basiq API Filter Operations Examples Source: https://context7.com/basiqio/api-ref/llms.txt Provides examples of common filter operations supported by the Basiq API, including equals, not equals, greater than, less than, and combining multiple filters. These examples show the syntax for constructing filter queries. ```plaintext filter=account.id.eq('s55bf3') filter=status.ne('pending') filter=transaction.postDate.gt('2023-01-01') filter=transaction.postDate.lt('2024-01-01') filter=transaction.postDate.gt('2023-01-01'),transaction.direction.eq('debit') ``` -------------------------------- ### Generate Affordability Report Source: https://context7.com/basiqio/api-ref/llms.txt This example shows how to generate an affordability report using the Basiq API. It supports outputting reports in PDF or JSON format and allows filtering by date ranges, accounts, users, and specific metrics or groups. The API returns a job ID upon successful request, with the actual report available via a subsequent GET request. ```bash # Create affordability report curl -X POST https://au-api.basiq.io/reports \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "reportType": "CON_AFFOR_01", "title": "John Smith Affordability Report 2024-03-26", "filters": [ { "name": "fromDate", "value": "2023-01-01" }, { "name": "toDate", "value": "2024-01-01" }, { "name": "accounts", "value": ["ag829sj", "aj82gka"] }, { "name": "users", "value": ["272af9fa-0f4a-44dc-bf88-a63bec2d0662"] }, { "name": "includeMetrics", "value": ["ME002", "ME003", "ME004"] }, { "name": "includeGroups", "value": ["INC-001", "INC-002", "EXP-001"] } ] }' ``` ```json # Response (Job) { "type": "job", "id": "b1824ad0-73f1-0138-3700-0a58a9feac09", "links": { "self": "https://au-api.basiq.io/jobs/b1824ad0-73f1-0138-3700-0a58a9feac09" } } ``` ```bash # List all reports curl https://au-api.basiq.io/reports \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` ```bash # Get report as JSON curl https://au-api.basiq.io/reports/b1824ad0-73f1-0138-3700-0a58a9feac09 \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Accept: application/json" ``` ```bash # Get report as PDF curl https://au-api.basiq.io/reports/b1824ad0-73f1-0138-3700-0a58a9feac09 \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Accept: application/pdf" \ --output affordability-report.pdf ``` ```json # Response (JSON format) { "type": "report", "id": "b1824ad0-73f1-0138-3700-0a58a9feac09", "title": "John Smith Affordability Report 2024-03-26", "reportType": "CON_AFFOR_01", "createdDate": "2024-03-26T06:56:44", "createdBy": "David Smith", "expiresAt": "2024-03-27T06:56:44", "data": { "metrics": [ { "id": "ME001", "title": "# OF IDENTIFIED SALARY SOURCES", "description": "Number of recent salary income sources", "sections": ["Income Sources"], "result": { "value": "4" } }, { "id": "ME002", "title": "AVERAGE MONTHLY INCOME", "description": "Average monthly income from all sources", "sections": ["Income Analysis"], "result": { "value": "18098.00" } } ] } } ``` -------------------------------- ### Create and Get Expense Summary using cURL Source: https://context7.com/basiqio/api-ref/llms.txt This example illustrates the process of generating an expense summary for a user. It involves a POST request to create the summary, specifying accounts and a time frame, followed by a GET request to retrieve the detailed expense report, categorized by ANZSIC codes. An access token is required for these operations. ```cURL curl -X POST https://au-api.basiq.io/users/25c8d1ed77/expenses \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "accounts": ["s55bf3", "s55bf4"], "fromMonth": "2019-05", "toMonth": "2019-09" }' ``` ```cURL curl https://au-api.basiq.io/users/25c8d1ed77/expenses/s55bf4 \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` -------------------------------- ### Create and Get Income Summary using cURL Source: https://context7.com/basiqio/api-ref/llms.txt This section details how to create an income summary by providing user ID, accounts, and a date range. It also includes an example of how to retrieve the generated income summary, which includes regular and irregular income breakdowns. Authentication with a bearer token is necessary. ```cURL curl -X POST https://au-api.basiq.io/users/25c8d1ed77/income \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "accounts": ["s55bf3", "s55bf4"], "fromMonth": "2019-05", "toMonth": "2019-09" }' ``` ```cURL curl https://au-api.basiq.io/users/25c8d1ed77/income/s55bf4 \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` -------------------------------- ### API Pagination Example Source: https://context7.com/basiqio/api-ref/llms.txt Illustrates a typical response structure for paginated data from the Basiq API. It includes information about the total count, page size, and links for navigating to the next set of results. ```json { "type": "list", "count": 100, "size": 500, "data": [...], "links": { "self": "https://au-api.basiq.io/users/ea3a81/transactions", "next": "https://au-api.basiq.io/users/ea3a81/transactions?next=bf1ec9d4" } } ``` -------------------------------- ### Common Filter Operations Source: https://context7.com/basiqio/api-ref/llms.txt Examples of how to use the 'filter' query parameter for various comparison operations like equals, not equals, greater than, and less than. ```APIDOC ## Filter Operations ### Description Filters allow you to refine the data returned by API endpoints. You can specify conditions on various fields to narrow down your results. Multiple filters can be combined using a comma. ### Method GET ### Endpoint `/[resource_collection]?[filter_parameter]` ### Parameters #### Query Parameters - **filter** (string) - Specifies the filtering conditions. The format is `field.operator('value')`. ### Filter Operators - **eq** (Equals): `filter=field.eq('value')` - **ne** (Not Equals): `filter=field.ne('value')` - **gt** (Greater Than): `filter=field.gt('value')` - **lt** (Less Than): `filter=field.lt('value')` ### Examples #### Equals ``` filter=account.id.eq('s55bf3') ``` #### Not Equals ``` filter=status.ne('pending') ``` #### Greater Than ``` filter=transaction.postDate.gt('2023-01-01') ``` #### Less Than ``` filter=transaction.postDate.lt('2024-01-01') ``` #### Multiple Filters (Comma-Separated) ``` filter=transaction.postDate.gt('2023-01-01'),transaction.direction.eq('debit') ``` ``` -------------------------------- ### Create and Get Affordability Summary using cURL Source: https://context7.com/basiqio/api-ref/llms.txt This snippet demonstrates how to create an affordability summary for a user by specifying accounts and a date range. It also shows how to retrieve the status of the affordability job and the final affordability summary report. Requires an access token for authorization. ```cURL curl -X POST https://au-api.basiq.io/users/25c8d1ed77/affordability \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "accounts": ["s55bf3", "s55bf4"], "fromMonth": "2019-05", "toMonth": "2019-09" }' ``` ```cURL curl https://au-api.basiq.io/users/25c8d1ed77/affordability/s55bf3 \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` ```cURL curl https://au-api.basiq.io/users/25c8d1ed77/affordability \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` -------------------------------- ### API Error Response Example Source: https://context7.com/basiqio/api-ref/llms.txt Demonstrates the structure of an error response from the Basiq API, specifically for a 'parameter-not-valid' error. This helps developers understand how to handle invalid filter parameters. ```json { "type": "list", "correlationId": "ac5ah55", "data": [ { "type": "error", "code": "parameter-not-valid", "title": "Parameter value is not valid", "detail": "The provided filter parameter is in invalid format or unsupported", "source": { "parameter": "filter" } } ] } ``` -------------------------------- ### Manage Bank Connections using cURL Source: https://context7.com/basiqio/api-ref/llms.txt This snippet demonstrates how to manage user connections to financial institutions using cURL. It includes examples for listing all connections, filtering by status, and refreshing all connections to retrieve updated data. ```bash # List all connections curl https://au-api.basiq.io/users/ea3a81/connections \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" # Filter by status curl "https://au-api.basiq.io/users/ea3a81/connections?filter=status.eq('active')" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" # Refresh all connections curl -X POST https://au-api.basiq.io/users/ea3a81/connections/refresh \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` -------------------------------- ### Affordability API Source: https://context7.com/basiqio/api-ref/llms.txt Endpoints for creating and retrieving affordability summaries based on account data. ```APIDOC ## POST /users/{userId}/affordability ### Description Creates an affordability summary for a given user by analyzing specified accounts within a date range. ### Method POST ### Endpoint /users/{userId}/affordability ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier for the user. #### Request Body - **accounts** (array of strings) - Required - A list of account IDs to include in the analysis. - **fromMonth** (string) - Required - The start month for the analysis in 'YYYY-MM' format. - **toMonth** (string) - Required - The end month for the analysis in 'YYYY-MM' format. ### Request Example ```json { "accounts": ["s55bf3", "s55bf4"], "fromMonth": "2019-05", "toMonth": "2019-09" } ``` ### Response #### Success Response (200) - **type** (string) - The type of the response, 'job' for an ongoing process. - **id** (string) - The ID of the job created for the affordability summary. - **links** (object) - Links related to the job. - **self** (string) - The URL to check the job status. #### Response Example ```json { "type": "job", "id": "s55bf3", "links": { "self": "https://au-api.basiq.io/jobs/s55bf3" } } ``` ## GET /users/{userId}/affordability/{jobId} ### Description Retrieves a detailed affordability summary for a previously created job. ### Method GET ### Endpoint /users/{userId}/affordability/{jobId} ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier for the user. - **jobId** (string) - Required - The ID of the affordability job. ### Response #### Success Response (200) - **type** (string) - The type of the response, 'affordability'. - **id** (string) - The ID of the affordability summary. - **coverageDays** (integer) - The number of days covered by the data. - **fromMonth** (string) - The start month of the analysis. - **toMonth** (string) - The end month of the analysis. - **generatedDate** (string) - The date and time the summary was generated. - **summary** (object) - A high-level summary of financial metrics. - **assets** (string) - Total assets. - **creditLimit** (string) - Total credit limit. - **expenses** (string) - Total expenses. - **liabilities** (string) - Total liabilities. - **loanRepaymentMonthly** (string) - Monthly loan repayment amount. - **netPosition** (string) - Net financial position. - **potentialLiabilitiesMonthly** (string) - Potential monthly liabilities. - **regularIncome** (object) - Details about regular income. - **previous3Months** (object) - Average monthly income for the last 3 months. - **avgMonthly** (string) - Average monthly income. - **savings** (string) - Total savings. - **assets** (array) - List of asset details. - **liabilities** (object) - List of liability details (credit and loan). - **external** (array) - List of external financial data sources. #### Response Example ```json { "type": "affordability", "id": "s55bf3", "coverageDays": 392, "fromMonth": "2019-03", "toMonth": "2020-03", "generatedDate": "2020-03-26T06:56:44", "summary": { "assets": "59983.11", "creditLimit": "20000.00", "expenses": "-12046.00", "liabilities": "-323946.20", "loanRepaymentMonthly": "5284.00", "netPosition": "-263963.09", "potentialLiabilitiesMonthly": "-1727.00", "regularIncome": { "previous3Months": { "avgMonthly": "18098.00" } }, "savings": "93.00" }, "assets": [ { "type": "account", "account": { "product": "Hooli Transaction", "type": "transaction" }, "availableFunds": "45670.98", "balance": "35298.67", "currency": "AUD", "institution": "Hooli", "previous6Months": { "maxBalance": "38309.44", "minBalance": "10032.81" } } ], "liabilities": { "credit": [ { "account": { "type": "credit-card", "product": "Hooli Credit Card" }, "balance": "-11713.20", "availableFunds": "8286.80", "creditLimit": "20000.00", "currency": "AUD", "institution": "Hooli", "previous6Months": { "cashAdvances": "-2053.50" } } ], "loan": [ { "account": { "type": "mortgage", "product": "Platnm Homeloan" }, "balance": "-312233.00", "availableFunds": "87767.00", "currency": "AUD", "institution": "Hooli", "previous6Months": { "arrears": "true" } } ] }, "external": [ { "source": "afterpay", "payments": [ { "amountAvg": "-50.50", "amountAvgMonthly": "-20.00", "first": "2019-03-15", "last": "2020-03-15", "noOccurrences": 2, "total": "-146.50" } ] } ] } ``` ## GET /users/{userId}/affordability ### Description Lists all affordability summaries associated with a user. ### Method GET ### Endpoint /users/{userId}/affordability ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier for the user. ### Response #### Success Response (200) - Returns a list of affordability summaries. The exact structure of each summary in the list would mirror the response of 'Get affordability summary'. #### Response Example (Example would be a JSON array containing objects similar to the 'Get affordability summary' response) ``` -------------------------------- ### User Management - Create User - Basiq API Source: https://context7.com/basiqio/api-ref/llms.txt Creates a new Basiq user object to associate financial data and connections. Supports both individual and business users with optional verification details. Requires an access token for authorization. ```bash # Create individual user curl -X POST https://au-api.basiq.io/users \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "email": "gavin@hooli.com", "mobile": "+61410888666", "firstName": "Gavin", "lastName": "Belson" }' # Create business user with verification curl -X POST https://au-api.basiq.io/users \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "email": "gavin@hooli.com", "mobile": "+61410888999", "firstName": "Gavin", "lastName": "Belson", "businessName": "Manly Accounting PTY LTD", "businessIdNo": "16 7645 892", "businessIdNoType": "ABN", "businessAddress": { "addressLine1": "21 Sydney Rd", "suburb": "Manly", "state": "NSW", "postcode": "2095", "countryCode": "AUS" }, "verificationStatus": true, "verificationDate": "12/01/2024" }' # Response { "type": "user", "id": "ea0acf2b-b816-4255-9c9c-72207a0bf836", "email": "gavin@hooli.com", "mobile": "+61410888666", "firstName": "Gavin", "lastName": "Belson", "links": { "self": "https://au-api.basiq.io/users/ea0acf2b-b816-4255-9c9c-72207a0bf836" } } ``` -------------------------------- ### Filter Validation Error Example Source: https://context7.com/basiqio/api-ref/llms.txt An example of a filter validation error response, indicating that a provided filter parameter is invalid or unsupported. ```APIDOC ## Filter Validation Error Response ### Description This response indicates that a filter parameter provided in the request is not valid, either due to incorrect format or because the filter is not supported for the requested resource. ### Method N/A (This is an example of an error response) ### Endpoint N/A ### Response #### Error Response - **type** (string) - The type of the response, usually 'list' for errors. - **correlationId** (string) - A unique identifier for the request, useful for tracing. - **data** (array) - An array of error objects. - **type** (string) - The type of the error, typically 'error'. - **code** (string) - An error code, e.g., 'parameter-not-valid'. - **title** (string) - A short, human-readable title for the error. - **detail** (string) - A more detailed explanation of the error. - **source** (object) - Information about the source of the error. - **parameter** (string) - The name of the parameter that caused the error. ### Response Example ```json { "type": "list", "correlationId": "ac5ah55", "data": [ { "type": "error", "code": "parameter-not-valid", "title": "Parameter value is not valid", "detail": "The provided filter parameter is in invalid format or unsupported", "source": { "parameter": "filter" } } ] } ``` ``` -------------------------------- ### GET /enrich Source: https://context7.com/basiqio/api-ref/llms.txt Enriches transaction data with merchant details, location, and categorization. Useful for understanding transaction context and merchant behavior. ```APIDOC ## GET /enrich ### Description Enriches transaction data with merchant details, location, and categorization. Useful for understanding transaction context and merchant behavior. ### Method GET ### Endpoint `/enrich` ### Parameters #### Query Parameters - **q** (string) - Required - The query string, typically a merchant name or transaction description. - **country** (string) - Required - The ISO country code for the search (e.g., 'AU'). - **institution** (string) - Optional - The institution ID to narrow down the search. - **accountType** (string) - Optional - The type of account the transaction is associated with (e.g., 'transaction'). - **amount** (number) - Optional - The transaction amount, used for more specific matching. - **mcc** (string) - Optional - The Merchant Category Code. ### Request Example ```bash # Basic enrichment curl "https://au-api.basiq.io/enrich?q=WOOLWORTHS&country=AU&institution=AU00000" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" # Complete enrichment with all parameters curl "https://au-api.basiq.io/enrich?q=METRO%20PETROLEUM&country=AU&institution=AU04301&accountType=transaction&amount=-12.95&mcc=5541" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` ### Response #### Success Response (200) - **type** (string) - The resource type, 'enrich'. - **direction** (string) - The transaction direction ('debit' or 'credit'). - **class** (string) - The transaction class (e.g., 'payment'). - **data** (object) - Enriched data about the merchant and transaction. - **merchant** (object) - Information about the merchant. - **id** (string) - The merchant's unique identifier. - **businessName** (string) - The official business name. - **website** (string) - The merchant's website URL. - **abn** (string) - The Australian Business Number. - **phoneNumber** (object) - Merchant's phone number. - **local** (string) - Local format phone number. - **international** (string) - International format phone number. - **category** (object) - Categorization details. - **matchType** (string) - How the match was determined (e.g., 'merchantFull'). - **matchScore** (string) - A score indicating the confidence of the match. - **anzsic** (object) - Australian and New Zealand Standard Industrial Classification details. - **division** (object) - ANZSIC Division. - **subdivision** (object) - ANZSIC Subdivision. - **group** (object) - ANZSIC Group. - **class** (object) - ANZSIC Class. - **location** (object) - Physical location of the merchant. - **routeNo** (string) - Street number. - **route** (string) - Street name. - **postalCode** (string) - Postal code. - **suburb** (string) - Suburb. - **state** (string) - State or region. - **country** (string) - Country. - **formattedAddress** (string) - Fully formatted address string. - **geometry** (object) - Geographic coordinates. - **lat** (string) - Latitude. - **lng** (string) - Longitude. - **tags** (array) - Array of relevant tags (e.g., 'income:salary'). - **links** (object) - Links related to the enrichment result. - **self** (string) - URL to the enrichment query. - **logo-master** (string) - URL for the merchant's master logo. - **logo-thumb** (string) - URL for the merchant's thumbnail logo. #### Response Example ```json { "type": "enrich", "direction": "debit", "class": "payment", "data": { "merchant": { "id": "f0ff1071-6a1a-45d6-b7af-8be668a3411a", "businessName": "Woolworths", "website": "https://www.woolworths.com.au", "abn": "88000014675", "phoneNumber": { "local": "(02) 4276 6018", "international": "+61 2 4276 6018" } }, "category": { "matchType": "merchantFull", "matchScore": "1.0", "anzsic": { "division": { "code": "G", "title": "Retail Trade" }, "subdivision": { "code": "41", "title": "Food Retailing" }, "group": { "code": "411", "title": "Supermarket and Grocery Stores" }, "class": { "code": "4110", "title": "Supermarket and Grocery Stores" } } }, "location": { "routeNo": "29", "route": "E Esplanade", "postalCode": "2095", "suburb": "MANLY", "state": "NSW", "country": "Australia", "formattedAddress": "1/39 E Esplanade, Manly NSW 2095", "geometry": { "lat": "-33.79988520000001", "lng": "151.2858021" } }, "tags": [ "conduct:dishonour", "liability:afterpay", "income:salary" ] }, "links": { "self": "https://au-api.basiq.io/enrich?country=AU&institution=AU00000&q=WOOLWORTHS", "logo-master": "https://enrich-bucket.s3.amazonaws.com/woolworths-master.svg", "logo-thumb": "https://enrich-bucket.s3.amazonaws.com/woolworths-thumb.svg" } } ``` ``` -------------------------------- ### User Management - Create User Source: https://context7.com/basiqio/api-ref/llms.txt Creates a new Basiq user object to associate financial data and connections. Supports both individual and business users with optional verification details. ```APIDOC ## POST /users ### Description Creates a new Basiq user object to associate financial data and connections. Supports both individual and business users with optional verification details. ### Method POST ### Endpoint /users ### Parameters #### Request Body - **email** (string) - Required - The email address of the user. - **mobile** (string) - Required - The mobile number of the user. - **firstName** (string) - Required - The first name of the user. - **lastName** (string) - Required - The last name of the user. - **businessName** (string) - Optional - The name of the business. - **businessIdNo** (string) - Optional - The business identification number. - **businessIdNoType** (string) - Optional - The type of business identification number (e.g., `ABN`). - **businessAddress** (object) - Optional - The business address details. - **addressLine1** (string) - Required - Street address. - **suburb** (string) - Required - Suburb. - **state** (string) - Required - State. - **postcode** (string) - Required - Postcode. - **countryCode** (string) - Required - Country code (e.g., `AUS`). - **verificationStatus** (boolean) - Optional - Indicates if the user is verified. - **verificationDate** (string) - Optional - The date of verification. ### Request Example ```bash # Create individual user curl -X POST https://au-api.basiq.io/users \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "email": "gavin@hooli.com", "mobile": "+61410888666", "firstName": "Gavin", "lastName": "Belson" }' # Create business user with verification curl -X POST https://au-api.basiq.io/users \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "email": "gavin@hooli.com", "mobile": "+61410888999", "firstName": "Gavin", "lastName": "Belson", "businessName": "Manly Accounting PTY LTD", "businessIdNo": "16 7645 892", "businessIdNoType": "ABN", "businessAddress": { "addressLine1": "21 Sydney Rd", "suburb": "Manly", "state": "NSW", "postcode": "2095", "countryCode": "AUS" }, "verificationStatus": true, "verificationDate": "12/01/2024" }' ``` ### Response #### Success Response (200) - **type** (string) - The resource type (e.g., `user`). - **id** (string) - The unique identifier for the user. - **email** (string) - The user's email address. - **mobile** (string) - The user's mobile number. - **firstName** (string) - The user's first name. - **lastName** (string) - The user's last name. - **links** (object) - Links related to the user. - **self** (string) - URL to the user resource. #### Response Example ```json { "type": "user", "id": "ea0acf2b-b816-4255-9c9c-72207a0bf836", "email": "gavin@hooli.com", "mobile": "+61410888666", "firstName": "Gavin", "lastName": "Belson", "links": { "self": "https://au-api.basiq.io/users/ea0acf2b-b816-4255-9c9c-72207a0bf836" } } ``` ``` -------------------------------- ### Create Webhook Notification - Bash Source: https://context7.com/basiqio/api-ref/llms.txt Configures webhooks to receive real-time platform event notifications. This involves specifying a name, description, URL, and the events to subscribe to. Requires a valid access token for authorization. ```bash # Create webhook curl -X POST https://au-api.basiq.io/notifications/webhooks \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "name": "My General Webhook", "description": "Webhook to catch all events", "url": "https://piper.com/basiq-messages/", "subscribedEvents": ["user.created", "connection.updated", "data.available"] }' # Response { "type": "webhook", "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "name": "My General Webhook", "description": "Webhook that catches all my events", "url": "https://piper.com/basiq-messages/", "status": "active", "secret": "rfiuheo43934", "subscribedEvents": ["user.created", "connection.updated", "data.available"], "links": { "self": "https://au-api.basiq.io/notifications/webhooks/3fa85f64-5717-4562-b3fc-2c963f66afa6" } } ``` -------------------------------- ### Get Specific Connection - cURL Source: https://context7.com/basiqio/api-ref/llms.txt Retrieves details for a specific user connection from the Basiq API. Requires user and connection IDs, along with an authorization token. ```bash curl https://au-api.basiq.io/users/ea3a81/connections/8fce3b \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` -------------------------------- ### List Webhooks - Bash Source: https://context7.com/basiqio/api-ref/llms.txt Retrieves a list of all configured webhooks for the account. This endpoint is useful for reviewing existing webhook configurations. Requires an authorization header with a valid access token. ```bash # List all webhooks curl https://au-api.basiq.io/notifications/webhooks \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` -------------------------------- ### GET /users/{userId}/identities Source: https://context7.com/basiqio/api-ref/llms.txt Retrieves a list of all identity information for a given user across connected financial institutions. This data is used for KYC verification. ```APIDOC ## GET /users/{userId}/identities ### Description Retrieves a list of all identity information for a given user across connected financial institutions. This data is used for KYC verification. ### Method GET ### Endpoint `/users/{userId}/identities` ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier of the user. ### Request Example ```bash curl https://au-api.basiq.io/users/ea0acf2b-b816-4255-9c9c-72207a0bf836/identities \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` ### Response #### Success Response (200) - **type** (string) - The resource type, typically 'list'. - **count** (integer) - The number of identities returned. - **data** (array) - An array of identity objects. - **type** (string) - The resource type, 'identity'. - **id** (string) - The unique identifier of the identity. - **created** (string) - ISO 8601 timestamp of when the identity was created. - **updated** (string) - ISO 8601 timestamp of when the identity was last updated. - **source** (string) - The source of the identity data (e.g., 'openbanking'). - **connectionID** (string) - The ID of the connection the identity data came from. - **institutionID** (string) - The ID of the institution the identity data came from. - **fullName** (string) - The full name of the individual. - **firstName** (string) - The first name. - **lastName** (string) - The last name. - **middleName** (string) - The middle name (if available). - **title** (string) - The title (e.g., 'Mr.', 'Ms.'). - **DOB** (string) - The date of birth in YYYY-MM-DD format. - **occupationCode** (string) - The code for the individual's occupation. - **occupationCodeVersion** (string) - The version of the occupation code used. - **phoneNumbers** (array) - An array of phone numbers. - **emailAddresses** (array) - An array of email addresses. - **physicalAddresses** (array) - An array of physical addresses. - **type** (string) - The type of address (e.g., 'home'). - **addressLine1** (string) - The first line of the address. - **postcode** (string) - The postcode or ZIP code. - **city** (string) - The city or locality. - **state** (string) - The state or region. - **country** (string) - The country. - **countryCode** (string) - The ISO country code. - **formattedAddress** (string) - The complete formatted address. - **organisation** (object) - Details about any associated organization. - **businessName** (string) - The name of the business. - **abn** (string) - The Australian Business Number. - **acn** (string) - The Australian Company Number. - **isACNCRegistered** (boolean) - Whether the organization is registered with ACNC. - **links** (object) - Links related to the identity resource. - **self** (string) - URL to the specific identity resource. #### Response Example ```json { "type": "list", "count": 1, "data": [ { "type": "identity", "id": "q5c62a43-9725-4w4e-bdte-99571aa8c5cb", "created": "2024-06-19T10:38:31.152930692Z", "updated": "2024-06-19T10:38:31.152930692Z", "source": "openbanking", "connectionID": "f8c13t7a-ta01-7ec5-b89b-7b96a0ac8305", "institutionID": "AU00401", "fullName": "John Doe", "firstName": "John", "lastName": "Doe", "middleName": "James", "title": "Mr.", "DOB": "1985-05-25", "occupationCode": "12345", "occupationCodeVersion": "V1.2", "phoneNumbers": ["+6411222333"], "emailAddresses": ["john.doe@example.com"], "physicalAddresses": [ { "type": "home", "addressLine1": "OAK STREET NSW 2099", "postcode": "2099", "city": "Northern Beaches Council", "state": "New South Wales", "country": "Australia", "countryCode": "AU", "formattedAddress": "OAK STREET NSW 2099, NSW 2099, Australia" } ], "organisation": { "agentFirstName": "", "agentLastName": "", "businessName": "", "abn": "", "acn": "", "isACNCRegistered": false }, "links": { "self": "https://au-api.basiq.io/users/ea0acf2b-b816-4255-9c9c-72207a0bf836/identities/q5c62a43-9725-4w4e-bdte-99571aa8c5cb" } } ] } ``` ``` -------------------------------- ### GET /users/{userId}/connections/{connectionId} Source: https://context7.com/basiqio/api-ref/llms.txt Retrieves details for a specific financial connection associated with a user. Includes connection status, last usage, and associated institution information. ```APIDOC ## GET /users/{userId}/connections/{connectionId} ### Description Retrieves details for a specific financial connection associated with a user. Includes connection status, last usage, and associated institution information. ### Method GET ### Endpoint `/users/{userId}/connections/{connectionId}` ### Parameters #### Path Parameters - **userId** (string) - Required - The unique identifier of the user. - **connectionId** (string) - Required - The unique identifier of the connection. ### Request Example ```bash curl https://au-api.basiq.io/users/ea3a81/connections/8fce3b \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` ### Response #### Success Response (200) - **type** (string) - The resource type, 'connection'. - **id** (string) - The unique identifier of the connection. - **status** (string) - The current status of the connection (e.g., 'active'). - **lastUsed** (string) - The ISO 8601 timestamp of the last connection activity. - **institution** (object) - Information about the financial institution. - **id** (string) - The institution's unique identifier. - **name** (string) - The name of the institution. #### Response Example ```json { "type": "connection", "id": "8fce3b", "status": "active", "lastUsed": "2019-09-28T13:39:33Z", "institution": { "id": "AU00000", "name": "Hooli Bank" } } ``` ```