{"swagger":"2.0","host":"api.linxo.com","basePath":"/v2","schemes":["https"],"info":{"title":"Linxo Open Api","version":"0.0.1"},"securityDefinitions":{"OAuth":{"type":"oauth2","flow":"accessCode","scopes":{"accounts_manage":"scope required to manage accounts","accounts_read":"scope required to read accounts and connections","connections_manage":"scope required to manage connections","connections_sync":"scope required to synchronize connections","transactions_read":"scope required to read transactions, accounts and connections","users_create":"scope required to create a new user"}}},"tags":[],"paths":{"/accounts":{"get":{"summary":"Get all accounts","operationId":"getAccounts","description":"**[Protected by one of the following scopes : accounts_manage or accounts_read or transactions_read]** This endpoint allows you to retrieve the list of all accounts. The structure of an account can change depending on the type of account (LOAN, CHECKING, etc.). \n    When no account is found, an empty array is returned. Accounts are attached to a \"connection\" resource that allows you to connect to a provider's website to retrieve and update account information.\n    Accounts can be filtered with several criterias described in the description of body's request.\n    Accounts can be sorted by name and/or creation_date. Just pass the `sort` parameter in the query. The parameter value is the name of field(s) separated by a comma. By default, sorting is ascending. A field can be prefixed with the sign \"-\" so that the sorting is descending. example sort=name,-creation_date","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Filters accounts by type. Separated by a comma (eg: LOAN,CHECKINGS), many of : CHECKINGS,SAVINGS,LOAN,CREDIT_CARD","name":"type","in":"query"},{"type":"string","description":"Filters by queried value in all text fields","name":"q","in":"query"},{"type":"number","description":"Page number in the pagination","x-constraint":{"sign":"positive"},"name":"page","in":"query"},{"type":"number","description":"Max number of accounts to retrieve","x-constraint":{"sign":"positive"},"name":"limit","in":"query"},{"type":"string","description":"Filters accounts by status. [Read more about status description](/reference#operation/getAccount). One of : MANUAL,ACTIVE,ERROR,NOT_FOUND,CLOSED,SUSPENDED,PENDING_CONSENT","name":"status","in":"query"},{"type":"string","description":"Filters accounts by connection id","name":"connection_id","in":"query"},{"type":"string","description":"Filters accounts by usage. One of : PERSONAL, PROFESSIONAL","name":"usage","in":"query"},{"type":"string","description":"Sort results. Results can be sorted by name or creation_date. eg: name,-creation_date","name":"sort","in":"query"}],"produces":["application/json"],"tags":["accounts"],"security":[{"OAuth":["accounts_read","transactions_read","accounts_manage"]}],"responses":{"200":{"description":"Accounts successfully retrieved","schema":{"$ref":"#/definitions/Accounts"}},"400":{"description":"Invalid query parameters","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to read accounts information","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"post":{"summary":"Create an account","operationId":"createAccount","description":"**[Protected by accounts_manage scope]** This endpoint allows you to create a previously deleted account. Accounts that can be created are those with the \"NEW\" status, retrieved by running a synchronization on the LIST_ACCOUNTS connection (/connections/id/synchronization?type=LIST_ACCOUNTS). For more information, read the section \"Synchronizations, a story of queue and events\"","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"in":"body","name":"body","schema":{"$ref":"#/definitions/AccountAdd"}}],"consumes":["application/json"],"produces":["application/json"],"tags":["accounts"],"security":[{"OAuth":["accounts_manage"]}],"responses":{"201":{"description":"Account successfully created. The unique identifier of the account can be found in Location header (eg: Location: /accounts/1234)"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to add a new account","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"The account was not found within the accounts for the given connection","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/categories":{"get":{"summary":"Get all the categories","operationId":"getCategories","description":"This endpoint allows you to retrieve the list of categories. Children's categories provide information on the parent category. Categories can be filtered by type or parent id.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Filters categories by type.","name":"type","in":"query"},{"type":"string","description":"Filters categories by parent id","name":"parent_id","in":"query"}],"produces":["application/json"],"tags":["categories"],"responses":{"200":{"description":"Categories has been successfully retrieved or empty array if no categories","schema":{"$ref":"#/definitions/Categories"}},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/connections":{"get":{"summary":"Get all the connections of the current user","operationId":"getConnections","description":"**[Protected by one of the following scopes : accounts_read or transactions_read or connections_manage]** Connections contain the list of information required to connect to a provider's website.\n    This endpoint allows you to retrieve the list of all connections. You can filter them and paginate them according to different criteria","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"number","description":"Page number in the pagination","x-constraint":{"sign":"positive"},"name":"page","in":"query"},{"type":"number","description":"Max number of connections to retrieve","x-constraint":{"sign":"positive"},"name":"limit","in":"query"},{"type":"string","description":"Filter connections by status. [Read more about status description](/reference#operation/getConnection). One of : NONE, NEVER, RUNNING, PARTIAL_SUCCESS, SUCCESS, FAILED, AUTH_FAILED, TOO_MANY_ATTEMPTS, SERVICE_UNAVAILABLE, PASSWORD_CHANGE_REQUIRED, USER_ACTION_REQUIRED, CHALLENGE_REQUIRED, CHALLENGE_TIMED_OUT, CHALLENGE_FAILED, CHALLENGE_CANCELLED, NEEDS_SECRET, CLOSED","name":"status","in":"query"},{"type":"string","description":"Filter connections by provider id","name":"provider_id","in":"query"}],"produces":["application/json"],"tags":["connections"],"security":[{"OAuth":["accounts_read","transactions_read","connections_manage"]}],"responses":{"200":{"description":"Connections successfully retrieved or empty array if no connections","schema":{"$ref":"#/definitions/Connections"}},"400":{"description":"Bad parameters value in the query parameters","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to read connections information","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"post":{"summary":"Creates a new connection for the current user","operationId":"createConnection","description":"**[Protected by connections_manage scope]** This endpoint allows you to create a connection to a provider's website. \n    To make this connection and to offer the best security, you must first create an encryption key, provide the unique identifier of the provider for whom you want to create the connection and provide the list of accesses required for the connection. \n    Creating the encryption key is available via the endpoint /keys. Get a provider and its creditentials list is available via the endpoint /providers. Credentials requiring encryption are flagged \"encrypt: true\".","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"in":"body","name":"body","schema":{"$ref":"#/definitions/ConnectionCreate"}}],"consumes":["application/json"],"produces":["application/json"],"tags":["connections"],"security":[{"OAuth":["connections_manage"]}],"responses":{"201":{"description":"Connection successfully created. The unique identifier of the connection can be found in Location header (eg: Location: /connections/1234)"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to create new connection","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/providers":{"get":{"summary":"Get all the providers","operationId":"getProviders","description":"This endpoint provides a list of all the brands for which we are able to provide a connection and manage financial products.\n    A provider is composed of a list of credentials to ensure the connection to the website of this provider. Some will have to be encrypted using an encryption key (see /keys), the expected value of a credential is defined by a regular expression. Providers can be filtered and paginated using different criteria","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"number","description":"Page number in the pagination","x-constraint":{"sign":"positive"},"name":"page","in":"query"},{"type":"number","description":"Max number of providers to retrieve","x-constraint":{"sign":"positive"},"name":"limit","in":"query"},{"type":"boolean","description":"The pagination can be disabled by changing this parameter to \"false\". This makes it possible to retrieve all available providers","default":"true","name":"pagination","in":"query"},{"type":"string","description":"Filters providers by type. Separated by a comma (eg: BANKING,DOCUMENT), many of : BANKING, DOCUMENT","name":"type","in":"query"},{"type":"string","description":"Filters by queried value in all text fields","name":"q","in":"query"},{"type":"boolean","description":"Filters by provider asking for user input or not","name":"interactive","in":"query"},{"type":"string","description":"Filters providers by country code (ISO 3166 alpha 3)","name":"country_code","in":"query"}],"produces":["application/json"],"tags":["providers"],"responses":{"200":{"description":"Providers successfully retrieved","schema":{"$ref":"#/definitions/Providers"}},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"Forbidden access to providers","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/transactions":{"get":{"summary":"Get all the transactions","operationId":"getTransactions","description":"**[Protected by the scope transactions_read]** This endpoint allows you to retrieve transactions from all accounts. For performance reasons, it is not possible to request more than 500 at a time. By default, we return 100 transactions. Transactions can be filtered with several criterias.\n    A transaction is composed of, among other things, the account to which it is linked, as well as the category to which it is attached. Account information can be retrieved via the endpoint /accounts/id. Transactions are paginated, [read more about pagination](/reference/#section/Pagination). By default, transactions are sorted by import date ascending then by id descending.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"number","description":"Page number in the pagination","x-constraint":{"sign":"positive"},"name":"page","in":"query"},{"type":"number","description":"Max number of accounts to retrieve (limited to 500)","default":100,"maximum":500,"x-constraint":{"sign":"positive"},"name":"limit","in":"query"},{"type":"string","description":"Filters by origin of the transaction: [Read more about origin description](/reference#operation/getTransaction). Only supported value : TRANSACTION. ","name":"origin","in":"query","required":false},{"type":"string","description":"Filters transactions by status. Comma-separated list of statuses to include. Possible values: BOOKED, PENDING, OTHER, EXPIRED, REJECTED, CANCELLED, REFUNDED. Default behavior: if none of included_statuses and excluded_statuses filters are specified, only BOOKED transactions are returned. You cannot use both included_statuses & excluded_statuses filters in the same request.","name":"included_statuses","in":"query","required":false},{"type":"string","description":"Filters transactions by status. Comma-separated list of statuses to exclude. Possible values: BOOKED, PENDING, OTHER, EXPIRED, REJECTED, CANCELLED, REFUNDED. Default behavior: if none of included_statuses and excluded_statuses filters are specified, only BOOKED transactions are returned. You cannot use both included_statuses & excluded_statuses filters in the same request.","name":"excluded_statuses","in":"query","required":false},{"type":"number","description":"Filters transactions whose amount is greater than or equal to the minimal amount. Minimal amount is a signed float with the dot as separator. Example: 1000000.45","name":"min_amount","in":"query","required":false},{"type":"number","description":"Filters transactions to those with an amount less than or equal to the maximum amount. Maximum amount is a signed float with the dot as separator. Example: 1000000.45","name":"max_amount","in":"query","required":false},{"type":"number","description":"Filters by transaction amount. Transaction amount is a signed float with the dot as separator. Example: 1000000.45","name":"amount","in":"query","required":false},{"type":"string","description":"Filters transaction by account type. Only one possible value of : CHECKINGS,SAVINGS,LOAN,CREDIT_CARD","name":"account_type","in":"query"},{"type":"number","description":"Filters transactions by date greater or equal than the value provided as UTC timestamp in seconds","x-constraint":{"sign":"positive"},"name":"start_date","in":"query"},{"type":"number","description":"Filters transactions by date lower than value provided as UTC timestamp in seconds","x-constraint":{"sign":"positive"},"name":"end_date","in":"query"},{"type":"string","description":"Filters transactions by account id","name":"account_id","in":"query"},{"type":"string","description":"Filters transactions by category id","name":"category_id","in":"query"},{"type":"number","description":"Filters by start import date as UTC timestamp in seconds. Only transactions where the import date is strictly higher than the filter value are returned.","x-constraint":{"sign":"positive"},"name":"start_import_date","in":"query"}],"produces":["application/json"],"tags":["transactions"],"security":[{"OAuth":["transactions_read"]}],"responses":{"200":{"description":"Transactions successfully retrieved","schema":{"$ref":"#/definitions/Transaction"}},"400":{"description":"Invalid query parameters","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to read transactions information","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/accounts/{id}":{"get":{"summary":"Get an account","operationId":"getAccount","description":"**[Protected by one of the following scopes : accounts_manage or accounts_read or transactions_read]** This endpoint allows you to retrieve information about a specific account.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the account","name":"id","in":"path","required":true}],"produces":["application/json"],"tags":["accounts"],"security":[{"OAuth":["accounts_read","transactions_read","accounts_manage"]}],"responses":{"200":{"description":"Account successfully retrieved","schema":{"$ref":"#/definitions/AccountItem"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to read account information","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Account has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"delete":{"summary":"Delete an account","operationId":"deleteAccount","description":"**[Protected by accounts_manage scope]** This endpoint allows you to delete an account.\n            The entire history is also deleted. The account will no longer be updated during synchronization.\n            It is possible to add the account again by running a synchronization of type LIST_ACCOUNTS\n            on the connection (/connections/id/synchronization?type=LIST_ACCOUNTS). For more information,\n            read the section \"Synchronizations, a story of queue and events\".\n            Note that when the last account of a channel is deleted, the channel (and so, the\n            associated credentials) is also deleted (it will appear with status EMPTY in the connection\n            returned by the API). If the channel was the last channel of the connection, the connection\n            is also deleted. This is motivated by GDPR: we don't want to store credentials we don't\n            need to offer the service.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the account","name":"id","in":"path","required":true}],"tags":["accounts"],"security":[{"OAuth":["accounts_manage"]}],"responses":{"204":{"description":"Account successfully deleted"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to delete this account","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Account has not not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"put":{"summary":"Edit account information (name and status)","operationId":"updateAccount","description":"**[Protected by accounts_manage scope]** This endpoint allows to replace name and status values. It is possible to archive or unarchive an account by using its status. CLOSED = account will be archived, ACTIVE = archived account will be re-opened. A closed account will not be synchronized. Activate an account will schedule a synchronization. This endpoint allows to handle the use case of profesional accounts. [More information about professional accounts](/en/docs/using-api#professional-accounts)","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the account","name":"id","in":"path","required":true},{"in":"body","name":"body","schema":{"$ref":"#/definitions/AccountUpdate"}}],"tags":["accounts"],"security":[{"OAuth":["accounts_manage"]}],"responses":{"204":{"description":"Account successfully updated"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to edit this account","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Account has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/connections/{id}":{"get":{"summary":"Get a specific connection for the connected user","operationId":"getConnection","description":"**[Protected by one of the following scopes : accounts_read or transactions_read or connections_manage]** This endpoint allows you to retrieve information to a specific connection. \n    Connection status reports the result of the last synchronization.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","name":"id","in":"path","required":true}],"produces":["application/json"],"tags":["connections"],"security":[{"OAuth":["accounts_read","transactions_read","connections_manage"]}],"responses":{"200":{"description":"Connection successfully retrieved","schema":{"$ref":"#/definitions/ConnectionItem"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to read connections information","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Connection not found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"delete":{"summary":"Delete a specific connection","operationId":"deleteConnection","description":"**[Protected by connections_manage scope]** This endpoint allows you to delete a connection and the list of all the accounts associated with this connection.\n    Transactions and information are emptied. It is possible to re-create the connection and associate the account list with it, but not all deleted data can be retrieved.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the connection","name":"id","in":"path","required":true}],"tags":["connections"],"security":[{"OAuth":["connections_manage"]}],"responses":{"204":{"description":"Connection successfully deleted"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to delete this connection","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Connection has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"put":{"summary":"Rename connection for the current user","operationId":"updateConnection","description":"**[Protected by connections_manage scope]** This endpoint allows you to rename the connection.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the connection","name":"id","in":"path","required":true},{"in":"body","name":"body","schema":{"$ref":"#/definitions/ConnectionRename"}}],"consumes":["application/json"],"produces":["application/json"],"tags":["connections"],"security":[{"OAuth":["connections_manage"]}],"responses":{"204":{"description":"Connection successfully updated"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to edit connection","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Connection has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/keys/{id}":{"get":{"summary":"Get a specific key","operationId":"getKey","description":"**[Protected by connections_manage scope]** This endpoint allows you to retrieve information from a key","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","name":"id","in":"path","required":true}],"produces":["application/json"],"tags":["keys"],"security":[{"OAuth":["connections_manage"]}],"responses":{"200":{"description":"Key successfully retrieved","schema":{"$ref":"#/definitions/EncryptionKeyGet"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to get this key","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Key has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/providers/{id}":{"get":{"summary":"Get a specific provider","operationId":"getProvider","description":"This endpoint allows you to retrieve the information required to connect to a provider.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the provider","name":"id","in":"path","required":true}],"produces":["application/json"],"tags":["providers"],"responses":{"200":{"description":"Provider successfully retrieved","schema":{"$ref":"#/definitions/ProviderItem"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"404":{"description":"Provider has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/queues/{id}":{"get":{"summary":"Listen to events on a specific queue","operationId":"getQueue","description":"**[Protected by one of the following scopes : connections_manage or connections_sync]** This endpoint allows you to retrieve information from a queue","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","name":"id","in":"path","required":true},{"type":"number","description":"Deletes all events prior to the value provided.","name":"flush_from","in":"query","required":false},{"type":"string","description":"Filter events by resource type (CONNECTION or PAYMENT). You can filter one resource_type (resource_type=CONNECTION) or a list of resource_type (resource_type=CONNECTION,PAYMENT)","name":"resource_type","in":"query","required":false}],"produces":["application/json"],"tags":["queues"],"security":[{"OAuth":["connections_manage","connections_sync"]}],"responses":{"200":{"description":"Queue successfully retrieved","schema":{"$ref":"#/definitions/Queue"}},"204":{"description":"There are no events in this queue"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to get the queue","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Queue has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/transactions/{id}":{"get":{"summary":"Get a specific transaction","operationId":"getTransaction","description":"**[Protected by the scope transactions_read]** This endpoint allows you to retrieve the information of a transaction","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the transaction","name":"id","in":"path","required":true}],"produces":["application/json"],"tags":["transactions"],"security":[{"OAuth":["transactions_read"]}],"responses":{"200":{"description":"Transaction successfully retrieved","schema":{"$ref":"#/definitions/TransactionItem"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to read the information of this transaction","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Transaction has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/users/{id}":{"get":{"summary":"Get a specific user profile information","operationId":"getUser","description":"**[Protected by one of the following scopes : profile or profile_edit]** This endpoint makes it possible to retrieve the information provided by the user. You can use \"me\" as ID to retrieve information of the current authenticated user","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"ID of the user to retrieve","name":"id","in":"path","required":true}],"produces":["application/json"],"tags":["users"],"security":[{"OAuth":["profile"]}],"responses":{"200":{"description":"User successfully retrieved","schema":{"$ref":"#/definitions/UserGet"}},"401":{"description":"Authentication failed. The API will, for security reasons, return a 401 status code even in the case of a not found user","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to get user information","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"delete":{"summary":"Delete a user","operationId":"deleteUsersId","description":"**[Protected by the profile_edit scope]** This endpoint allows you to delete a user. It also removes all connections, accounts and transactions. No data will be kept and cannot be retrieved. You can recreate the user and redo the entire logon and account association process, but the old data will no longer be available.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"ID of the user to delete","name":"id","in":"path","required":true}],"tags":["users"],"responses":{"204":{"description":"User successfully deleted"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to delete users","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"User has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"put":{"summary":"Update a user","operationId":"updateUser","description":"**[Protected by the profile_edit scope]** This endpoint is used to update user profile data. **You cannot change authentication information like email or password**.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"ID of the user to update","name":"id","in":"path","required":true},{"in":"body","name":"body","schema":{"$ref":"#/definitions/UserUpdate"}}],"consumes":["application/json"],"tags":["users"],"security":[{"OAuth":["profile_edit"]}],"responses":{"204":{"description":"User successfully updated"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to edit this user","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"User has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/users/{id}/properties":{"get":{"summary":"Get properties of a user","operationId":"getUserProperties","description":"**[Protected by one of the following scopes : profile or profile_edit]** Retrieves user properties. \"me\" can be used to retrieve properties of the current authenticated user","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"ID of the user to retrieve","name":"id","in":"path","required":true}],"produces":["application/json"],"tags":["users"],"security":[{"OAuth":["profile","profile_edit"]}],"responses":{"200":{"description":"The properties of requested user successfully retrieved","schema":{"$ref":"#/definitions/Model14"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to get user properties","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"User has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}},"put":{"summary":"Update properties of a user","operationId":"putUserProperties","description":"**[Protected by one of the following scopes : profile or profile_edit]** Updates user properties. \"me\" can be used to update properties of the current authenticated user","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"ID of the user to retrieve","name":"id","in":"path","required":true},{"in":"body","name":"body","schema":{"$ref":"#/definitions/UserPropertiesUpdate"}}],"produces":["application/json"],"tags":["users"],"security":[{"OAuth":["profile","profile_edit"]}],"responses":{"204":{"description":"The properties of requested user successfully updated"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to put user properties","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"User has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/connections/{id}/credentials":{"put":{"summary":"Update connection credentials for the current user","operationId":"privateupdateConnectionCredentials","description":"**[Protected by connections_manage scope]** This endpoint allows you to update the list of credentials to a connection. If you have changed your credentials on the provider's service, it is important to upgrade the connection otherwise the data cannot be synchronized.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the connection to edit credentials for","name":"id","in":"path","required":true},{"in":"body","name":"body","schema":{"$ref":"#/definitions/ConnectionUpdate"}}],"consumes":["application/json"],"produces":["application/json"],"tags":["connections"],"security":[{"OAuth":["connections_manage"]}],"responses":{"204":{"description":"Credentials successfully updated"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to edit connection credentials","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Connection has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/keys":{"post":{"summary":"Create a new key","operationId":"createKey","description":"**[Protected by connections_manage scope]** This endpoint allows you to create a new encryption key. Encryption keys are used to securely transfer sensitive data during connections. Keys expire in time","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"in":"body","name":"body","schema":{"$ref":"#/definitions/EncryptionKeyCreate"}}],"consumes":["application/json"],"produces":["application/json"],"tags":["keys"],"security":[{"OAuth":["connections_manage"]}],"responses":{"201":{"description":"Key successfully created. The unique identifier of the key can be found in Location header (eg: Location: /keys/1234)"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to create a new key","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/users":{"post":{"summary":"Create a new user","operationId":"createUser","description":"**[Protected by the users_create scope]** This endpoint is used to create a user. A user needs to be logged-in to use the endpoints available in this API (exception : providers).","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"in":"body","name":"body","schema":{"$ref":"#/definitions/UserCreate"}}],"consumes":["application/json"],"tags":["users"],"security":[{"OAuth":["users_create"]}],"responses":{"201":{"description":"User successfully created. The unique identifier of the user can be found in Location header (eg: Location: /users/1234)"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to create users","schema":{"$ref":"#/definitions/Error403"}},"409":{"description":"Email already in use","schema":{"$ref":"#/definitions/Error409"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/connections/synchronize":{"post":{"summary":"Synchronizes all the connections for the connected user","operationId":"synchronizeConnections","description":"**[Protected by connections_sync scope]** This endpoint triggers synchronization on all connections. All accounts will be updated, transactions retrieved as well as beneficiaries, etc. \n    Synchronization of all this information takes several seconds. You must first subscribe to a queue and start listening to events to follow the progress of synchronization.\n    A list of all connections scheduled for synchronization is returned. If there are no connections to sync an empty response is returned.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false}],"produces":["application/json"],"tags":["connections"],"security":[{"OAuth":["connections_sync"]}],"responses":{"200":{"description":"The connections are submitted for synchronization","schema":{"$ref":"#/definitions/ConnectionSynchronizeAll"}},"206":{"description":"There is no connection to synchronize"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to synchronize connections","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/queues/subscribe":{"post":{"summary":"Subscribe to a new queue","operationId":"subscribeQueue","description":"**[Protected by one of the following scopes : connections_manage or connections_sync]** This endpoint allows you to subscribe to a new queue. The events of the next synchronization will stack up and can be read thanks to the endpoint /queue/id","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false}],"tags":["queues"],"security":[{"OAuth":["connections_manage","connections_sync"]}],"responses":{"201":{"description":"Subscription to queue successful. The unique identifier of the queue can be found in Location header (eg: Location: /queues/ABCDEF%25XX)"},"400":{"description":"The request payload is malformed","schema":{"$ref":"#/definitions/Error400"}},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to subscribe to a queue","schema":{"$ref":"#/definitions/Error403"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/users/availability":{"post":{"summary":"Check email availability","operationId":"privateAvailability","description":"This endpoint allows the user to verify whether a given email is already in use or not","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"in":"body","name":"body","schema":{"$ref":"#/definitions/availability"}}],"consumes":["application/json"],"tags":["users"],"responses":{"204":{"description":"Email is available"},"400":{"description":"Badly formed email value","schema":{"$ref":"#/definitions/Error400"}},"409":{"description":"Email already used","schema":{"$ref":"#/definitions/Error409"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/connections/{id}/synchronize":{"post":{"summary":"Synchronizes a specific connection and triggers events related to the type of synchronization","operationId":"privatesynchronizeConnection","description":"**[Protected by connections_sync scope]** Synchronizing a connection can trigger events related to the type of synchronization. By default, synchronization is of type=ALL. \n    The value of this parameter can be changed to LIST_ACCOUNTS. Type=ALL allows you to retrieve the information (balances, transactions...) of the financial products linked to the connection. \n    Type=LIST_ACCOUNTS allows you to retrieve the list of financial products linked to this connection. It is possible to see new products and those that have disappeared for the purpose of adding or deleting them.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the connection","name":"id","in":"path","required":true},{"type":"string","description":"Allows you to choose the type of synchronization. ALL = retrieve all information (balances, transactions). LIST_ACCOUNT = retrieve the list of financial products associated with this connection","default":"ALL","name":"type","in":"query","required":false}],"tags":["connections"],"security":[{"OAuth":["connections_sync"]}],"responses":{"204":{"description":"The connection is submitted for synchronization"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to synchronize this connection","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Connection has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/connections/{id}/user_input":{"post":{"summary":"Sends a user input on a connection (used when requested by event)","operationId":"privatesendUserInput","description":"**[Protected by connections_sync scope]** This endpoint allows to answer the challenge of a provider, send a code received by sms for example.","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"Identifier of the connection","name":"id","in":"path","required":true},{"in":"body","name":"body","schema":{"$ref":"#/definitions/ConnectionUserInput"}}],"consumes":["application/json"],"tags":["connections"],"security":[{"OAuth":["connections_sync"]}],"responses":{"204":{"description":"The input is submitted for the connection"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to answer the challenge","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"Connection has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}},"/users/{id}/terms":{"post":{"summary":"Accept terms and conditions","operationId":"privateAcceptTermsAndConditions","description":"This endpoint allows the user to validate the latest version of terms and conditions","parameters":[{"type":"string","description":"Provided Bearer token following the format: 'Bearer xxxxxxxxx'","name":"Authorization","in":"header","required":false},{"type":"string","description":"ID of the user to validate terms for","name":"id","in":"path","required":true}],"tags":["users"],"responses":{"204":{"description":"User successfully accepted the terms and conditions"},"401":{"description":"Authentication failed","schema":{"$ref":"#/definitions/Error401"}},"403":{"description":"You have insufficient permissions to edit this user","schema":{"$ref":"#/definitions/Error403"}},"404":{"description":"User has not been found","schema":{"$ref":"#/definitions/Error404"}},"500":{"description":"An unexpected error occurred while processing the request","schema":{"$ref":"#/definitions/Error500"}}}}}},"definitions":{"type":{"type":"string","description":"Type of the account.","enum":["CHECKINGS","SAVINGS","LOAN","CREDIT_CARD"]},"status":{"type":"string","description":"The status of the bank account during its last synchronization. The bank account status depends on the [connection status](/reference/#operation/getConnections)\n* `MANUAL` - Manual bank account, belonging to a manual connection. Manual connections have status `NONE`. They have no channel.\n* `ACTIVE` - The account was synchronized successfully or we never synchronized it yet. It is linked to a `SUCCESS`, `PARTIAL_SUCCESS` or `NEVER` channel. In case of `PARTIAL_SUCCESS`, an `ACTIVE` account is one of the accounts synchronized successfully.\n* `ERROR` - Bank account is currently linked to a channel whose last synchronization ended with status FAILED, AUTH_FAILED, TOO_MANY_ATTEMPTS, TOKEN_EXPIRED, SERVICE_UNAIVALABLE, PASSWORD_CHANGE_REQUIRED, USER_ACTION_REQUIRED, CHALLENGE_REQUIRED, CHALLENGE_TIMED_OUT, CHALLENGE_FAILED, CHALLENGE_CANCELLED, or it is linked to a PARTIAL_SUCCESS channel and is one of the accounts which could not be synchronized.\n* `NOT_FOUND` - Bank account is currently linked to a `PARTIAL_SUCCESS` channel. This account could not be synchronized as it could not be found during the last synchronization.\n* `CLOSED` - When an account is closed, all existing data are preserved (transactions, etc), but its balance is set to 0 and no more synchronization will occur for this account. An account can be closed independently using the [PUT /accounts/{id} endpoint](/reference/#operation/updateAccount). It can also be part of a `CLOSED` connection. A `CLOSED` connection has only `CLOSED` channels and `CLOSED` accounts. A connection can be closed using the [POST /connections/{id}/close endpoint](/reference/#operation/closeConnectionUsingPost), and reopened using the [POST /connections/{id}/reopen endpoint](/reference/#operation/reopenConnectionUsingPost)).\n* `SUSPENDED` - Bank account synchronization has been suspended because our system detected that it is a professional account. The account needs to be verified. For more information, [read about the professional account process](/en/docs/using-api).\n* `PENDING_CONSENT` - Bank account cannot be synchronized because the PSD2 consent has not been granted. [Read more about PSD2 consents.](/en/docs/PSD2)\n","enum":["MANUAL","ACTIVE","ERROR","NOT_FOUND","CLOSED","SUSPENDED","PENDING_CONSENT"]},"classification":{"type":"string","description":"Account classification","enum":["PERSONAL","BUSINESS","CORPORATE","OTHER"]},"frequency":{"type":"string","description":"Frequency of payments","enum":["WEEKLY","BIWEEKLY","TWICEMONTHLY","MONTHLY","FOURWEEKS","BIMONTHLY","QUARTERLY","SEMIANNUALLY","ANNUALLY"]},"Model1":{"type":"string","description":"Type of payment, choose one of the following INTONLY = Interest only payments required PRNANDINT = Principal and interest included in set payment PRNPLUSINT = Principal plus accrued interest owing","enum":["INTONLY","PRNANDINT","PRNPLUSINT"]},"next_payment":{"type":"object","properties":{"amount":{"type":"number","description":"Next loan payment amount represented by a floating number."},"due_date":{"type":"number","description":"Next payment due date as a UTC timestamp in seconds."},"type":{"$ref":"#/definitions/Model1"}}},"loan":{"type":"object","properties":{"type":{"type":"string","description":"Loan account type. Supported types : AUTO, CONSUMER, CONSTR, MORTGAGE, OTHER, HOMEEQUITY, COMMERCIAL, STUDENT, MILITARY, SMB"},"loan_type":{"type":"string","description":"Loan type specialized family: PERSONAL, REAL_ESTATE, OTHER, FIXED, REVOLVE, OPEN, COMBO"},"frequency":{"$ref":"#/definitions/frequency"},"initial_balance":{"type":"number","description":"Initial loan balance represented by a floating number."},"start_date":{"type":"number","description":"Start date of loan as a UTC timestamp in seconds"},"end_date":{"type":"number","description":"Expected loan end date as a UTC timestamp in seconds"},"interest":{"type":"number","description":"Loan interest"},"debited_account_id":{"type":"string","description":"Account used to pay the loan"},"next_payment":{"$ref":"#/definitions/next_payment"}}},"capital_gain":{"type":"object","properties":{"percent":{"type":"number","description":"Capital gain, percentage represented by a decimal number."},"amount":{"type":"number","description":"Capital gain, amount represented by a floating number."}}},"savings":{"type":"object","properties":{"type":{"type":"string","description":"Savings account type. Supported types : CEL, LIVA, LDD, LEP, LIVJ, LIV, PEL, CAT, TIT, ESP, PEA, AVIE, CAPI, PEP, PERP, PEE, PERE, PERCO, MADELIN, PREFON, COREM, CRH, OTHER, PEAE"},"savings_type":{"type":"string","description":"Savings family. Supported values : LIQUID, TERM, SHARES, LIFEINS_CAPI, RETIREMENT, OTHER"},"end_date":{"type":"number","description":"Date when this saving account will be released as a UTC timestamp in seconds."},"effect_date":{"type":"number","description":"As-of date for yield value"},"yield_rate":{"type":"number","description":"Yield rate reprensented by a decimal number."},"earned_ytd":{"type":"number","description":"Total earned year to date represented by a floating number."},"invested_net":{"type":"number","description":"Invested without tax represented by a floating number."},"invested_raw":{"type":"number","description":"Invested missing tax represented by a floating number."},"disinvested_raw":{"type":"number","description":"Get back sum, before tax represented by a floating number."},"pivot_account_id":{"type":"string","description":"Dedicated pivot account"},"capital_gain":{"$ref":"#/definitions/capital_gain"}}},"next_credit_card_payment":{"type":"object","description":"Date and amount of the next debit occurring on the checking account to which this credit card account is attached. This field is optional. The balance of a credit card account is the sum of the outstanding debits. For some banks, for a few days during the month, there may be 2 outstanding debits for a single credit card: the debit for the month N, completed but not debited, and the debit for month N+1 which just started. In that case, the balance is the sum of the 2 debits and this field will specifies the amount and date of the month N debit.","properties":{"amount":{"type":"number","description":"Amount of the next debit occurring on the checking account to which this credit card account is attached."},"due_date":{"type":"number","description":"Date of the next debit occurring on the checking account to which this credit card account is attached."}}},"credit_card":{"type":"object","properties":{"payable_account_id":{"type":"string","description":"Dedicated payable account"},"next_payment":{"$ref":"#/definitions/next_credit_card_payment"}}},"AccountOwner":{"type":"object","description":"A JSON representation of an account owner","properties":{"name":{"type":"string","description":"Account owner's name."},"address":{"type":"string","description":"Account owner's address."},"phone_number":{"type":"string","description":"Account owner's phone number."},"identification_number":{"type":"string","description":"Account owner's identification number."},"registration_date":{"type":"number","description":"Account owner's registration date (UTC timestamp in seconds)."},"birth_date":{"type":"number","description":"Account owner's date of birth (UTC timestamp in seconds)."},"birth_place":{"type":"string","description":"Account owner's place of birth."},"status":{"type":"string","description":"Account owner's status. The relationship between the bank account and the connected user. ( One of: OWNER, CO_OWNER, ATTORNEY, PRINCIPAL )"}}},"AccountItemInList":{"type":"object","description":"A JSON representation of an account","properties":{"connection_id":{"type":"string","description":"Unique identifier of the connection providing data for this account"},"name":{"type":"string","description":"Account name, built using various information (account owner, account type ... )"},"account_number":{"type":"string","description":"Account number"},"iban":{"type":"string","description":"IBAN when available. Some accounts do not have an IBAN. Even if an account has an IBAN, it may not be available through the API"},"balance":{"type":"number","description":"Account balance as reported during the last synchronization represented by a floating number. Balance is a signed float with the dot as separator. Example: 1000000.45"},"currency":{"type":"string","description":"Currency of the account in the ISO4217 format. (3 letters. Examples : \"EUR\", \"USD\")","x-constraint":{"length":3}},"balance_date":{"type":"number","description":"Date of the last balance update as UTC timestamp in seconds. This corresponds to the time when the value was read from the provider's service.","x-constraint":{"sign":"positive"}},"type":{"$ref":"#/definitions/type"},"status":{"$ref":"#/definitions/status"},"classification":{"$ref":"#/definitions/classification"},"creation_date":{"type":"number","description":"Date when this account first appeared as UTC timestamp in seconds."},"loan":{"$ref":"#/definitions/loan"},"savings":{"$ref":"#/definitions/savings"},"credit_card":{"$ref":"#/definitions/credit_card"},"owner":{"$ref":"#/definitions/AccountOwner"},"usage":{"type":"string","description":"Owner's type: PERSONAL, PROFESSIONAL."},"group":{"type":"string","description":"Name of the user's workspace on bank website."},"last_channel_definition_id":{"type":"string","description":"The unique identifier of the last channel definition associated with this account"},"id":{"type":"string","description":"The unique account identifier."}},"required":["connection_id","name","balance","currency","type","status","creation_date","loan","loan","savings","savings","id"]},"Accounts":{"type":"array","description":"List of accounts JSON representation","items":{"$ref":"#/definitions/AccountItemInList"}},"Error400":{"type":"object","description":"Error 400 JSON representation","properties":{"error":{"type":"string","description":"BAD_PARAMETERS"},"error_description":{"type":"string","description":"Provides error parameter information"},"id":{"type":"string","description":"Unique identifier of the current resource when applicable"}},"required":["error","error_description"]},"Error401":{"type":"object","description":"Error 401 JSON representation","properties":{"error":{"type":"string","description":"UNAUTHORIZED"},"error_description":{"type":"string","description":"Authentication failed."},"id":{"type":"string","description":"Unique identifier of the current resource when applicable"}},"required":["error","error_description"]},"Error403":{"type":"object","description":"Error 403 JSON representation","properties":{"error":{"type":"string","description":"FORBIDDEN"},"error_description":{"type":"string","description":"Forbidden action. Some scopes are missing or you're trying to do an action on a resource you don't own"},"id":{"type":"string","description":"Unique identifier of the current resource when applicable"}},"required":["error","error_description"]},"Error500":{"type":"object","description":"Error 500 JSON representation","properties":{"error":{"type":"string","description":"INTERNAL_SERVER_ERROR"},"error_description":{"type":"string","description":"Something went wrong"},"id":{"type":"string","description":"Unique identifier of the current resource when applicable"}},"required":["error","error_description"]},"Model2":{"type":"string","description":"Category type.","enum":["EXPENSE","INCOME","UNCATEGORIZED","OFF_BUDGET"]},"parent":{"type":"object","description":"Parent category, only when the current category is a subcategory and its type is EXPENSE","properties":{"id":{"type":"string","description":"The unique parent category identifier"},"label":{"type":"string","description":"Label of the parent category"}},"required":["id","label"]},"CategoryItem":{"type":"object","description":"A JSON representation of a category","properties":{"id":{"type":"string","description":"The unique category identifier"},"label":{"type":"string","description":"Label of the category"},"type":{"$ref":"#/definitions/Model2"},"parent":{"$ref":"#/definitions/parent"}},"required":["id","label","type"]},"Categories":{"type":"array","description":"Validates the response result according to defined schemas","items":{"$ref":"#/definitions/CategoryItem"}},"Model3":{"type":"string","description":"The status of the connection during its last synchronization : \n* `NONE` - Manual connection\n* `NEVER` - The connection has never been synchronized\n* `RUNNING` - Synchronization is in progress\n* `SUCCESS` - Synchronization successfully completed\n* `PARTIAL_SUCCESS` - Synchronization has been partially completed\n* `FAILED` - Synchronization failed\n* `NEEDS_SECRET` - Synchronization failed because no secrets have been provided during the synchronisation (only for manual accounts, not supported actually)\n* `AUTH_FAILED` - Authentication failed during synchronization\n* `TOO_MANY_ATTEMPTS` - Too many connection attempts during the authentication\n* `TOKEN_EXPIRED` - Authentication failed during synchronization because the user needs to renew its authorization. [Read more about PSD2 renew authentication](/en/docs/psd2)\n* `SERVICE_UNAIVALABLE` - The service of the provider to which the connection is trying to connect is unavailable\n* `PASSWORD_CHANGE_REQUIRED` - The synchronization has failed because a password change is required by the provider\n* `USER_ACTION_REQUIRED` - The synchronization has failed because an action is required on the provider's service (acceptance of terms and conditions, closing a popup, etc.).\n* `CHALLENGE_REQUIRED` - The synchronization has failed because the provider has sent a challenge (by SMS, mail, etc.) and the user was not assisting the process\n* `CHALLENGE_TIMED_OUT` - The synchronization has failed because the user did not answer in the allowed time\n* `CHALLENGE_FAILED` - The synchronization failed because the user responded incorrectly to the challenge\n* `CHALLENGE_CANCELLED` - The synchronization failed because the user cancelled the challenge\n* `CLOSED` - When a connection is closed, all existing data for this connection are preserved (accounts, transactions) but all account balances are set to 0 and no more synchronization will occur on this connection, on any of its channels.","enum":["NONE","NEVER","RUNNING","PARTIAL_SUCCESS","SUCCESS","FAILED","AUTH_FAILED","TOO_MANY_ATTEMPTS","SERVICE_UNAVAILABLE","PASSWORD_CHANGE_REQUIRED","USER_ACTION_REQUIRED","CHALLENGE_REQUIRED","CHALLENGE_TIMED_OUT","CHALLENGE_FAILED","CHALLENGE_CANCELLED","NEEDS_SECRET","CLOSED"]},"ConnectionOwner":{"type":"object","properties":{"name":{"type":"string","description":"Connection owner's name."},"address":{"type":"string","description":"Connection owner's address."},"birth_date":{"type":"number","description":"Connection owner's date of birth (UTC timestamp in seconds)."},"birth_place":{"type":"string","description":"Connection owner's place of birth."},"phone_number":{"type":"string","description":"Connection owner's phone number."}}},"ConnectionItemInList":{"type":"object","description":"A JSON representation of connection","properties":{"provider_id":{"type":"string","description":"The unique provider identifier"},"name":{"type":"string","description":"Connection name, based on provider's name."},"status":{"$ref":"#/definitions/Model3"},"creation_date":{"type":"string","format":"date","description":"Creation date as UTC timestamp in seconds"},"last_success_date":{"type":"string","format":"date","description":"Date of the last successful synchronization as UTC timestamp in seconds"},"last_end_date":{"type":"string","format":"date","description":"Date of the last synchronization attempt as UTC timestamp in seconds. Only filled if the connection has been synchronized once. last_success_date and last_end_date are equal after a successful synchronization."},"owner":{"$ref":"#/definitions/ConnectionOwner"},"id":{"type":"string","description":"The unique connection identifier."}},"required":["name","status","creation_date","id"]},"Connections":{"type":"array","description":"Validates the response result according to the defined schemas","items":{"$ref":"#/definitions/ConnectionItemInList"}},"Model4":{"type":"string","description":"Type of services provided","enum":["BANKING"]},"Model5":{"type":"string","description":"Type of the user's password. This field should be used to display the right keyboard to the user when entering the credentials","enum":["DATE","PWD","NUMERIC_PWD","NUMERIC","TEXT","OK_CANCEL","ERROR_MSG","INFO_MSG","TIMEOUT_MSG","WEBVIEW"]},"CredentialParams":{"type":"object","description":"List of key values for the formatted label"},"ProviderCredential":{"type":"object","description":"a JSON representation of a provider credential","properties":{"id":{"type":"string","description":"The unique credential key identifier"},"label":{"type":"string","description":"Label as it should be presented in the user interface. This string can be formatted using {param} notation"},"type":{"$ref":"#/definitions/Model5"},"regexp":{"type":"string","description":"Regular expression that can be used to validate the user input"},"encrypt":{"type":"boolean","description":"Specifies if the credential input should be encrypted client side before sending to the server"},"params":{"$ref":"#/definitions/CredentialParams"}},"required":["id","label","type","regexp","encrypt"]},"credentials":{"type":"array","description":"List of credentials needed by this provider when creating a connection.","items":{"$ref":"#/definitions/ProviderCredential"}},"ProviderItemInList":{"type":"object","description":"a JSON representation of a provider","properties":{"name":{"type":"string","description":"Name of the provider"},"branch_name":{"type":"string","description":"Name of the provider branch"},"type":{"$ref":"#/definitions/Model4"},"base_url":{"type":"string","description":"Main page URL for the provider"},"interactive":{"type":"boolean","description":"Whether this provider can ask for a user action"},"country_code":{"type":"string","description":"If the provider is specific to a country, will contain the ISO alpha3 country code"},"credentials":{"$ref":"#/definitions/credentials"},"id":{"type":"string","description":"The unique provider identifier."}},"required":["name","type","base_url","interactive","id"]},"Providers":{"type":"array","description":"A JSON array containing JSON representations of providers","items":{"$ref":"#/definitions/ProviderItemInList"}},"Model6":{"type":"string","description":"The transaction type.\n* `CREDIT` - Default type when it is not possible to determine the type of a revenue entry.\n* `DEBIT` - Default type when it is not possible to determine the type of a disbursement of money.\n* `INTEREST` - Interest on a bank account.\n* `DIVIDEND` - Payment of a company to its shareholders.\n* `BANK_FEE` - Fees on a bank account.\n* `DEPOSIT` - Deposit of money in an agency.\n* `ATM` - Withdrawing money from an ATM.\n* `POINT_OF_SALE` - Payment with a credit card.\n* `CREDIT_CARD_PAYMENT` - Month-end debit on a deferred card.\n* `INTERNAL_TRANSFER` - Transfer of money between two bank accounts of the same connection.\n* `POTENTIAL_TRANSFER` - Default type when it is not possible to determine the source or destination of a transfer.\n* `CHECK` - Transaction made by check.\n* `ELECTRONIC_PAYMENT` - The transaction is a documentary collection.\n* `CASH` - Transaction carried out using a physical currency (notes and coins).\n* `DIRECT_DEPOSIT` - Deposit of money made by a payer directly into the payee's bank account.\n* `DIRECT_DEBIT` - Transaction in which one person (or company) withdraws funds from another person's bank account.\n* `REPEATING_PAYMENT` - Recurring direct debit.\n* `OTHER` - When a transaction does not correspond to any of these types.\n","enum":["CREDIT","DEBIT","INTEREST","DIVIDEND","BANK_FEE","DEPOSIT","ATM","POINT_OF_SALE","CREDIT_CARD_PAYMENT","INTERNAL_TRANSFER","POTENTIAL_TRANSFER","CHECK","ELECTRONIC_PAYMENT","CASH","DIRECT_DEPOSIT","DIRECT_DEBIT","REPEATING_PAYMENT","OTHER"]},"origin":{"type":"string","description":"The origin of the transaction. Currently, only `TRANSACTION` origin are supported.\n* `ORIGINAL` - Not supported. When a transaction is subdivided into several transactions, the `ORIGINAL` origin refers to the original transaction.\n* `UPCOMING` - Not supported. Upcoming transaction in the budget forecast.\n* `TRANSACTION` - Bank transaction retrieved by the aggregation system.\n* `RECURRING` - Not supported. Recurring transaction in the budget forecast.\n* `SCHEDULED` - Not supported. Scheduled transaction in the budget forecast.\n","enum":["ORIGINAL","UPCOMING","TRANSACTION","RECURRING","SCHEDULED"]},"TransactionSource":{"type":"object","description":"Third party properties"},"remittance_information":{"type":"array","description":"Transaction original remittance information, as found on the ASPSP's web site (scraping) or as returned by the ASPSP's PSD2 API. For transactions obtained through scraping, this is an array of 1 or 2 lines, depending on how transactions are displayed on the ASPSP's web site. Most ASPSP web sites display transaction labels on 1 or 2 lines: the remittance_information follows what is found on the ASPSP web site. For transactions obtained through a PSD2 API, the array matches what the API returned.","items":{"type":"string"}},"Model7":{"type":"string","description":"The transaction status. Possible values are:\n* `BOOKED` - The transaction is booked.\n* `PENDING` - The transaction is not booked yet. This status is part of the STET API. The STET API states `PENDING` transactions do affect the instant balance. This has not been implemented correctly by all STET APIs.\n* `OTHER` - The transaction is not booked yet. This status is part of the STET API. The STET API states `OTHER` transactions do NOT affect the instant balance. This has not been implemented correctly by all STET APIs.\n* `EXPIRED` - Authorization expired. This status is not part of the STET API.\n* `REJECTED` - The transaction was rejected. This status is not part of the STET API.\n* `CANCELLED` - The transaction was cancelled. This status is not part of the STET API.\n* `REFUNDED` - The transaction has been refunded. This status is not part of the STET API.\n","enum":["BOOKED","PENDING","OTHER","EXPIRED","REJECTED","CANCELLED","REFUNDED"]},"TransactionItemInList":{"type":"object","description":"A JSON representation of a transaction","properties":{"account_id":{"type":"string","description":"Unique identifier of the account related to this transaction"},"amount":{"type":"number","description":"Amount of the transaction represented by a floating number. Amount is a signed float with the dot as separator. Example: 1000000.45"},"original_trx_id":{"type":"string","description":"ID of the original transaction (For TRANSACTION origin)"},"check_number":{"type":"string","description":"Number of the check when applicable. The check number is deducted from the transaction wording."},"type":{"$ref":"#/definitions/Model6"},"origin":{"$ref":"#/definitions/origin"},"category_id":{"type":"string","description":"Opaque unique id of the category"},"date":{"type":"number","description":"Transaction date as UTC timestamp in seconds. The hour, minutes and seconds are set back to 0 (midnight).","x-constraint":{"sign":"positive"}},"import_date":{"type":"number","description":"Import date as UTC timestamp in seconds","x-constraint":{"sign":"positive"}},"booking_date":{"type":"number","description":"Booking date of the transaction over the account as UTC timestamp in seconds.\nIf the transaction is not yet booked, this field must be valued with a scheduled booking date","x-constraint":{"sign":"positive"}},"transaction_date":{"type":"number","description":"Transaction date as UTC timestamp in seconds.\n\nRendered when used :\n* For card transaction: date of the transaction\n* For credit transfer: acquiring date of the transaction\n* For direct debit: receiving date of the transaction\n","x-constraint":{"sign":"positive"}},"value_date":{"type":"number","description":"Value date of the transaction as UTC timestamp in seconds.","x-constraint":{"sign":"positive"}},"label":{"type":"string","description":"Transaction label after processing by our aggregation service. Main text displayed by the provider's service."},"notes":{"type":"string","description":"Notes of the transaction after processing by our aggregation service. Secondary text displayed by the provider's service."},"source":{"$ref":"#/definitions/TransactionSource"},"currency":{"type":"string","description":"Currency of the account in the ISO4217 format. (3 letters. Examples : \"EUR\", \"USD\")","x-constraint":{"length":3}},"remittance_information":{"$ref":"#/definitions/remittance_information"},"status":{"$ref":"#/definitions/Model7"},"id":{"type":"string","description":"The unique transaction identifier"}},"required":["account_id","amount","type","origin","category_id","date","booking_date","currency","id"]},"Transaction":{"type":"array","description":"Validates the response result according to defined schemas","items":{"$ref":"#/definitions/TransactionItemInList"}},"AccountItem":{"type":"object","description":"A JSON representation of an account","properties":{"connection_id":{"type":"string","description":"Unique identifier of the connection providing data for this account"},"name":{"type":"string","description":"Account name, built using various information (account owner, account type ... )"},"account_number":{"type":"string","description":"Account number"},"iban":{"type":"string","description":"IBAN when available. Some accounts do not have an IBAN. Even if an account has an IBAN, it may not be available through the API"},"balance":{"type":"number","description":"Account balance as reported during the last synchronization represented by a floating number. Balance is a signed float with the dot as separator. Example: 1000000.45"},"currency":{"type":"string","description":"Currency of the account in the ISO4217 format. (3 letters. Examples : \"EUR\", \"USD\")","x-constraint":{"length":3}},"balance_date":{"type":"number","description":"Date of the last balance update as UTC timestamp in seconds. This corresponds to the time when the value was read from the provider's service.","x-constraint":{"sign":"positive"}},"type":{"$ref":"#/definitions/type"},"status":{"$ref":"#/definitions/status"},"classification":{"$ref":"#/definitions/classification"},"creation_date":{"type":"number","description":"Date when this account first appeared as UTC timestamp in seconds."},"loan":{"$ref":"#/definitions/loan"},"savings":{"$ref":"#/definitions/savings"},"credit_card":{"$ref":"#/definitions/credit_card"},"owner":{"$ref":"#/definitions/AccountOwner"},"usage":{"type":"string","description":"Owner's type: PERSONAL, PROFESSIONAL."},"group":{"type":"string","description":"Name of the user's workspace on bank website."},"last_channel_definition_id":{"type":"string","description":"The unique identifier of the last channel definition associated with this account"},"id":{"type":"string","description":"The unique account identifier. The value of this property corresponds to the value provided in the URL."}},"required":["connection_id","name","balance","currency","type","status","creation_date","loan","savings","id"]},"Error404":{"type":"object","description":"Error 404 JSON representation","properties":{"error":{"type":"string","description":"NOT_FOUND"},"error_description":{"type":"string","description":"Resource has not been found."},"id":{"type":"string","description":"Unique identifier of the current resource when applicable"}},"required":["error","error_description"]},"Model8":{"type":"string","description":"The status of the connection during its last synchronization : \n* `NONE` - Manual connection\n* `NEVER` - The connection has never been synchronized\n* `RUNNING` - Synchronization is in progress\n* `SUCCESS` - Synchronization successfully completed\n* `PARTIAL_SUCCESS` - Synchronization has been partially completed\n* `FAILED` - Synchronization failed\n* `NEEDS_SECRET` - Synchronization failed because no secrets have been provided during the synchronisation (only for manual accounts, not supported actually)\n* `AUTH_FAILED` - Authentication failed during synchronization\n* `TOO_MANY_ATTEMPTS` - Too many connection attempts during the authentication\n* `TOKEN_EXPIRED` - Authentication failed during synchronization because the user needs to renew its authorization. [Read more about PSD2 renew authentication](/en/docs/psd2)\n* `SERVICE_UNAIVALABLE` - The service of the provider to which the connection is trying to connect is unavailable\n* `PASSWORD_CHANGE_REQUIRED` - The synchronization has failed because a password change is required by the provider\n* `USER_ACTION_REQUIRED` - The synchronization has failed because an action is required on the provider's service (acceptance of terms and conditions, closing a popup, etc.).\n* `CHALLENGE_REQUIRED` - The synchronization has failed because the provider has sent a challenge (by SMS, mail, etc.) and the user was not assisting the process\n* `CHALLENGE_TIMED_OUT` - The synchronization has failed because the user did not answer in the allowed time\n* `CHALLENGE_FAILED` - The synchronization failed because the user responded incorrectly to the challenge\n* `CHALLENGE_CANCELLED` - The synchronization failed because the user cancelled the challenge\n* `CLOSED` - When a connection is closed, all existing data for this connection are preserved (accounts, transactions) but all account balances are set to 0 and no more synchronization will occur on this connection, on any of its channels.","enum":["NONE","NEVER","RUNNING","PARTIAL_SUCCESS","SUCCESS","FAILED","AUTH_FAILED","TOO_MANY_ATTEMPTS","SERVICE_UNAVAILABLE","PASSWORD_CHANGE_REQUIRED","USER_ACTION_REQUIRED","CHALLENGE_REQUIRED","CHALLENGE_TIMED_OUT","CHALLENGE_FAILED","CHALLENGE_CANCELLED","NEEDS_SECRET","CLOSED"]},"ConnectionItem":{"type":"object","description":"A JSON representation of connection","properties":{"provider_id":{"type":"string","description":"The unique provider identifier"},"name":{"type":"string","description":"Connection name, based on provider's name."},"status":{"$ref":"#/definitions/Model8"},"creation_date":{"type":"string","format":"date","description":"Creation date as UTC timestamp in seconds"},"last_success_date":{"type":"string","format":"date","description":"Date of the last successful synchronization as UTC timestamp in seconds"},"last_end_date":{"type":"string","format":"date","description":"Date of the last synchronization attempt as UTC timestamp in seconds. Only filled if the connection has been synchronized once. last_success_date and last_end_date are equal after a successful synchronization."},"owner":{"$ref":"#/definitions/ConnectionOwner"},"id":{"type":"string","description":"The unique connection identifier. The value of this property corresponds to the value provided in the URL."}},"required":["name","status","creation_date","id"]},"Model9":{"type":"string","description":"Type of the key.","enum":["PGP"]},"EncryptionKeyGet":{"type":"object","description":"a JSON representation of an encryption key","properties":{"id":{"type":"string","description":"The unique key identifier. The value of this property corresponds to the value provided in the URL."},"type":{"$ref":"#/definitions/Model9"},"public_key":{"type":"string","description":"String representation of the public key"},"expiration_date":{"type":"number","description":"Expiration date of the key","x-constraint":{"sign":"positive"}}},"required":["id","type","public_key","expiration_date"]},"Model10":{"type":"string","description":"Type of services provided","enum":["BANKING"]},"ProviderItem":{"type":"object","description":"a JSON representation of a provider","properties":{"name":{"type":"string","description":"Name of the provider"},"branch_name":{"type":"string","description":"Name of the provider branch"},"type":{"$ref":"#/definitions/Model10"},"base_url":{"type":"string","description":"Main page URL for the provider"},"interactive":{"type":"boolean","description":"Whether this provider can ask for a user action"},"country_code":{"type":"string","description":"If the provider is specific to a country, will contain the ISO alpha3 country code"},"credentials":{"$ref":"#/definitions/credentials"},"id":{"type":"string","description":"The unique provider identifier. The value of this property corresponds to the value provided in the URL."}},"required":["name","type","base_url","interactive","id"]},"event_type":{"type":"string","description":"The type of event prefixed by the the type of job. \n\nPrefix List:\n* `SYNC_ALL` - Events created during a normal synchronization\n* `LIST_ACCOUNTS` - Events created during a LIST_ACCOUNTS synchronization\n* `PAYMENT` - Events created during a payment action\n\nEvent types : \n* `[SYNC_ALL|LIST_ACCOUNTS|PAYMENT]_STARTED` - This event informs that job has begun\n* `[SYNC_ALL|LIST_ACCOUNTS|PAYMENT]_LOGGING_IN` - This event informs that the connection to the service provider is in progress\n* `[SYNC_ALL|LIST_ACCOUNTS|PAYMENT]_CREDENTIALS_VALIDATED` - This event informs that the credentials have been validated by the service provider\n* `[SYNC_ALL|LIST_ACCOUNTS|PAYMENT]_LOGGED_IN` - This event informs that the connection has successfully connected to the service provider\n* `[SYNC_ALL|LIST_ACCOUNTS|PAYMENT]_USER_INPUT_REQUESTED` - This event informs that the connection requires a response to a challenge sent by the service provider\n* `[SYNC_ALL|LIST_ACCOUNTS|PAYMENT]_SUCCESS` - This event informs that job has finished successfully\n* `[SYNC_ALL|LIST_ACCOUNTS|PAYMENT]_FAILURE` - This event informs that job has failed. More information is available in the resource property\n\nEvent types specific to SYNC_ALL and LIST_ACCOUNTS\n* `[SYNC_ALL|LIST_ACCOUNTS]_READING_ACCOUNT_LIST` - This event informs that the connection is browsing the list of accounts\n* `[SYNC_ALL|LIST_ACCOUNTS]_READING_ACCOUNT` - This event informs that the connection is browsing an account\n* `[SYNC_ALL|LIST_ACCOUNTS]_FINISHED_ACCOUNT` - This event informs that the connection has finished browsing an account\n* `[SYNC_ALL|LIST_ACCOUNTS]_ACCOUNT_FAILURE` - This event informs that the connection failed on an account\n* `[SYNC_ALL|LIST_ACCOUNTS]_ACCOUNT_NOT_FOUND` - This event informs you that the account has not been found\n* `[SYNC_ALL|LIST_ACCOUNTS]_TRANSACTION_READ` - This event informs you that the account is browsing the information for a transaction\n* `[SYNC_ALL|LIST_ACCOUNTS]_LOGGING_OUT` - This event informs that the connection is disconnected from the service provider\n\nEvent types specific to PAYMENT :\n* `PAYMENT_INITIATING` - This event reports that the payment is starting\n* `PAYMENT_PENDING` - This event reports that the payment is pending\n","enum":["LIST_ACCOUNTS_SUCCESS","LIST_ACCOUNTS_FAILURE","LIST_ACCOUNTS_STARTED","LIST_ACCOUNTS_LOGGING_IN","LIST_ACCOUNTS_CREDENTIALS_VALIDATED","LIST_ACCOUNTS_LOGGED_IN","LIST_ACCOUNTS_READING_ACCOUNT_LIST","LIST_ACCOUNTS_READING_ACCOUNT","LIST_ACCOUNTS_FINISHED_ACCOUNT","LIST_ACCOUNTS_ACCOUNT_FAILURE","LIST_ACCOUNTS_ACCOUNT_NOT_FOUND","LIST_ACCOUNTS_TRANSACTION_READ","LIST_ACCOUNTS_LOGGING_OUT","LIST_ACCOUNTS_USER_INPUT_REQUESTED","SYNC_ALL_SUCCESS","SYNC_ALL_FAILURE","SYNC_ALL_STARTED","SYNC_ALL_LOGGING_IN","SYNC_ALL_CREDENTIALS_VALIDATED","SYNC_ALL_LOGGED_IN","SYNC_ALL_READING_ACCOUNT_LIST","SYNC_ALL_READING_ACCOUNT","SYNC_ALL_FINISHED_ACCOUNT","SYNC_ALL_ACCOUNT_FAILURE","SYNC_ALL_ACCOUNT_NOT_FOUND","SYNC_ALL_TRANSACTION_READ","SYNC_ALL_LOGGING_OUT","SYNC_ALL_USER_INPUT_REQUESTED","PAYMENT_SUCCESS","PAYMENT_FAILURE","PAYMENT_STARTED","PAYMENT_LOGGING_IN","PAYMENT_CREDENTIALS_VALIDATED","PAYMENT_LOGGED_IN","PAYMENT_USER_INPUT_REQUESTED","PAYMENT_INITIATING","PAYMENT_PENDING"]},"resource_type":{"type":"string","description":"Type of the resource associated to the event.","enum":["CONNECTION","PAYMENT"]},"QueueResource":{"type":"object","description":"The resource associated with this event"},"list_accounts_reading_account":{"type":"object","description":"Account related event structure","properties":{"account_name":{"type":"string","description":"The name of the account related to this event"}},"required":["account_name"]},"list_accounts_finished_account":{"type":"object","description":"Account related event structure","properties":{"account_name":{"type":"string","description":"The name of the account related to this event"}},"required":["account_name"]},"sync_all_reading_account":{"type":"object","description":"Account related event structure","properties":{"account_name":{"type":"string","description":"The name of the account related to this event"}},"required":["account_name"]},"sync_all_finished_account":{"type":"object","description":"Account related event structure","properties":{"account_name":{"type":"string","description":"The name of the account related to this event"}},"required":["account_name"]},"Model11":{"type":"string","description":"This property relates the account status between the provider and the aggregation service.\n* `NEW` - This bank account is not aggregated. This may be a new financial product or an account previously deleted.\n* `PRESENT` - This bank account is present in the aggregation service and in the provider service (website or PSD2 API).\n* `MISSING` - This bank account is present on the aggregation service but missing on the provider's service (website or PSD2 API). The user can either delete this account or archive it.\n* `PENDING_CONSENT` - This bank account can not be synchronized because the PSD2 consent has not been granted. [To collect user's consent, you can access to consent endpoint](/reference#operation/putConsentsUsingPUT).\n","enum":["NEW","PRESENT","MISSING","PENDING_CONSENT"]},"ProviderAccountInfoGet":{"type":"object","description":"Information required to add an account.","properties":{"reference":{"type":"string","description":"Account's reference into connection synchronization"},"account_number":{"type":"string","description":"Account number"},"balance":{"type":"number","description":"Account balance as reported during the last synchronization represented by a floating number. Balance is a signed float with the dot as separator. Example: 1000000.45"},"balance_date":{"type":"number","description":"Date of the last balance update represented as UTC timestamp in seconds"},"type":{"$ref":"#/definitions/type"},"name":{"type":"string","description":"Account name"},"status":{"$ref":"#/definitions/Model11"}},"required":["reference","balance","balance_date","type","name","status"]},"QueueAccounts":{"type":"array","description":"The list of accounts retrieved by the synchronization","items":{"$ref":"#/definitions/ProviderAccountInfoGet"}},"list_accounts_success":{"type":"object","description":"Account list related event structure","properties":{"accounts":{"$ref":"#/definitions/QueueAccounts"}},"required":["accounts"]},"challenge":{"type":"array","description":"The list of credentials composing the challenge","items":{"$ref":"#/definitions/ProviderCredential"}},"list_accounts_user_input_requested":{"type":"object","description":"MFA related event structure","properties":{"challenge":{"$ref":"#/definitions/challenge"}},"required":["challenge"]},"sync_all_user_input_requested":{"type":"object","description":"MFA related event structure","properties":{"challenge":{"$ref":"#/definitions/challenge"}},"required":["challenge"]},"payment_user_input_requested":{"type":"object","description":"MFA related event structure","properties":{"challenge":{"$ref":"#/definitions/challenge"}},"required":["challenge"]},"QueueItem":{"type":"object","description":"The structure of an event depends on the type of synchronization that generated the event","properties":{"id":{"type":"string","description":"The unique event identifier. The value of this property corresponds to the value provided in the URL."},"channel_definition_id":{"type":"string","description":"The channel definition unique identifier the event is related to"},"creation_date":{"type":"string","format":"date","description":"Creation date as UTC timestamp in seconds"},"event_type":{"$ref":"#/definitions/event_type"},"resource_type":{"$ref":"#/definitions/resource_type"},"resource":{"$ref":"#/definitions/QueueResource"},"list_accounts_reading_account":{"$ref":"#/definitions/list_accounts_reading_account"},"list_accounts_finished_account":{"$ref":"#/definitions/list_accounts_finished_account"},"sync_all_reading_account":{"$ref":"#/definitions/sync_all_reading_account"},"sync_all_finished_account":{"$ref":"#/definitions/sync_all_finished_account"},"list_accounts_success":{"$ref":"#/definitions/list_accounts_success"},"list_accounts_user_input_requested":{"$ref":"#/definitions/list_accounts_user_input_requested"},"sync_all_user_input_requested":{"$ref":"#/definitions/sync_all_user_input_requested"},"payment_user_input_requested":{"$ref":"#/definitions/payment_user_input_requested"}},"required":["id","creation_date","event_type","resource_type","resource","list_accounts_reading_account","list_accounts_reading_account","list_accounts_finished_account","list_accounts_finished_account","sync_all_reading_account","sync_all_reading_account","sync_all_finished_account","sync_all_finished_account","list_accounts_success","list_accounts_success","list_accounts_user_input_requested","list_accounts_user_input_requested","sync_all_user_input_requested","sync_all_user_input_requested","payment_user_input_requested","payment_user_input_requested"]},"Queue":{"type":"array","description":"Validates the response result according to defined schemas","items":{"$ref":"#/definitions/QueueItem"}},"Model12":{"type":"string","description":"The transaction type.\n* `CREDIT` - Default type when it is not possible to determine the type of a revenue entry.\n* `DEBIT` - Default type when it is not possible to determine the type of a disbursement of money.\n* `INTEREST` - Interest on a bank account.\n* `DIVIDEND` - Payment of a company to its shareholders.\n* `BANK_FEE` - Fees on a bank account.\n* `DEPOSIT` - Deposit of money in an agency.\n* `ATM` - Withdrawing money from an ATM.\n* `POINT_OF_SALE` - Payment with a credit card.\n* `CREDIT_CARD_PAYMENT` - Month-end debit on a deferred card.\n* `INTERNAL_TRANSFER` - Transfer of money between two bank accounts of the same connection.\n* `POTENTIAL_TRANSFER` - Default type when it is not possible to determine the source or destination of a transfer.\n* `CHECK` - Transaction made by check.\n* `ELECTRONIC_PAYMENT` - The transaction is a documentary collection.\n* `CASH` - Transaction carried out using a physical currency (notes and coins).\n* `DIRECT_DEPOSIT` - Deposit of money made by a payer directly into the payee's bank account.\n* `DIRECT_DEBIT` - Transaction in which one person (or company) withdraws funds from another person's bank account.\n* `REPEATING_PAYMENT` - Recurring direct debit.\n* `OTHER` - When a transaction does not correspond to any of these types.\n","enum":["CREDIT","DEBIT","INTEREST","DIVIDEND","BANK_FEE","DEPOSIT","ATM","POINT_OF_SALE","CREDIT_CARD_PAYMENT","INTERNAL_TRANSFER","POTENTIAL_TRANSFER","CHECK","ELECTRONIC_PAYMENT","CASH","DIRECT_DEPOSIT","DIRECT_DEBIT","REPEATING_PAYMENT","OTHER"]},"Model13":{"type":"string","description":"The transaction status. Possible values are:\n* `BOOKED` - The transaction is booked.\n* `PENDING` - The transaction is not booked yet. This status is part of the STET API. The STET API states `PENDING` transactions do affect the instant balance. This has not been implemented correctly by all STET APIs.\n* `OTHER` - The transaction is not booked yet. This status is part of the STET API. The STET API states `OTHER` transactions do NOT affect the instant balance. This has not been implemented correctly by all STET APIs.\n* `EXPIRED` - Authorization expired. This status is not part of the STET API.\n* `REJECTED` - The transaction was rejected. This status is not part of the STET API.\n* `CANCELLED` - The transaction was cancelled. This status is not part of the STET API.\n* `REFUNDED` - The transaction has been refunded. This status is not part of the STET API.\n","enum":["BOOKED","PENDING","OTHER","EXPIRED","REJECTED","CANCELLED","REFUNDED"]},"TransactionItem":{"type":"object","description":"A JSON representation of a transaction","properties":{"account_id":{"type":"string","description":"Unique identifier of the account related to this transaction"},"amount":{"type":"number","description":"Amount of the transaction represented by a floating number. Amount is a signed float with the dot as separator. Example: 1000000.45"},"original_trx_id":{"type":"string","description":"ID of the original transaction (For TRANSACTION origin)"},"check_number":{"type":"string","description":"Number of the check when applicable. The check number is deducted from the transaction wording."},"type":{"$ref":"#/definitions/Model12"},"origin":{"$ref":"#/definitions/origin"},"category_id":{"type":"string","description":"Opaque unique id of the category"},"date":{"type":"number","description":"Transaction date as UTC timestamp in seconds. The hour, minutes and seconds are set back to 0 (midnight).","x-constraint":{"sign":"positive"}},"import_date":{"type":"number","description":"Import date as UTC timestamp in seconds","x-constraint":{"sign":"positive"}},"booking_date":{"type":"number","description":"Booking date of the transaction over the account as UTC timestamp in seconds.\nIf the transaction is not yet booked, this field must be valued with a scheduled booking date","x-constraint":{"sign":"positive"}},"transaction_date":{"type":"number","description":"Transaction date as UTC timestamp in seconds.\n\nRendered when used :\n* For card transaction: date of the transaction\n* For credit transfer: acquiring date of the transaction\n* For direct debit: receiving date of the transaction\n","x-constraint":{"sign":"positive"}},"value_date":{"type":"number","description":"Value date of the transaction as UTC timestamp in seconds.","x-constraint":{"sign":"positive"}},"label":{"type":"string","description":"Transaction label after processing by our aggregation service. Main text displayed by the provider's service."},"notes":{"type":"string","description":"Notes of the transaction after processing by our aggregation service. Secondary text displayed by the provider's service."},"source":{"$ref":"#/definitions/TransactionSource"},"currency":{"type":"string","description":"Currency of the account in the ISO4217 format. (3 letters. Examples : \"EUR\", \"USD\")","x-constraint":{"length":3}},"remittance_information":{"$ref":"#/definitions/remittance_information"},"status":{"$ref":"#/definitions/Model13"},"id":{"type":"string","description":"The unique transaction identifier. The value of this property corresponds to the value provided in the URL."}},"required":["account_id","amount","type","origin","category_id","date","booking_date","currency","id"]},"gender":{"type":"string","description":"The gender of the user","enum":["MALE","FEMALE"]},"marital_status":{"type":"string","description":"The marital status of the user","enum":["SINGLE","MARRIED"]},"Family":{"type":"object","properties":{"children":{"type":"number","description":"Number of children represented by an integer number","minimum":0},"adults":{"type":"number","description":"Number of adults represented by an integer number","minimum":0}}},"residence":{"type":"string","description":"The residential situation of the user","enum":["OWNER","SINGLE_RENTER","MULTIPLE_RENTER","OTHER"]},"Address":{"type":"object","properties":{"postcode":{"type":"string","description":"The postcode of the user"},"city":{"type":"string","description":"The city of the user"},"country":{"type":"string","description":"The country of the user"},"line1":{"type":"string","description":"The first address's line of the user"},"line2":{"type":"string","description":"The second address's line of the user"}}},"UserGet":{"type":"object","description":"A JSON representation of a user","properties":{"id":{"type":"string","description":"The unique user identifier. The value of this property corresponds to the value provided in the URL."},"email":{"type":"string","description":"The email of the user","x-format":{"email":{"tlds":{"allow":false}}}},"first_name":{"type":"string","description":"The first name of the user"},"last_name":{"type":"string","description":"The last name of the user"},"gender":{"$ref":"#/definitions/gender"},"postcode":{"type":"string","description":"The postcode of the user. DEPRECATED : Now located under the address field !"},"birthdate":{"type":"string","format":"date","description":"Date of the user's birth as UTC timestamp in seconds"},"profession":{"type":"string","description":"The profession of the user"},"marital_status":{"$ref":"#/definitions/marital_status"},"family":{"$ref":"#/definitions/Family"},"residence":{"$ref":"#/definitions/residence"},"creation_date":{"type":"string","format":"date","description":"Creation date of the user as UTC timestamp in seconds"},"city":{"type":"string","description":"The city of the user. DEPRECATED : Now located under the address field !"},"city_of_birth":{"type":"string","description":"User's city of birth"},"country_of_birth":{"type":"string","description":"User's country of birth"},"address":{"$ref":"#/definitions/Address"},"email_verified":{"type":"boolean","description":"The email's verification state for the user"}},"required":["id","email","creation_date"]},"Model14":{"type":"object","description":"Contains all properties and values"},"Model15":{"type":"string","description":"Status of the account. If the value sent is `ACTIVE` while the status of the account is `CLOSED`, then the account will be unarchived and a synchronization will be triggered. If the value sent is `CLOSED` while the account status is `ACTIVE`, then the account will be archived. No more synchronization will be done on this account as long as it is archived. If the value is not `CLOSED` or `ACTIVE` then the status will remain unchanged.","enum":["MANUAL","ACTIVE","ERROR","NOT_FOUND","CLOSED","SUSPENDED","PENDING_CONSENT"]},"corporate_type":{"type":"string","description":"The account corporation type: RNA, SIREN, OTHER","enum":["RNA","SIREN","OTHER"]},"usage":{"type":"string","description":"Whether you want to declare as `PERSONAL` an account seen as `PROFESSIONAL`.","enum":["PERSONAL","PROFESSIONAL"]},"AccountUpdate":{"type":"object","description":"A JSON representation of the required property for update an account. Only the account name and status can be updated. All account properties can be sent but will be ignored when updating.","properties":{"name":{"type":"string","description":"Name of the account. If the value is different than the current name, the account will be updated, otherwise, the account name will remain unchanged"},"status":{"$ref":"#/definitions/Model15"},"optin":{"type":"boolean","description":"Corporate account optin choice. Set it to true if you want to use our services for this corporate account."},"identification_number":{"type":"string","description":"The identification number of the entity (company, association or other) authorized to access the account."},"corporate_type":{"$ref":"#/definitions/corporate_type"},"usage":{"$ref":"#/definitions/usage"}},"required":["name","status","identification_number","identification_number","corporate_type","corporate_type"]},"ConnectionRename":{"type":"object","description":"A JSON representation of the required property for update a connection. Only the connection name can be updated. All connection properties can be sent but will be ignored when updating.","properties":{"id":{"type":"string","description":"The unique connection identifier"},"name":{"type":"string","description":"Connection name"}},"required":["name"]},"UserUpdate":{"type":"object","description":"A JSON representation of body query when update a user","properties":{"id":{"type":"string","description":"The unique user identifier. Optional as the `id` taken into account is the path parameter"},"first_name":{"type":"string","description":"The first name of the user"},"last_name":{"type":"string","description":"The last name of the user"},"gender":{"$ref":"#/definitions/gender"},"postcode":{"type":"string","description":"The postcode of the user. DEPRECATED : Now located under the address field !"},"birthdate":{"type":"string","format":"date","description":"Date of the user's birth as UTC timestamp in seconds"},"profession":{"type":"string","description":"The profession of the user"},"marital_status":{"$ref":"#/definitions/marital_status"},"family":{"$ref":"#/definitions/Family"},"residence":{"$ref":"#/definitions/residence"},"city":{"type":"string","description":"The city of the user. DEPRECATED : Now located under the address field !"},"city_of_birth":{"type":"string","description":"User’s city of birth"},"country_of_birth":{"type":"string","description":"User’s country of birth"},"address":{"$ref":"#/definitions/Address"},"email_verified":{"type":"boolean","description":"The email's verification state for the user"}}},"CredentialItem":{"type":"object","description":"A JSON representation of provider's credentials","properties":{"id":{"type":"string","description":"The unique credential key identifier"},"value":{"type":"string","description":"Value for this key"}},"required":["id","value"]},"CredentialsList":{"type":"array","description":"A JSON representation of a list of provider's credentials","items":{"$ref":"#/definitions/CredentialItem"}},"ConnectionUpdate":{"type":"object","description":"A JSON representation of request body when updating connection credentials","properties":{"credentials":{"$ref":"#/definitions/CredentialsList"},"key_id":{"type":"string","description":"The unique key identifier. This value is obtained when you create a key via `POST /keys` endpoint."}},"required":["credentials"]},"UserPropertiesUpdate":{"type":"object","description":"A JSON representation of user properties as key/value object"},"Model16":{"type":"string","description":"New account or previously deleted account","enum":["NEW"]},"ProviderAccountInfoAdd":{"type":"object","description":"Information required to add an account.","properties":{"reference":{"type":"string","description":"Account's reference into connection synchronization"},"account_number":{"type":"string","description":"Account number"},"balance":{"type":"number","description":"Account balance as reported during the last synchronization represented by a floating number. Balance is a signed float with the dot as separator. Example: 1000000.45"},"balance_date":{"type":"number","description":"Date of the last balance update represented as UTC timestamp in seconds"},"type":{"$ref":"#/definitions/type"},"name":{"type":"string","description":"Account name"},"status":{"$ref":"#/definitions/Model16"}},"required":["reference","balance","balance_date","type","name","status"]},"AccountAdd":{"type":"object","description":"Information required to add a new or previously deleted account to an existing connection.","properties":{"connection_id":{"type":"string","description":"Unique ID of the connection, linked to the new account"},"account":{"$ref":"#/definitions/ProviderAccountInfoAdd"}},"required":["connection_id"]},"ConnectionCreate":{"type":"object","description":"A JSON reprensentation of request body when create a connection","properties":{"provider_id":{"type":"string","description":"The unique provider identifier"},"credentials":{"$ref":"#/definitions/CredentialsList"},"key_id":{"type":"string","description":"The unique key identifier. This value is obtained when you create a key via `POST /keys` endpoint."}},"required":["provider_id","credentials"]},"Model17":{"type":"string","description":"Type of the key.","enum":["PGP"]},"EncryptionKeyCreate":{"type":"object","description":"Parameters required to create a new key","properties":{"type":{"$ref":"#/definitions/Model17"}},"required":["type"]},"UserCreate":{"type":"object","description":"A JSON representation of query body when create a user","properties":{"email":{"type":"string","description":"The email of the user","x-format":{"email":{"tlds":{"allow":false}}}},"password":{"type":"string","description":"At least 6 characters, with both a letter and a number"},"first_name":{"type":"string","description":"The first name of the user"},"last_name":{"type":"string","description":"The last name of the user"},"gender":{"$ref":"#/definitions/gender"},"postcode":{"type":"string","description":"The postcode of the user. DEPRECATED : Now located under the address field !"},"birthdate":{"type":"string","format":"date","description":"Date of the user's birth as UTC timestamp in seconds"},"profession":{"type":"string","description":"The profession of the user"},"marital_status":{"$ref":"#/definitions/marital_status"},"family":{"$ref":"#/definitions/Family"},"residence":{"$ref":"#/definitions/residence"},"city":{"type":"string","description":"The city of the user. DEPRECATED : Now located under the address field !"},"city_of_birth":{"type":"string","description":"User's city of birth"},"country_of_birth":{"type":"string","description":"User's country of birth"},"address":{"$ref":"#/definitions/Address"}},"required":["email","password"]},"Error409":{"type":"object","description":"Error 409 JSON representation","properties":{"error":{"type":"string","description":"EMAIL_CONFLICT"},"error_description":{"type":"string","description":"Resource conflict error."},"id":{"type":"string","description":"Unique identifier of the current resource when applicable"}},"required":["error","error_description"]},"connection_links":{"type":"array","description":"Links to the synchronized resources","items":{"type":"string","description":"The url of the created connection containing the unique identifier of the connection","pattern":"^\\/connections\\/[^/]+$"}},"ConnectionSynchronizeAll":{"type":"object","description":"A JSON array containing the path of connections scheduled for synchronization","properties":{"connection_links":{"$ref":"#/definitions/connection_links"}}},"availability":{"type":"object","description":"Availability JSON payload","properties":{"email":{"type":"string","description":"The email to check availability for.","x-format":{"email":{"minDomainSegments":2,"tlds":{"allow":false}}},"x-convert":{"trim":true}}},"required":["email"]},"ConnectionUserInput":{"type":"object","description":"A JSON representation of a connection user input","properties":{"credentials":{"$ref":"#/definitions/CredentialsList"}},"required":["credentials"]}}}