Qwist Securities API
The Securities API from Qwist — 3 operation(s) for securities.
The Securities API from Qwist — 3 operation(s) for securities.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/qwist:qwist-securities-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: nrich Securities API
version: '2.10'
contact:
name: Qwist GmbH
email: partnersupport@qwist.com
url: https://qwist.com
description: This is the reference for Qwist's nrich API
servers:
- url: https://api.nrich.qwist.cloud
description: Staging environment
tags:
- name: Securities
paths:
/rest/accounts/{account-id}/securities:
get:
summary: List securities of account
operationId: listSecuritiesOfAccount
description: Get a list of the securities associated with a specific account. You can additionally constrain the amount of securities being returned by using the query parameters described below as filters.
tags:
- Securities
parameters:
- $ref: '#/paths/~1rest~1accounts~1{account-id}/get/parameters/0'
- $ref: '#/paths/~1auth~1users/get/parameters/0'
- $ref: '#/paths/~1auth~1users/get/parameters/1'
- $ref: '#/paths/~1rest~1securities/get/parameters/3'
- $ref: '#/paths/~1rest~1securities/get/parameters/4'
security:
- user_auth: []
responses:
'200':
$ref: '#/paths/~1rest~1securities/get/responses/200'
'400':
$ref: '#/paths/~1rest~1user/put/responses/400'
'401':
$ref: '#/paths/~1catalog/get/responses/401'
'404':
$ref: '#/paths/~1auth~1token/post/responses/404'
4XX:
$ref: '#/paths/~1rest~1loans/get/responses/4XX'
/rest/accounts/{account-id}/securities/{security-id}:
get:
summary: Get security of account
operationId: getSecurityOfAccount
description: Retrieve a single security associated to a specific account by its `security-id`.
tags:
- Securities
parameters:
- $ref: '#/paths/~1rest~1accounts~1{account-id}/get/parameters/0'
- name: security-id
in: path
required: true
schema:
type: string
example: S12345.6
description: nrich ID of security.
security:
- user_auth: []
responses:
'200':
description: Security details.
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/Security'
- $ref: '#/components/schemas/FixedIncome'
- $ref: '#/components/schemas/Bond'
discriminator:
propertyName: type
mapping:
STOCK: '#/components/schemas/Security'
FUND: '#/components/schemas/Security'
UNKNOWN: '#/components/schemas/Security'
TREASURY_BILL: '#/components/schemas/FixedIncome'
OTHER: '#/components/schemas/FixedIncome'
BOND: '#/components/schemas/Bond'
examples:
stock:
summary: Stock
value:
account_id: A1071758383847374849.1
security_id: S12345.6
isin: US02079K3059
wkn: A14Y6F
name: Alphabet Inc. Class A
market: XETRA
currency: EUR
price: 154.2
price_currency: EUR
purchase_price: 132.5
purchase_price_currency: EUR
amount: 2158.8
amount_original_currency: 2158.8
exchange_rate: 1
quantity: 14
traded_at: '2026-08-14T10:15:30Z'
type: STOCK
created_at: '2026-01-10T09:00:00Z'
modified_at: '2026-08-14T10:15:30Z'
operations:
- amount: 1855
purpose: Buy 14 shares Alphabet A
quantity: 14
executed_at: '2026-01-10T09:15:00Z'
type: BUY
isin: US02079K3059
treasury_bill:
summary: Fixed Income / Treasury Bill
value:
account_id: A1071758383847374849.1
security_id: S98765.4
isin: DE000BU0E123
wkn: BU0E12
name: Federal Republic of Germany Treasury Bill (Bubill) 0% 12/26
market: Frankfurt
currency: EUR
price: 98.45
price_currency: EUR
purchase_price: 97.2
purchase_price_currency: EUR
amount: 9845
amount_original_currency: 9845
exchange_rate: 1
quantity: 100
traded_at: '2026-09-01T08:30:00Z'
type: TREASURY_BILL
matures_on: '2026-12-16'
face_value: 10000
created_at: '2026-03-01T10:00:00Z'
modified_at: '2026-09-01T08:30:00Z'
operations:
- amount: 9720
purpose: Buy 100 units German Treasury Bill
quantity: 100
executed_at: '2026-03-01T10:30:00Z'
type: BUY
isin: DE000BU0E123
bond:
summary: Bond
value:
account_id: A1071758383847374849.1
security_id: S55555.5
isin: XS2539982468
wkn: A3K987
name: Siemens AG 2.75% 2024-2029
market: Luxembourg
currency: EUR
price: 99.15
price_currency: EUR
purchase_price: 98.5
purchase_price_currency: EUR
amount: 4957.5
amount_original_currency: 4957.5
exchange_rate: 1
quantity: 5
traded_at: '2026-09-10T14:20:00Z'
type: BOND
matures_on: '2029-09-15'
face_value: 5000
created_at: '2026-02-15T11:00:00Z'
modified_at: '2026-09-10T14:20:00Z'
coupons:
- paid_at: '2025-09-15T00:00:00Z'
amount: 137.5
- paid_at: '2026-09-15T00:00:00Z'
amount: 137.5
operations:
- amount: 4925
purpose: Buy 5 Siemens bonds
quantity: 5
executed_at: '2026-02-15T11:30:00Z'
type: BUY
isin: XS2539982468
'400':
$ref: '#/paths/~1rest~1user/put/responses/400'
'401':
$ref: '#/paths/~1catalog/get/responses/401'
'404':
$ref: '#/paths/~1auth~1token/post/responses/404'
4XX:
$ref: '#/paths/~1rest~1loans/get/responses/4XX'
/rest/securities:
get:
summary: List securities
operationId: listSecurities
description: Get a list of the securities of all accounts. You can additionally constrain the amount of securities being returned by using the query parameters described below as filters.
tags:
- Securities
parameters:
- $ref: '#/paths/~1rest~1timeline/get/parameters/5'
- $ref: '#/paths/~1auth~1users/get/parameters/0'
- $ref: '#/paths/~1auth~1users/get/parameters/1'
- in: query
name: since
schema:
oneOf:
- $ref: '#/paths/~1auth~1users/get/parameters/2/schema'
description: Only entities with a corresponding date **equal or newer** to this date will be selected. The type of date that is filtered by is determined by the `since_type` parameter.
- type: string
pattern: ^T[1-9]\d*\.[1-9]\d*$
description: Only return entities whose nrich ID is alphanumerically bigger than this ID.
description: Filter entities based on their nrich ID or a date.
example: '2020-01-01'
- in: query
name: since_type
schema:
type: string
enum:
- traded
- created
- modified
default: created
description: This parameter defines how the parameter `since` will be interpreted.
security:
- user_auth: []
responses:
'200':
description: List of securities.
content:
application/json:
schema:
type: object
properties:
securities:
type: array
items:
oneOf:
- $ref: '#/components/schemas/Security'
- $ref: '#/components/schemas/FixedIncome'
- $ref: '#/components/schemas/Bond'
discriminator:
propertyName: type
mapping:
STOCK: '#/components/schemas/Security'
FUND: '#/components/schemas/Security'
UNKNOWN: '#/components/schemas/Security'
TREASURY_BILL: '#/components/schemas/FixedIncome'
OTHER: '#/components/schemas/FixedIncome'
BOND: '#/components/schemas/Bond'
description: List of securities.
status:
type: object
description: Synchronization status
properties:
synced_at:
$ref: '#/paths/~1uploads/post/responses/200/content/application~1json/schema/properties/ended_at'
description: Time of last synchronization.
succeeded_at:
$ref: '#/paths/~1uploads/post/responses/200/content/application~1json/schema/properties/ended_at'
description: Time of last successful synchronization.
message:
type: string
description: Human-readable error message
required:
- securities
- status
examples:
securities_list:
summary: List of securities
value:
securities:
- account_id: A1071758383847374849.1
security_id: S12345.6
isin: US02079K3059
wkn: A14Y6F
name: Alphabet Inc. Class A
market: XETRA
currency: EUR
price: 154.2
price_currency: EUR
purchase_price: 132.5
purchase_price_currency: EUR
amount: 2158.8
amount_original_currency: 2158.8
exchange_rate: 1
quantity: 14
traded_at: '2026-08-14T10:15:30Z'
type: STOCK
created_at: '2026-01-10T09:00:00Z'
modified_at: '2026-08-14T10:15:30Z'
operations:
- amount: 1855
purpose: Buy 14 shares Alphabet A
quantity: 14
executed_at: '2026-01-10T09:15:00Z'
type: BUY
isin: US02079K3059
- account_id: A1071758383847374849.1
security_id: S98765.4
isin: DE000BU0E123
wkn: BU0E12
name: Federal Republic of Germany Treasury Bill (Bubill) 0% 12/26
market: Frankfurt
currency: EUR
price: 98.45
price_currency: EUR
purchase_price: 97.2
purchase_price_currency: EUR
amount: 9845
amount_original_currency: 9845
exchange_rate: 1
quantity: 100
traded_at: '2026-09-01T08:30:00Z'
type: TREASURY_BILL
matures_on: '2026-12-16'
face_value: 10000
created_at: '2026-03-01T10:00:00Z'
modified_at: '2026-09-01T08:30:00Z'
operations:
- amount: 9720
purpose: Buy 100 units German Treasury Bill
quantity: 100
executed_at: '2026-03-01T10:30:00Z'
type: BUY
isin: DE000BU0E123
- account_id: A1071758383847374849.1
security_id: S55555.5
isin: XS2539982468
wkn: A3K987
name: Siemens AG 2.75% 2024-2029
market: Luxembourg
currency: EUR
price: 99.15
price_currency: EUR
purchase_price: 98.5
purchase_price_currency: EUR
amount: 4957.5
amount_original_currency: 4957.5
exchange_rate: 1
quantity: 5
traded_at: '2026-09-10T14:20:00Z'
type: BOND
matures_on: '2029-09-15'
face_value: 5000
created_at: '2026-02-15T11:00:00Z'
modified_at: '2026-09-10T14:20:00Z'
coupons:
- paid_at: '2025-09-15T00:00:00Z'
amount: 137.5
- paid_at: '2026-09-15T00:00:00Z'
amount: 137.5
operations:
- amount: 4925
purpose: Buy 5 Siemens bonds
quantity: 5
executed_at: '2026-02-15T11:30:00Z'
type: BUY
isin: XS2539982468
status:
synced_at: '2026-09-15T08:30:00Z'
succeeded_at: '2026-09-15T08:30:00Z'
message: null
'400':
$ref: '#/paths/~1rest~1user/put/responses/400'
'401':
$ref: '#/paths/~1catalog/get/responses/401'
'404':
$ref: '#/paths/~1auth~1token/post/responses/404'
4XX:
$ref: '#/paths/~1rest~1loans/get/responses/4XX'
components:
schemas:
Bond:
title: Bond
allOf:
- $ref: '#/components/schemas/FixedIncome'
- type: object
properties:
coupons:
type: array
items:
type: object
description: Coupon payment information.
properties:
paid_at:
$ref: '#/paths/~1uploads/post/responses/200/content/application~1json/schema/properties/ended_at'
description: Coupon payment date.
amount:
type: number
format: float
description: Coupon payment amount.
example: 25
required:
- paid_at
- amount
description: List of coupon payments associated with the bond.
type:
type: string
example: BOND
FixedIncome:
title: Fixed Income
allOf:
- $ref: '#/components/schemas/Security'
- type: object
properties:
matures_on:
$ref: '#/paths/~1auth~1users/get/parameters/2/schema'
description: Maturity date of the fixed income security.
face_value:
type: number
format: float
description: The nominal value of the security repaid to the investor by the issuer upon reaching the maturity date. For zero-coupon instruments (such as treasury bills), returns are realized through the discount between purchase price and face value. For coupon-bearing instruments (such as bonds), periodic coupon payments are calculated as a percentage of this face value. Denominated in the security currency.
example: 1000.5
type:
type: string
example: TREASURY_BILL
Security:
title: Security
type: object
properties:
account_id:
$ref: '#/paths/~1rest~1accounts~1{account-id}/get/parameters/0/schema'
security_id:
$ref: '#/paths/~1rest~1accounts~1{account-id}~1securities~1{security-id}/get/parameters/1/schema'
amount:
description: Monetary value in account currency.
example: 1190
type: number
minimum: 0.01
amount_original_currency:
$ref: '#/components/schemas/Security/properties/amount'
description: Monetary value in trading currency.
example: 1259.72
created_at:
$ref: '#/paths/~1rest~1accesses/get/responses/200/content/application~1json/schema/items/properties/created_at'
currency:
$ref: '#/paths/~1rest~1loans~1{loan-id}/get/responses/200/content/application~1json/schema/properties/currency'
description: Currency of holding value.
exchange_rate:
type: number
format: float
example: 1.058588
description: Exchange rate between trading and account price.
isin:
type: string
format: ISO 6166
description: International Securities Identification Number.
example: US02079K3059
market:
type: string
description: Market the security is traded on.
example: NYSE
modified_at:
$ref: '#/paths/~1rest~1loans~1{loan-id}/get/responses/200/content/application~1json/schema/properties/modified_at'
name:
type: string
description: Name of the security.
example: Alphabet A
price:
type: number
format: float
description: Trading price.
example: 89.93
price_currency:
$ref: '#/paths/~1rest~1loans~1{loan-id}/get/responses/200/content/application~1json/schema/properties/currency'
description: Currency of the trading price.
example: USD
purchase_price:
type: number
format: float
description: Purchase price.
example: 80.45
purchase_price_currency:
$ref: '#/paths/~1rest~1loans~1{loan-id}/get/responses/200/content/application~1json/schema/properties/currency'
description: Currency of the purchase price.
example: USD
traded_at:
type: string
format: date-time
description: Trading timestamp.
wkn:
type: string
example: A14Y6F
description: Domestic security identification number.
quantity:
type: number
format: float
description: Quantity in stock.
example: 14
operations:
type: array
items:
type: object
description: Operation associated with a security.
properties:
amount:
type: number
format: float
description: Operation amount.
example: 1000
purpose:
type: string
description: Purpose or description of the operation.
example: Buy 100 shares
quantity:
type: number
format: float
description: Quantity involved in the operation.
example: 1
executed_at:
$ref: '#/paths/~1uploads/post/responses/200/content/application~1json/schema/properties/ended_at'
description: Timestamp when the operation was executed.
type:
type: string
description: Type of operation (e.g. BUY, SELL).
example: BUY
isin:
type: string
format: ISO 6166
description: International Securities Identification Number.
example: US02079K3059
description: List of operations associated with this security.
type:
type: string
enum:
- STOCK
- FUND
- BOND
- TREASURY_BILL
- OTHER
- UNKNOWN
description: Type of security. This is not always returned by the bank so it is set as `UNKNOWN` in those cases
example: STOCK
required:
- type
securitySchemes:
user_auth:
type: http
description: 'In order to access any information belonging to a user, a client has to authenticate with a token linking itself to the user. This token is called an `access token` and contains information on the client, the user and the level of access the client has to the users data. In order to authenticate using such an access token the HTTP header `Authorization` is set to `Bearer <access token>`. The `access token` is formatted
as a JSON Web Token according to [RFC7519](https://tools.ietf.org/html/rfc7519)
Such an `access token` is either returned when
* exchanging an authorization code after a successful OAuth login flow
* logging in with the user''s credentials
* exchanging a refresh token, which is returned at either of the aforementioned points
**Authentication errors**
In case of an authentication error a HTTP code 401 response is returned containing further
details on the kind of error in the `WWW-Authenticate` header.
In addition to the below listed scope the flags are used for simple boolean permissions.
| Flag | Description |
| -- | -- |
| submit_payments | Allow submission of payments to bank server |
| offline | Access finX API when the user is not present |
| create_user | Allow creation of finX accounts |
**Example**
The string `"accounts=rw submit_payments"` is URL-encoded and passed as the URL
parameter `scope`.'
scheme: bearer
bearerFormat: JWT
x-bearerInfoFunc: app.decode_token
x-scopes:
accounts=rw: Modify accounts
accounts=ro: Read accounts
balance=ro: Read account balance
securities=ro: Read securities
transactions=ro: Read transactions
transactions=rw: Modify transactions
payments=ro: Read payments
payments=rw: Create/modify payments
submit_payments: Submit payment to service provider
user=ro: Read user information
user=rw: Modify user information
client_auth:
x-basicInfoFunc: app.basic_auth
type: http
scheme: basic
description: Client authentication is performed via [HTTP Basic Auth](https://en.wikipedia.org/wiki/Basic_access_authentication) with client ID as username and client secret as password.
x-provenance:
method: searched
source: https://docs.qwist.com/reference
harvested: '2026-10-21'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://docs.qwist.com/reference/addprovideraccess.md
- https://docs.qwist.com/reference/categorizetransactions.md
- https://docs.qwist.com/reference/createaccesstoken.md
- https://docs.qwist.com/reference/createaccountverification.md
- https://docs.qwist.com/reference/createcontract.md
- https://docs.qwist.com/reference/createincomereport.md
- https://docs.qwist.com/reference/createmanualsync.md
- https://docs.qwist.com/reference/createnotification.md
- https://docs.qwist.com/reference/createonetimeaccess.md
- https://docs.qwist.com/reference/createonetimeincomereport.md
- https://docs.qwist.com/reference/createonetimepayment.md
- https://docs.qwist.com/reference/createonetimeriskreport.md
- https://docs.qwist.com/reference/createongoingaccess.md
- https://docs.qwist.com/reference/createongoingpayment.md
- https://docs.qwist.com/reference/createongoingriskreport.md
- https://docs.qwist.com/reference/createpayment.md
- https://docs.qwist.com/reference/createpaymentfromaccount.md
- https://docs.qwist.com/reference/createqwistlink.md
- https://docs.qwist.com/reference/createriskreport.md
- https://docs.qwist.com/reference/createsync.md
- https://docs.qwist.com/reference/createupload.md
- https://docs.qwist.com/reference/createuser.md
- https://docs.qwist.com/reference/createverifyandpay.md
- https://docs.qwist.com/reference/deleteaccount.md
- https://docs.qwist.com/reference/deleteclientuser.md
- https://docs.qwist.com/reference/deletecontract.md
- https://docs.qwist.com/reference/deletenotification.md
- https://docs.qwist.com/reference/deletepayment.md
- https://docs.qwist.com/reference/deleteprovideraccess.md
- https://docs.qwist.com/reference/deleteuser.md
- https://docs.qwist.com/reference/getaccount.md
- https://docs.qwist.com/reference/getaccountbalance.md
- https://docs.qwist.com/reference/getaccountverificationreceipt.md
- https://docs.qwist.com/reference/getandgenerateincomereport.md
- https://docs.qwist.com/reference/getartifact.md
- https://docs.qwist.com/reference/getcategories.md
- https://docs.qwist.com/reference/getcategoriesforaccess.md
- https://docs.qwist.com/reference/getcategoriesforaccount.md
- https://docs.qwist.com/reference/getcategorytree.md
- https://docs.qwist.com/reference/getcontract.md
- https://docs.qwist.com/reference/getcredential.md
- https://docs.qwist.com/reference/getincomereport.md
- https://docs.qwist.com/reference/getinsurance.md
- https://docs.qwist.com/reference/getloan.md
- https://docs.qwist.com/reference/getnotification.md
- https://docs.qwist.com/reference/getpaymentchallenge.md
- https://docs.qwist.com/reference/getpaymentchallengeofaccount.md
- https://docs.qwist.com/reference/getpaymentinitstatus.md
- https://docs.qwist.com/reference/getpaymentinitstatusofaccount.md
- https://docs.qwist.com/reference/getpaymentofaccount.md
- https://docs.qwist.com/reference/getpaymentpartners.md
- https://docs.qwist.com/reference/getpaymentpartnersforaccess.md
- https://docs.qwist.com/reference/getpaymentpartnersforaccount.md
- https://docs.qwist.com/reference/getpaymentreceipt.md
- https://docs.qwist.com/reference/getprovideraccess.md
- https://docs.qwist.com/reference/getriskreport.md
- https://docs.qwist.com/reference/getsecurityofaccount.md
- https://docs.qwist.com/reference/getsyncchallenge.md
- https://docs.qwist.com/reference/getsyncstatus.md
- https://docs.qwist.com/reference/gettimeline.md
- https://docs.qwist.com/reference/gettimelineforaccess.md
- https://docs.qwist.com/reference/gettimelineforaccount.md
- https://docs.qwist.com/reference/gettransaction.md
- https://docs.qwist.com/reference/gettransactionofaccount.md
- https://docs.qwist.com/reference/getuploadstatus.md
- https://docs.qwist.com/reference/getuser.md
- https://docs.qwist.com/reference/getversion.md
- https://docs.qwist.com/reference/initpayment.md
- https://docs.qwist.com/reference/initpaymentofaccount.md
- https://docs.qwist.com/reference/listaccounts.md
- https://docs.qwist.com/reference/listaccountsofaccess.md
- https://docs.qwist.com/reference/listbanks.md
- https://docs.qwist.com/reference/listcatalog.md
- https://docs.qwist.com/reference/listcatalogclientauth.md
- https://docs.qwist.com/reference/listclientusers.md
- https://docs.qwist.com/reference/listcontracts.md
- https://docs.qwist.com/reference/listcontractsofaccess.md
- https://docs.qwist.com/reference/listcontractsofaccount.md
- https://docs.qwist.com/reference/listcredentials.md
- https://docs.qwist.com/reference/listinsurances.md
- https://docs.qwist.com/reference/listinsurancesofaccess.md
- https://docs.qwist.com/reference/listloans.md
- https://docs.qwist.com/reference/listloansofaccess.md
- https://docs.qwist.com/reference/listnotifications.md
- https://docs.qwist.com/reference/listpaymentchallenges.md
- https://docs.qwist.com/reference/listpaymentchallengesofaccount.md
- https://docs.qwist.com/reference/listpayments.md
- https://docs.qwist.com/reference/listpaymentsofaccount.md
- https://docs.qwist.com/reference/listprovideraccesses.md
- https://docs.qwist.com/reference/listsecurities.md
- https://docs.qwist.com/reference/listsecuritiesofaccount.md
- https://docs.qwist.com/reference/listservices.md
- https://docs.qwist.com/reference/listsyncchallenges.md
- https://docs.qwist.com/reference/listtransactions.md
- https://docs.qwist.com/reference/listtransactionsofaccount.md
- https://docs.qwist.com/reference/patchcredential.md
- https://docs.qwist.com/reference/removepinfromprovideraccess.md
- https://docs.qwist.com/reference/replacenotifications.md
- https://docs.qwist.com/reference/revokeoauthtoken.md
- https://docs.qwist.com/reference/solvepaymentchallenge.md
- https://docs.qwist.com/reference/solvepaymentchallengeofaccount.md
- https://docs.qwist.com/reference/solvesyncchallenge.md
- https://docs.qwist.com/reference/updatecontract.md
- https://docs.qwist.com/reference/updatenotification.md
- https://docs.qwist.com/reference/updateuser.md
merge:
pages: 105
deduped: 1107
conflicts_kept_first: 0