{
  "components": {
    "examples": {
      "getSupportedProducts-200-supported-products": {
        "description": "Each entry lists the wealth product types a company supports for the calling client.",
        "summary": "Per-company supported wealth product types",
        "value": {
          "companies": [
            {
              "company": "de-comdirect",
              "wealthProductTypes": [
                {
                  "collectionSupported": true,
                  "confirmedAtCompany": true,
                  "productType": "DEPOT_ACCOUNT"
                },
                {
                  "collectionSupported": true,
                  "confirmedAtCompany": true,
                  "productType": "SAVINGS_ACCOUNT"
                }
              ]
            }
          ]
        }
      },
      "standard-error-400": {
        "description": "The request body or parameters are invalid.",
        "summary": "Bad Request",
        "value": {
          "errors": [],
          "localizedMessage": "Invalid request",
          "message": "Invalid request",
          "status": "BAD_REQUEST",
          "statusCode": 400
        }
      },
      "standard-error-401": {
        "description": "The credentials are missing or invalid, the calling IP is not on the client's allowlist, or mTLS is enforced and no valid client certificate was sent. An expired session token gets 401 Token expired.",
        "summary": "Unauthorized",
        "value": {
          "errors": [],
          "localizedMessage": "Authentication failed",
          "message": "Authentication failed",
          "status": "UNAUTHORIZED",
          "statusCode": 401
        }
      },
      "standard-error-403": {
        "description": "The client is not allowed to use this endpoint or resource.",
        "summary": "Forbidden",
        "value": {
          "errors": [],
          "localizedMessage": "Not allowed",
          "message": "Not allowed",
          "status": "FORBIDDEN",
          "statusCode": 403
        }
      },
      "standard-error-404": {
        "description": "The requested resource does not exist or has expired.",
        "summary": "Not Found",
        "value": {
          "errors": [],
          "localizedMessage": "Not found",
          "message": "Not found",
          "status": "NOT_FOUND",
          "statusCode": 404
        }
      },
      "standard-error-429": {
        "description": "The client has sent too many requests in a given time window. Retry after a delay using exponential backoff.",
        "summary": "Rate limit exceeded",
        "value": {
          "errors": [],
          "localizedMessage": "Too many requests. Please retry with backoff.",
          "message": "Too many requests. Please retry with backoff.",
          "status": "TOO_MANY_REQUESTS",
          "statusCode": 429
        }
      }
    },
    "schemas": {
      "AdditionalLoginInput": {
        "description": "Additional login input",
        "example": {
          "key": "region",
          "options": [
            {
              "label": "Centre Loire",
              "value": "centreloire"
            },
            {
              "label": "Centre Est",
              "value": "centrest"
            }
          ],
          "type": "selectOne"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/SelectOne"
          }
        ],
        "properties": {
          "type": {
            "type": "string"
          }
        }
      },
      "AdditionalLoginInputSelectOption": {
        "properties": {
          "label": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        },
        "required": [
          "label",
          "value"
        ]
      },
      "BuyTransaction": {
        "description": "A purchase on the account",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "commission": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The optional commission on the transaction"
          },
          "instrumentInformation": {
            "$ref": "#/components/schemas/TransactionInstrument",
            "description": "Information about the instrument traded."
          },
          "quantity": {
            "description": "The quantity of stock or fund bought.",
            "example": 204.33,
            "format": "double",
            "type": "number"
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "tradeDate": {
            "description": "The date when the instrument was traded.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "BUY",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "BuyTransaction"
      },
      "CollectionInput": {
        "description": "A `CollectionInput` is a set of values that required for the collection process to continue. The required input is specified by the key `REQUIRED_INPUT_TYPES`, under the `extraInformation` key on the `CollectionStatus` object.",
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/Item"
            },
            "type": "array",
            "uniqueItems": true
          },
          "type": {
            "enum": [
              "COLLECTION_INPUT"
            ],
            "example": "COLLECTION_INPUT",
            "type": "string"
          }
        }
      },
      "CollectionRequest": {
        "discriminator": {
          "propertyName": "api"
        },
        "properties": {
          "company": {
            "description": "The name of the company to trigger the collection from",
            "example": "se-lansforsakringar",
            "type": "string"
          },
          "consents": {
            "description": "A set of consents provided by the end user.",
            "items": {
              "$ref": "#/components/schemas/ConsentRequestInput"
            },
            "type": "array",
            "uniqueItems": true
          },
          "filter": {
            "$ref": "#/components/schemas/CollectionRequestFilter"
          },
          "input": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Key-value object specifying additional input required for the collection. What values should be included depends on context.Possible keys are `SWEDISH_PERSONAL_NUMBER`, `NORWEGIAN_PERSONAL_NUMBER`, `NORWEGIAN_PHONE_NUMBER`,`USERNAME`, `PASSWORD`, `LASTNAME`, `ACCOUNT_OWNER_NAME`.",
            "example": {
              "SWEDISH_PERSONAL_NUMBER": "192101010101"
            },
            "propertyNames": {
              "enum": [],
              "type": "string"
            },
            "type": "object"
          },
          "loginMethod": {
            "description": "Login method that will be used to authenticate the user. Available login methods for a company is specified in the `/companies/availability` response.",
            "enum": [
              "USERNAME_AND_PASSWORD",
              "GERMAN_EID",
              "AUTHENTICATION_APP_URL"
            ],
            "example": "SWEDISH_MOBILE_BANKID_OTHER_DEVICE",
            "type": "string"
          }
        }
      },
      "CollectionRequestFilter": {
        "properties": {
          "rules": {
            "items": {
              "$ref": "#/components/schemas/CollectionRequestFilterRule"
            },
            "type": "array",
            "uniqueItems": true
          }
        }
      },
      "CollectionRequestFilterRule": {
        "properties": {
          "field": {
            "enum": [
              "registrationNo"
            ],
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "CollectionStatus": {
        "discriminator": {
          "propertyName": "api"
        },
        "properties": {
          "company": {
            "description": "Company that this collection is from",
            "example": "se-lansforsakringar",
            "type": "string"
          },
          "externalUserUuid": {
            "description": "The UUID of the external user this collection belongs to, when it is linked to one (null otherwise). Can be used to build a Hub deep-link of the form /collections/user/{externalUserUuid}.",
            "example": "b3f1c2a4-8d6e-4f2b-9a1c-7e5d3b2a1f0e",
            "type": "string"
          },
          "extraInformation": {
            "$ref": "#/components/schemas/CollectionStatusInformationMap",
            "description": "A key-value map containing potential extra information, depending on the company the collection is getting data from.",
            "example": {
              "SWEDISH_BANKID_QRCODE": "iVBORw0KGgoAA==",
              "SWEDISH_MOBILE_BANKID_AUTOSTART_TOKEN": "38bb848d-5a0d-4dec-977d-a8777f3637da"
            }
          },
          "id": {
            "description": "The collection ID of the request",
            "example": "22e633bc-427d-4f4a-87cf-cfaca04ef351",
            "type": "string"
          },
          "pollingTimeout": {
            "description": "The collection status must be polled before this timestamp. Failure to do so may result in the termination of the collection.",
            "example": "2024-09-26T12:59:10.545Z",
            "format": "date-time",
            "type": "string"
          },
          "status": {
            "description": "Current status of the collection.",
            "enum": [
              "RUNNING",
              "LOGIN",
              "CUSTOMER_ENROLLMENT_CHECK",
              "TWO_FACTOR_PENDING",
              "TWO_FACTOR_METHOD_SELECTION_TIMEOUT",
              "CONTACT_FORM_PENDING",
              "COLLECTION_INPUT_PENDING",
              "COLLECTION_INPUT_TIMEOUT",
              "COLLECTING",
              "COMPLETED",
              "COMPLETED_PARTIAL",
              "COMPLETED_EMPTY",
              "FAILED",
              "FAILED_PDF_PARSE",
              "FAILED_PDF_USER_INPUT",
              "AUTHENTICATION_TIMEOUT",
              "WAITING_FOR_USER_ACTION",
              "INCORRECT_CREDENTIALS",
              "INCORRECT_TWO_FACTOR_CODE",
              "AUTHENTICATION_CANCELLED",
              "AUTHENTICATION_CONFLICT",
              "ACCOUNT_TEMPORARILY_LOCKED",
              "AUTHENTICATION_MISMATCH",
              "KYC_FORM",
              "CONTACT_FORM",
              "CUSTOMER_ENROLLMENT_REQUIRED",
              "THIRD_PARTY_ERROR"
            ],
            "example": "RUNNING",
            "type": "string"
          }
        },
        "required": [
          "company",
          "id",
          "status"
        ],
        "title": "CollectionStatus"
      },
      "CollectionStatusInformationMap": {
        "description": "Possible extra information returned for a collection status",
        "discriminator": {
          "propertyName": "api"
        },
        "properties": {
          "ACCESS_TOKEN": {
            "description": "Access token to call get-data. Returned when data collection is initiated by client-id.",
            "type": "string"
          },
          "AVAILABLE_TWO_FACTOR_METHODS": {
            "description": "Available 2FA methods for this collection.",
            "items": {
              "$ref": "#/components/schemas/TwoFactorOption"
            },
            "type": "array"
          },
          "INSTRUCTIONS": {
            "$ref": "#/components/schemas/InstructionsRequestObject",
            "description": "Instructions used for SWEDISH_MOBILE_BANKID_SAME_DEVICE_CLIENT_SIDE_AUTHENTICATION login method.",
            "x-markets": {
              "se": true
            }
          },
          "QR_CODE_DATA": {
            "description": "A base64 encoded QR-code.",
            "example": "R0lGODdhtAC0AIAAAAAAAP///ywAAALg==Lg==",
            "type": "string"
          },
          "REFERENCE_NUMBER": {
            "description": "Reference number from login page to verify on other device.",
            "example": "1234",
            "type": "string"
          },
          "REQUIRED_INPUT_TYPES": {
            "description": "Input that needs to be provided for the collection process to continue.",
            "example": "EMAIL",
            "items": {
              "description": "Type of input.",
              "enum": [
                "EMAIL"
              ],
              "example": "EMAIL",
              "type": "string"
            },
            "type": "array"
          },
          "TWO_FACTOR_AUTHENTICATION_INSTRUCTION": {
            "$ref": "#/components/schemas/TwoFactorAuthenticationInstruction"
          }
        },
        "title": "CollectionStatusInformation"
      },
      "CompanyAvailability": {
        "discriminator": {
          "propertyName": "api"
        },
        "properties": {
          "additionalLoginInputs": {
            "description": "Additional input for login step.",
            "items": {
              "$ref": "#/components/schemas/AdditionalLoginInput"
            },
            "type": "array",
            "uniqueItems": true
          },
          "availableCoverageScopes": {
            "description": "Set of available coverage types and subtypes for this company",
            "example": [
              {
                "insuranceSubType": "CAR_INSURANCE",
                "insuranceType": "VEHICLE_INSURANCE"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/InsuranceTypeAndSubtype"
            },
            "type": "array",
            "uniqueItems": true
          },
          "company": {
            "description": "Name of the company.",
            "example": "uk-aviva",
            "minLength": 1,
            "type": "string"
          },
          "companyAndLineOfBusinesses": {
            "description": "Available company and line of business for insurance pdf upload.",
            "example": "UK_AXA_HOME",
            "items": {
              "enum": [
                "EE_SWEDBANK",
                "FR_ABEILLE_HOME",
                "FR_ABEILLE_VEHICLE",
                "FR_ALLIANZ_HOME",
                "FR_ALLIANZ_VEHICLE",
                "FR_ANIMAUXSANTE_HOME",
                "FR_ASSUR_OPOIL_ANIMAL",
                "FR_AXA_HOME",
                "FR_AXA_VEHICLE",
                "FR_AXA_GENERAL",
                "FR_BANQUE_POPULAIRE_HOME",
                "FR_BANQUE_POPULAIRE_VEHICLE",
                "FR_BULLE_BLEUE_HOME",
                "FR_CAISSE_DEPARGNE_HOME",
                "FR_CAISSE_DEPARGNE_VEHICLE",
                "FR_CARDIF_HOME",
                "FR_CREDIT_AGRICOLE_HOME",
                "FR_CREDIT_AGRICOLE_VEHICLE",
                "FR_CREDIT_MUTUEL_HOME",
                "FR_CREDIT_MUTUEL_VEHICLE",
                "FR_DEMO_HOME",
                "FR_DEMO_VEHICLE",
                "FR_DIRECT_ASSURANCE_HOME",
                "FR_DIRECT_ASSURANCE_VEHICLE",
                "FR_ECA_HOME",
                "FR_ECA_VEHICLE",
                "FR_ECA_ANIMAL",
                "FR_GENERALI_HOME",
                "FR_GENERALI_VEHICLE",
                "FR_GMF_HOME",
                "FR_GMF_VEHICLE",
                "FR_GROUPAMA_HOME",
                "FR_GROUPAMA_VEHICLE",
                "FR_LUKO_HOME",
                "FR_LOLIVIER_HOME",
                "FR_LOLIVIER_VEHICLE",
                "FR_LA_BANQUE_POSTALE_HOME",
                "FR_LA_BANQUE_POSTALE_VEHICLE",
                "FR_MAAF_HOME",
                "FR_MAAF_VEHICLE",
                "FR_MACIF_HOME",
                "FR_MACIF_VEHICLE",
                "FR_MAIF_HOME",
                "FR_MAIF_VEHICLE",
                "FR_MATMUT_HOME",
                "FR_MATMUT_VEHICLE",
                "FR_SOCIETE_GENERAL_INSURANCE_HOME",
                "FR_SOCIETE_GENERAL_INSURANCE_VEHICLE",
                "FR_MMA_HOME",
                "FR_MMA_VEHICLE",
                "FR_SANTEVET_HOME",
                "LT_BALCIA_HOME",
                "LT_COMPENSA_HOME",
                "LT_ERGO_HOME",
                "LT_GJENSIDIGE_HOME",
                "LT_IF_HOME",
                "LT_LIETUVOS_DRAUDIMAS_HOME",
                "LT_SWEDBANK_HOME",
                "LV_BALCIA_HOME",
                "LV_BALTA_HOME",
                "LV_COMPENSA_HOME",
                "LV_ERGO_HOME",
                "LV_GJENSIDIGE_HOME",
                "LV_IF_HOME",
                "LV_SWEDBANK_HOME",
                "SE_IF_VEHICLE",
                "SE_FOLKSAM_VEHICLE",
                "SE_LANSFORSAKRINGAR_HOME",
                "SE_PAYDRIVE_VEHICLE",
                "SE_SVEDEA_VEHICLE",
                "SE_VOLVIA_VEHICLE",
                "SE_BLIWA_ACCIDENT",
                "UK_AXA_HOME",
                "UK_AXA_VEHICLE",
                "UK_HASTINGS_DIRECT_HOME",
                "UK_HASTINGS_DIRECT_VEHICLE",
                "UK_POLICYEXPERT_HOME",
                "UK_POLICYEXPERT_VEHICLE",
                "UK_POST_OFFICE_HOME",
                "UK_THE_AA_HOME",
                "UK_THE_AA_VEHICLE",
                "UK_URBAN_JUNGLE_HOME",
                "FR_AXA_PERSON",
                "FR_ACHEEL_HOME",
                "FR_ACHEEL_VEHICLE",
                "FR_MALAKOFF_HUMANIS_HEALTH",
                "FR_HARMONIE_MUTUELLE_HEALTH",
                "FR_ALAN_HEALTH",
                "FR_AESIO_MUTUELLE_HEALTH",
                "FR_AG2R_LA_MONDIALE_HEALTH"
              ],
              "type": "string"
            },
            "type": "array",
            "uniqueItems": true
          },
          "companyDisplayName": {
            "description": "Company display name, for displaying to users.",
            "example": "Aviva",
            "minLength": 1,
            "type": "string"
          },
          "companyGroup": {
            "description": "The name of the group that a company or integration belongs to",
            "example": "SEB",
            "type": "string"
          },
          "companyLinks": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Company-specific links such as contact forms or other external resources",
            "example": "{'contactFormLink': 'https://example.com/contact'",
            "type": "object"
          },
          "consentRequirements": {
            "description": "The set of consents required for initiating collections from this company.",
            "items": {
              "$ref": "#/components/schemas/ConsentRequirement"
            },
            "type": "array",
            "uniqueItems": true
          },
          "functional": {
            "description": "Whether or not it is possible to collect data from the company currently.",
            "example": false,
            "type": "boolean"
          },
          "loginConfig": {
            "$ref": "#/components/schemas/CompanyLoginConfig",
            "description": "Configuration options for different login methods."
          },
          "loginMethods": {
            "description": "Available login methods for the company.",
            "example": "USERNAME_AND_PASSWORD",
            "items": {
              "enum": [
                "USERNAME_AND_PASSWORD",
                "GERMAN_EID",
                "AUTHENTICATION_APP_URL"
              ],
              "type": "string"
            },
            "type": "array",
            "uniqueItems": true
          },
          "nonFunctionalLoginMethods": {
            "description": "Disabled login methods for the company.",
            "example": "USERNAME_AND_PASSWORD",
            "items": {
              "enum": [
                "USERNAME_AND_PASSWORD",
                "GERMAN_EID",
                "AUTHENTICATION_APP_URL"
              ],
              "type": "string"
            },
            "type": "array",
            "uniqueItems": true
          },
          "notifications": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Company-specific notifications configuration",
            "example": "{'LOADING_SCREEN': 'SIGNIN_WARNING'}",
            "type": "object"
          },
          "reason": {
            "description": "Reason for data collection being non-functional at present.",
            "enum": [
              "THIRD_PARTY_ERROR",
              "THIRD_PARTY_UPDATE",
              "INSURELY_ERROR",
              "INSURELY_UPDATE",
              "RECONSTRUCTION"
            ],
            "example": "THIRD_PARTY_ERROR",
            "type": "string"
          },
          "resetCredentials": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Reset links to reset credentials for the company.",
            "example": "{'resetUsernameUrl': 'https://insurely.com/forgot-username', 'resetPasswordUrl': 'https://insurely.com/forgot-password'}",
            "type": "object"
          },
          "status": {
            "description": "Status indicating the quality of the data collection for this company. A company has status BETA until we can\nguarantee the data quality and stability of it, after which its status is set to OK. Once taken out of BETA\nit cannot be set to BETA again.\n",
            "enum": [
              "OK",
              "BETA",
              "NOT_IMPLEMENTED"
            ],
            "example": "OK",
            "type": "string"
          },
          "supportsPreheating": {
            "description": "Whether the company supports starting a collection without user input.\nRequires input to be passed in at a later stage through the supplemental-info endpoint.\n",
            "type": "boolean"
          }
        },
        "required": [
          "additionalLoginInputs",
          "availableCoverageScopes",
          "company",
          "companyAndLineOfBusinesses",
          "companyDisplayName",
          "consentRequirements",
          "functional",
          "loginMethods",
          "nonFunctionalLoginMethods",
          "status",
          "supportsPreheating"
        ]
      },
      "CompanyLoginConfig": {
        "properties": {
          "passwordFieldPlaceholder": {
            "enum": [
              "PASSWORD",
              "CONFIDENTIAL_CODE",
              "PERSONAL_CODE",
              "SECRET_CODE",
              "MEMBERSHIP_NUMBER",
              "PIN_OR_PASSWORD"
            ],
            "type": "string"
          },
          "passwordLabel": {
            "enum": [
              "PASSWORD",
              "CONFIDENTIAL_CODE",
              "PERSONAL_CODE",
              "SECRET_CODE",
              "MEMBERSHIP_NUMBER",
              "PIN_OR_PASSWORD"
            ],
            "type": "string"
          },
          "usernameFieldPlaceholder": {
            "enum": [
              "EMAIL",
              "IDENTIFICATION_NUMBER_11",
              "IDENTIFICATION_CHARACTERS_8",
              "EMAIL_MOBILE_MUTUAL_MEMBER",
              "EMAIL_MOBILE_CLIENT",
              "EMAIL_MUTUAL_OR_REGULAR_MEMBER",
              "EMAIL_MOBILE_CONTRACT",
              "EMAIL_OR_MEMBER",
              "CLIENT_NUMBER",
              "LAST_NAME"
            ],
            "type": "string"
          },
          "usernameLabel": {
            "enum": [
              "EMAIL",
              "USERNAME",
              "CLIENT_NUMBER",
              "LAST_NAME"
            ],
            "type": "string"
          }
        }
      },
      "CompanyProducts": {
        "properties": {
          "company": {
            "type": "string"
          },
          "wealthProductTypes": {
            "items": {
              "$ref": "#/components/schemas/WealthProductTypeAvailability"
            },
            "type": "array"
          }
        }
      },
      "CompanyProductsResponse": {
        "properties": {
          "companies": {
            "items": {
              "$ref": "#/components/schemas/CompanyProducts"
            },
            "type": "array"
          }
        }
      },
      "ConsentRequestInput": {
        "description": "Represents a specific consent provided by the end user.",
        "properties": {
          "type": {
            "description": "The type of consent.",
            "enum": [
              "TRADE_UNION_MEMBERSHIP"
            ],
            "example": "TRADE_UNION_MEMBERSHIP",
            "type": "string"
          }
        },
        "required": [
          "type"
        ]
      },
      "ConsentRequirement": {
        "description": "The requirement for collect a specific consent.",
        "properties": {
          "method": {
            "description": "What method to use to collect the consent.",
            "enum": [
              "NONE",
              "NOTICE",
              "ACTIVE"
            ],
            "example": "ACTIVE",
            "type": "string"
          },
          "type": {
            "description": "The consent type.",
            "enum": [
              "TRADE_UNION_MEMBERSHIP"
            ],
            "example": "TRADE_UNION_MEMBERSHIP",
            "type": "string"
          }
        },
        "required": [
          "method",
          "type"
        ]
      },
      "Cookie": {
        "description": "A description of an HTTP cookie.",
        "properties": {
          "domain": {
            "description": "Domain of the cookie.",
            "example": ".insurely.com",
            "type": "string"
          },
          "httpOnly": {
            "description": "Whether the cookie is set to httpOnly or not.",
            "example": false,
            "type": "boolean"
          },
          "name": {
            "description": "Name of the cookie.",
            "example": "COOKIE_CONSENT",
            "type": "string"
          },
          "path": {
            "description": "Path of the cookie.",
            "example": "/",
            "type": "string"
          },
          "secure": {
            "description": "Whether the cookie is secure or not.",
            "example": true,
            "type": "boolean"
          },
          "value": {
            "description": "Value of the cookie.",
            "example": "1",
            "type": "string"
          }
        }
      },
      "De.AnnualCertificate": {
        "description": "Figures from the latest annual certificate under § 92 EStG (Bescheinigung), parsed from the provider's annual statement. Cumulative amounts are as of statementDate.",
        "properties": {
          "accumulatedCapital": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The accumulated pension capital (Stand des Altersvorsorgevermögens)."
          },
          "allowanceNumber": {
            "description": "The ZfA allowance number (Zulagenummer / Sozialversicherungsnummer) identifying the contract holder at the central allowance office.",
            "type": "string"
          },
          "contractNumber": {
            "description": "Contract number (Vertragsnummer) as printed on the certificate.",
            "type": "string"
          },
          "housingPromotionBalance": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The balance of the housing promotion account (Stand des Wohnförderkontos). Absent when the account has never been used."
          },
          "statementDate": {
            "description": "Statement date the cumulative figures refer to.",
            "example": "2025-12-31",
            "type": "string"
          },
          "totalAllowances": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Cumulative state allowances credited to the contract (Summe der insgesamt gutgeschriebenen Zulagen)."
          },
          "totalContributions": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Cumulative contributions made on the contract (Summe der insgesamt geleisteten Altersvorsorgebeiträge)."
          }
        }
      },
      "De.ProductFinancialInformation": {
        "description": "Information about the financial product",
        "properties": {
          "changeValue": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Change value of the assets in the financial product."
          },
          "currentValue": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Current value of the assets in the financial product."
          }
        }
      },
      "De.StateAllowance": {
        "description": "State allowance (Zulage) for a Riester pension: the current-year amounts broken down by component, and the standing allowance-request status.",
        "properties": {
          "base": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Basic allowance (Grundzulage)."
          },
          "child": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Child allowance (Kinderzulage)."
          },
          "continuousRequestAvailable": {
            "description": "Whether a continuous allowance request (Dauerzulageantrag) is available on the contract, as reported by the provider. Absent when the provider does not expose it.",
            "type": "boolean"
          },
          "nonRecurringExtra": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Non-recurring bonus allowance (Berufseinsteiger-Bonus)."
          },
          "receivedCurrentYear": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Total state allowance received in the current year."
          }
        }
      },
      "DePension": {
        "description": "German Pension. Example: DE_PENSION",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/FinancialProduct"
          },
          "propertyName": "market"
        },
        "example": {
          "activePayment": true,
          "activePayout": false,
          "ageAtEndOfSavingsPeriod": 67,
          "agreedRegularContribution": {
            "amount": 175,
            "currency": "EUR"
          },
          "annualCertificate": {
            "accumulatedCapital": {
              "amount": 17402.02,
              "currency": "EUR"
            },
            "allowanceNumber": "99 999999 X 999",
            "contractNumber": "1234567890",
            "statementDate": "2025-12-31",
            "totalAllowances": {
              "amount": 700,
              "currency": "EUR"
            },
            "totalContributions": {
              "amount": 8400,
              "currency": "EUR"
            }
          },
          "classification": "RIESTER",
          "company": "de-rv-versicherung",
          "contractNumber": "1234567890",
          "contributionsMadeCurrentYear": {
            "amount": 2100,
            "currency": "EUR"
          },
          "financialInformation": {
            "changeValue": {
              "amount": 320.24,
              "currency": "EUR"
            },
            "currentValue": {
              "amount": 17402.02,
              "currency": "EUR"
            }
          },
          "holdings": [
            {
              "isin": "IE00B4L5Y983",
              "name": "iShares Core MSCI World UCITS ETF",
              "quantity": 54.076858,
              "type": "ETF",
              "value": {
                "amount": 22468.39,
                "currency": "EUR"
              }
            }
          ],
          "id": "b4c1ec96-182b-4533-98e1-7060d9643928",
          "policyHolderName": "Max Mustermann",
          "premiumGuarantee": {
            "amount": 12000,
            "currency": "EUR"
          },
          "productName": "RiesterRente Klassik",
          "productNumber": "PRM00321-1131",
          "startDate": "2021-06-15",
          "stateAllowance": {
            "base": {
              "amount": 175,
              "currency": "EUR"
            },
            "child": {
              "amount": 300,
              "currency": "EUR"
            },
            "continuousRequestAvailable": true,
            "nonRecurringExtra": {
              "amount": 0,
              "currency": "EUR"
            },
            "receivedCurrentYear": {
              "amount": 475,
              "currency": "EUR"
            }
          },
          "transactions": [
            {
              "amount": {
                "amount": 175,
                "currency": "EUR"
              },
              "description": "Beitrag",
              "settlementDate": "2024-01-01",
              "type": "DEPOSIT"
            }
          ],
          "type": "DE_PENSION"
        },
        "properties": {
          "activePayment": {
            "description": "Whether contributions are currently being paid into the pension.",
            "type": "boolean"
          },
          "activePayout": {
            "description": "Whether the pension is currently being paid out.",
            "type": "boolean"
          },
          "ageAtEndOfSavingsPeriod": {
            "description": "Age of the policy holder at the end of the savings period.",
            "example": 67,
            "format": "int32",
            "type": "integer"
          },
          "agreedRegularContribution": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The agreed regular contribution."
          },
          "annualCertificate": {
            "$ref": "#/components/schemas/De.AnnualCertificate"
          },
          "classification": {
            "description": "Classification of the pension.",
            "enum": [
              "RIESTER",
              "BAV",
              "ALTERSVORSORGE",
              "ALTERSVORSORGEDEPOT",
              "GENERIC"
            ],
            "example": "RIESTER",
            "type": "string"
          },
          "company": {
            "description": "Company where the financial product has been collected from. Example: `de-rv-versicherung`.",
            "example": "de-rv-versicherung",
            "type": "string"
          },
          "companyDisplayName": {
            "description": "Display name of the company for user-friendly presentation.",
            "example": "R+V Versicherung",
            "type": "string"
          },
          "contractNumber": {
            "description": "Contract number assigned by the provider.",
            "example": "1234567890",
            "type": "string"
          },
          "contributionsMadeCurrentYear": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Contributions made during the current year."
          },
          "dataSource": {
            "description": "Indicates how the account data was obtained. AUTOMATIC means the data was collected via an aggregator connection. MANUAL means the account was added manually by the user. Defaults to AUTOMATIC.",
            "enum": [
              "AUTOMATIC",
              "MANUAL"
            ],
            "type": "string"
          },
          "financialInformation": {
            "$ref": "#/components/schemas/De.ProductFinancialInformation"
          },
          "holdings": {
            "description": "List of holdings within the pension.",
            "items": {
              "$ref": "#/components/schemas/Wealth.Holding"
            },
            "type": "array"
          },
          "id": {
            "description": "Insurely-generated unique identifier for this collection of the financial product. Randomly generated and not stable across collections — a new id is issued each time the product is collected, even for the same underlying account. Use this only as a handle within a single collection (e.g., to correlate holdings and transactions). Do not use it to recognize the same product over time; use the stable institution-assigned identifier on this product (e.g., `productNumber`, `accountNumber`, or `loanId`) for that.",
            "type": "string"
          },
          "policyHolderName": {
            "description": "Name of the policy holder.",
            "type": "string"
          },
          "premiumGuarantee": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The guaranteed minimum value at the end of the savings period."
          },
          "productName": {
            "description": "Name of the pension product.",
            "example": "RiesterRente Klassik",
            "type": "string"
          },
          "productNumber": {
            "description": "The product number assigned by the source financial institution (e.g., ISK account number, policy number, mortgage number). This is the most stable identifier for the product over time and across collections, and is suitable for matching the same product between repeated collections. Note that stability is best-effort and depends on what the institution exposes; it may occasionally change if the institution restructures or reissues the product.",
            "example": "PRM00321-1131",
            "type": "string"
          },
          "startDate": {
            "description": "Start date of the pension contract.",
            "example": "2021-06-15",
            "type": "string"
          },
          "stateAllowance": {
            "$ref": "#/components/schemas/De.StateAllowance"
          },
          "transactions": {
            "description": "Transactions on the pension over the last 12 months.",
            "items": {
              "$ref": "#/components/schemas/Transaction"
            },
            "type": "array"
          },
          "type": {
            "description": "Type of the financial product.",
            "enum": [
              "DEPOT_ACCOUNT",
              "DE_PENSION"
            ],
            "example": "ISK",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "title": "German Pension",
        "x-tag": "Financial Product Type"
      },
      "DepositTransaction": {
        "description": "A deposit to the account",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "description": {
            "description": "The description of the transaction.",
            "example": "Insättning",
            "type": "string"
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "DEPOSIT",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "DepositTransaction"
      },
      "DividendTransaction": {
        "description": "A dividend from a holding in the account",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "description": {
            "description": "The description of the transaction.",
            "example": "Utdelning",
            "type": "string"
          },
          "instrumentInformation": {
            "$ref": "#/components/schemas/TransactionInstrument",
            "description": "Instrument that related to the dividend transaction."
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "DIVIDEND",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "DividendTransaction"
      },
      "ErrorResponse": {
        "description": "Standard error response returned by the API when a request fails.",
        "properties": {
          "errors": {
            "description": "Field-level validation errors, empty when not applicable.",
            "items": {
              "$ref": "#/components/schemas/InsurelyInputError"
            },
            "type": "array"
          },
          "localizedMessage": {
            "description": "Localized version of the error message, if available.",
            "example": "Invalid request",
            "type": "string"
          },
          "message": {
            "description": "Human-readable error message.",
            "example": "Invalid request",
            "type": "string"
          },
          "status": {
            "description": "HTTP status name.",
            "example": "BAD_REQUEST",
            "type": "string"
          },
          "statusCode": {
            "description": "HTTP status code.",
            "example": 400,
            "format": "int32",
            "type": "integer"
          }
        }
      },
      "FeeTransaction": {
        "description": "Fee withdrawn from the account",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "description": {
            "description": "The description of the transaction.",
            "example": "Avgift",
            "type": "string"
          },
          "feeType": {
            "description": "What the fee was charged for. Absent when not known.",
            "enum": [
              "ENTRY",
              "MANAGEMENT"
            ],
            "example": "ENTRY",
            "title": "FeeType",
            "type": "string"
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "FEE",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "FeeTransaction"
      },
      "FinancialProduct": {
        "description": "Details of financial products such as pensions and investments accounts.",
        "discriminator": {
          "mapping": {
            "child-1": "#/components/schemas/GermanDepotAccount",
            "child-2": "#/components/schemas/DePension"
          },
          "propertyName": "financial product type"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/GermanDepotAccount"
          },
          {
            "$ref": "#/components/schemas/DePension"
          }
        ],
        "properties": {
          "company": {
            "description": "  Company where the financial product has been collected from. Examples:\n  `se-folksam`, `se-lansforsakringar`, `se-avanza`, `se-movestic`, `se-spp`, `se-nordea`,\n  `se-amf`, `se-seb`, `se-alecta`, `se-nordnet`, `se-handelsbanken`, `se-futur`,\n  `se-swedbank`, `se-skandia`, `se-ica-bank`, `se-danske-bank`.\n",
            "example": "se-company",
            "type": "string"
          },
          "companyDisplayName": {
            "description": "Display name of the company for user-friendly presentation.",
            "example": "Company",
            "type": "string"
          },
          "type": {
            "description": "Type of the financial product.",
            "enum": [
              "DEPOT_ACCOUNT",
              "DE_PENSION"
            ],
            "example": "ISK",
            "type": "string"
          }
        },
        "required": [
          "type"
        ],
        "title": "Financial Product"
      },
      "GermanDepotAccount": {
        "description": "A securities depot account (Wertpapierdepot) holding funds, equities, ETFs and other securities.",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/FinancialProduct"
          },
          "propertyName": "financial product type"
        },
        "example": {
          "company": "de-trade-republic",
          "companyDisplayName": "Trade Republic",
          "financialInformation": {
            "currentValue": {
              "amount": 26982.66,
              "currency": "EUR"
            },
            "performanceSinceStart": 0.1605
          },
          "holdings": [
            {
              "acquisitionValue": {
                "amount": 18883.51,
                "currency": "EUR"
              },
              "csdBic": "DAKVDEFFXXX",
              "feeVariable": 0.002,
              "isin": "IE00B4L5Y983",
              "name": "iShares Core MSCI World UCITS ETF",
              "quantity": 54.076858,
              "type": "ETF",
              "value": {
                "amount": 22468.39,
                "currency": "EUR"
              }
            }
          ],
          "id": "df2e7a28-d871-45c1-a01e-515b7aeaf7da",
          "personalInformation": {},
          "productName": "Depot",
          "productNumber": "987654321",
          "type": "DEPOT_ACCOUNT"
        },
        "properties": {
          "company": {
            "description": "  Company where the financial product has been collected from. Examples:\n  `de-trade-republic`, `de-scalable-capital`, `de-ing`, `de-comdirect`,\n  `de-commerzbank`, `de-dkb`, `de-consorsbank`, `de-n26`.\n",
            "example": "de-trade-republic",
            "type": "string"
          },
          "companyDisplayName": {
            "description": "Display name of the company for user-friendly presentation.",
            "example": "Trade Republic",
            "type": "string"
          },
          "financialInformation": {
            "$ref": "#/components/schemas/ProductFinancialInformation",
            "description": "Financial details of the product, like value, performance etc."
          },
          "holdings": {
            "description": "List of holdings within the depot account.",
            "items": {
              "$ref": "#/components/schemas/GermanDepotAccount.GermanHolding"
            },
            "type": "array"
          },
          "id": {
            "description": "Insurely-generated unique identifier for this collection of the financial product. Randomly generated and not stable across collections — a new id is issued each time the product is collected, even for the same underlying account. Use this only as a handle within a single collection (e.g., to correlate holdings and transactions). Do not use it to recognize the same product over time; use the stable institution-assigned identifier on this product (e.g., `productNumber`, `accountNumber`, or `loanId`) for that.",
            "example": "6a7c135e-3a56-44ae-bc53-1d0d5321f552",
            "type": "string"
          },
          "personalInformation": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Details of the person collecting the data.",
            "type": "object"
          },
          "productName": {
            "description": "Name of the financial product.",
            "example": "Depot",
            "type": "string"
          },
          "productNumber": {
            "description": "The product number assigned by the source financial institution (e.g., ISK account number, policy number, mortgage number). This is the most stable identifier for the product over time and across collections, and is suitable for matching the same product between repeated collections. Note that stability is best-effort and depends on what the institution exposes; it may occasionally change if the institution restructures or reissues the product.",
            "example": "1234567890",
            "type": "string"
          },
          "type": {
            "description": "Type of the financial product.",
            "enum": [
              "DEPOT_ACCOUNT",
              "DE_PENSION"
            ],
            "example": "ISK",
            "type": "string"
          }
        },
        "required": [
          "company",
          "companyDisplayName",
          "id",
          "type"
        ],
        "title": "Depot Account",
        "x-tag": "Financial Product Type"
      },
      "GermanDepotAccount.GermanHolding": {
        "properties": {
          "acquisitionValue": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The total cost incurred to acquire an asset."
          },
          "csdBic": {
            "description": "BIC of the Central Securities Depository where the instrument is held, inferred from the ISIN and issuer market. Should be considered a well-informed guess unless explicitly provided by the bank.",
            "example": "DAKVDEFFXXX",
            "type": "string"
          },
          "feeVariable": {
            "description": "Yearly variable fee based on the value of the holding.",
            "example": 0.002,
            "format": "double",
            "type": "number"
          },
          "isin": {
            "description": "ISIN code of the holding.",
            "example": "IE00B4L5Y983",
            "type": "string"
          },
          "name": {
            "description": "Name of the holding.",
            "example": "iShares Core MSCI World UCITS ETF",
            "type": "string"
          },
          "quantity": {
            "description": "Quantity of the asset held.",
            "example": 54.076858,
            "format": "double",
            "type": "number"
          },
          "type": {
            "description": "Type of the holding.",
            "enum": [
              "ETF",
              "EQUITY",
              "FUND",
              "UNKNOWN"
            ],
            "example": "EQUITY",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Current valuation of the holding, calculated as the product of unit price and quantity."
          }
        },
        "title": "German Holding"
      },
      "InstructionsRequestObject": {
        "description": "The instructions request object included in the `CollectionStatusInformationMap` for the `SWEDISH_MOBILE_BANKID_SAME_DEVICE_CLIENT_SIDE_AUTHENTICATION` login method.",
        "properties": {
          "request": {
            "$ref": "#/components/schemas/Request"
          }
        },
        "required": [
          "request"
        ]
      },
      "InsuranceTypeAndSubtype": {
        "properties": {
          "insuranceSubType": {
            "description": "The specific insurance subtype",
            "enum": [
              "carInsurance",
              "boatInsurance",
              "trailerInsurance",
              "motorcycleInsurance",
              "mopedInsurance",
              "caravanInsurance",
              "motorhomeInsurance",
              "otherVehicleInsurance",
              "childInsurance",
              "pregnancyInsurance",
              "lifeInsurance",
              "healthInsurance",
              "accidentInsurance",
              "travelInsurance",
              "condoInsurance",
              "contentsInsurance",
              "villaInsurance",
              "cottageInsurance",
              "farmInsurance",
              "catInsurance",
              "dogInsurance",
              "horseInsurance",
              "otherAnimalInsurance",
              "genericInsurance",
              "groupInsurance",
              "incomeInsurance",
              "sicknessInsurance",
              "loanInsurance",
              "landlordInsurance"
            ],
            "example": "CAR_INSURANCE",
            "type": "string"
          },
          "insuranceType": {
            "description": "The main insurance type category",
            "enum": [
              "vehicleInsurance",
              "houseContentInsurance",
              "personInsurance",
              "animalInsurance",
              "groupInsurance",
              "generalInsurance",
              "incomeInsurance"
            ],
            "example": "VEHICLE_INSURANCE",
            "type": "string"
          }
        }
      },
      "InsurelyInputError": {
        "description": "Field-level validation errors, empty when not applicable."
      },
      "InterestTransaction": {
        "description": "A deposit of interest to the account",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "description": {
            "description": "The description of the transaction.",
            "example": "Ränta",
            "type": "string"
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "INTEREST",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "InterestTransaction"
      },
      "Item": {
        "description": "The item object included in the `CollectionInput` for providing supplemental information",
        "properties": {
          "type": {
            "description": "The type of information provided",
            "enum": [
              "EMAIL",
              "LOGIN_METHOD",
              "PASSWORD",
              "TWO_FACTOR_TOKEN",
              "USERNAME"
            ],
            "example": "EMAIL",
            "type": "string"
          },
          "value": {
            "description": "The value for the corresponding type that is passed in for the item",
            "example": "abc@insurely.com",
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "value"
        ]
      },
      "MonetaryAmount": {
        "description": "Defines a monetary amount, specified by its currency code and numerical value.",
        "properties": {
          "amount": {
            "description": "The numeric representation of the monetary value.",
            "example": 10.32,
            "type": "number"
          },
          "currency": {
            "description": "The ISO 4217 standard currency code. Possible enums: DKK, EUR, GBP, NOK, SEK, USD, etc.",
            "example": "EUR",
            "type": "string"
          }
        },
        "title": "Monetary Amount"
      },
      "OtherTransaction": {
        "description": "A transaction to or from the account with an unknown type",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "description": {
            "description": "The description of the transaction.",
            "example": "Skatt",
            "type": "string"
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "OTHER",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "OtherTransaction"
      },
      "ProductFinancialInformation": {
        "properties": {
          "currentValue": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Current value of the assets in the financial product. Current value is total paid + change in value. Change in value is affected by performance of underlying assets and withdrawals."
          },
          "performanceSinceStart": {
            "description": "Performance of the portfolio as a percentage. For example, 0.2533 represents a 25.33% increase in value. Performance is taken as presented in the source, exact measuring method is unavailable",
            "example": 0.2533,
            "format": "double",
            "type": "number"
          },
          "totalDeposits": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Cumulated value of all deposits (premiums/transfers)."
          }
        }
      },
      "RedemptionTransaction": {
        "description": "Redemption of shares on the account",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "description": {
            "description": "The description of the transaction.",
            "example": "Utdelning",
            "type": "string"
          },
          "instrumentInformation": {
            "$ref": "#/components/schemas/TransactionInstrument",
            "description": "Instrument that related to the dividend transaction."
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "REDEMPTION",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "RedemptionTransaction"
      },
      "Request": {
        "properties": {
          "body": {
            "description": "If the method is POST, body to be included in the POST request as string.",
            "example": "'{\"username\":\"19900101-1234\"}'",
            "type": "string"
          },
          "cookies": {
            "description": "List of cookies to include in the request. They should be added to a cookie jar and included in each subsequent request.",
            "items": {
              "$ref": "#/components/schemas/Cookie"
            },
            "type": "array"
          },
          "etag": {
            "description": "Entity tag of the request, each unique request will have its own unique etag. This allows for distinguishing between new requests to be made,\nsince the same request may be \"returned with multiple `CollectionStatus` responses.",
            "example": "d5c19d129d9f4a54b7de2fa198bf73fa-initiate",
            "type": "string"
          },
          "headers": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Map of headers to include with the request.",
            "example": {
              "Content-Type": "application/json"
            },
            "type": "object"
          },
          "method": {
            "description": "HTTP method of the request.",
            "example": "POST",
            "type": "string"
          },
          "url": {
            "description": "URL to make a request towards. This will be based on the company that the collection is started towards.",
            "example": "https://insurely.com/initiate-bankid",
            "type": "string"
          }
        },
        "required": [
          "url"
        ]
      },
      "ResponseObject": {
        "description": "An HTTP response to be provided after receiving HTTP `INSTRUCTIONS` in the `CollectionStatus` `extraInformation` object. This is expected when using the `SWEDISH_MOBILE_BANKID_SAME_DEVICE_CLIENT_SIDE_AUTHENTICATION` `loginMethod`. An in-depth description of this flow can be found in the introduction.",
        "properties": {
          "headers": {
            "additionalProperties": {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            "description": "The keys and values of the response headers. Values are lists because some headers (notably Set-Cookie) will be repeated",
            "example": {
              "Cache-Control": [
                "no-cache, no-store, max-age=0"
              ],
              "Content-Encoding": [
                "gzip"
              ],
              "Content-Language": [
                "sv_SE"
              ],
              "Content-Type": [
                "application/json; charset=UTF-8"
              ],
              "Date": [
                "Sun, 20 Jul 1969 20:17:10 GMT"
              ],
              "Expires": [
                "Thu, 01 Jan 1970 00:00:00 GMT"
              ],
              "Pragma": [
                "no-cache"
              ],
              "Server": [
                "-"
              ],
              "Set-Cookie": [
                "session=0cdd1666-7319-4f73-8fc3-d095f83b4ff9;Path=/;Domain=somecompany.se;Secure;HttpOnly",
                "qwerty=219ffwef9w0f; Domain=somecompany.se"
              ],
              "Strict-Transport-Security": [
                "max-age=31536000; includeSubDomains"
              ],
              "Transfer-Encoding": [
                "Identity"
              ],
              "Vary": [
                "Accept-Encoding"
              ]
            },
            "type": "object"
          },
          "response": {
            "description": "The response body, in the format it was responded, e.g. html or json.",
            "example": {
              "andromedaUserToken": "some_random_token",
              "extendedUsage": false,
              "formattedServerTime": "1969-07-20 22:27",
              "links": {
                "next": {
                  "method": "GET",
                  "uri": "/v5/profile/"
                }
              },
              "maskedUserId": "19300805****",
              "serverTime": "19690720 22:17",
              "status": "COMPLETE"
            }
          },
          "type": {
            "enum": [
              "RESPONSE_OBJECT"
            ],
            "example": "RESPONSE_OBJECT",
            "type": "string"
          }
        },
        "title": "ResponseObject"
      },
      "SelectOne": {
        "properties": {
          "key": {
            "type": "string"
          },
          "options": {
            "items": {
              "$ref": "#/components/schemas/AdditionalLoginInputSelectOption"
            },
            "type": "array",
            "uniqueItems": true
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "key",
          "options"
        ]
      },
      "SellTransaction": {
        "description": "The sale of a holding in the account",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "commission": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The optional commission on the transaction"
          },
          "instrumentInformation": {
            "$ref": "#/components/schemas/TransactionInstrument",
            "description": "Information about the instrument traded."
          },
          "quantity": {
            "description": "The quantity of stock or fund bought.",
            "example": 204.33,
            "format": "double",
            "type": "number"
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "tradeDate": {
            "description": "The date when the instrument was traded.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "SELL",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "SellTransaction"
      },
      "SupplementInformation": {
        "discriminator": {
          "mapping": {
            "COLLECTION_INPUT": "#/components/schemas/CollectionInput",
            "RESPONSE_OBJECT": "#/components/schemas/ResponseObject",
            "TWO_FACTOR_CHOICE": "#/components/schemas/TwoFactorChoice",
            "TWO_FACTOR_CODE": "#/components/schemas/TwoFactorCode"
          },
          "propertyName": "api"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/TwoFactorCode"
          },
          {
            "$ref": "#/components/schemas/TwoFactorChoice"
          },
          {
            "$ref": "#/components/schemas/ResponseObject"
          },
          {
            "$ref": "#/components/schemas/CollectionInput"
          }
        ],
        "properties": {
          "type": {
            "description": "Type of the supplemental information.",
            "enum": [
              "TWO_FACTOR_CODE",
              "TWO_FACTOR_CHOICE",
              "RESPONSE_OBJECT",
              "COLLECTION_INPUT"
            ],
            "type": "string"
          }
        },
        "title": "SupplementInformation"
      },
      "Transaction": {
        "description": "List of transactions on the account within the last 12 months. Will only be included if configured accordingly",
        "discriminator": {
          "mapping": {
            "child-1": "#/components/schemas/BuyTransaction",
            "child-2": "#/components/schemas/DepositTransaction",
            "child-3": "#/components/schemas/DividendTransaction",
            "child-4": "#/components/schemas/FeeTransaction",
            "child-5": "#/components/schemas/InterestTransaction",
            "child-6": "#/components/schemas/OtherTransaction",
            "child-7": "#/components/schemas/SellTransaction",
            "child-8": "#/components/schemas/RedemptionTransaction",
            "child-9": "#/components/schemas/WithdrawalTransaction"
          },
          "propertyName": "transaction type"
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/BuyTransaction"
          },
          {
            "$ref": "#/components/schemas/DepositTransaction"
          },
          {
            "$ref": "#/components/schemas/DividendTransaction"
          },
          {
            "$ref": "#/components/schemas/FeeTransaction"
          },
          {
            "$ref": "#/components/schemas/InterestTransaction"
          },
          {
            "$ref": "#/components/schemas/OtherTransaction"
          },
          {
            "$ref": "#/components/schemas/SellTransaction"
          },
          {
            "$ref": "#/components/schemas/RedemptionTransaction"
          },
          {
            "$ref": "#/components/schemas/WithdrawalTransaction"
          }
        ],
        "properties": {
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "BUY",
            "title": "TransactionType",
            "type": "string"
          }
        }
      },
      "TransactionInstrument": {
        "properties": {
          "isin": {
            "description": "The isin of the instrument.",
            "example": "SE0005188836",
            "type": "string"
          },
          "name": {
            "description": "The name of the instrument.",
            "example": "LF Global Indexnära",
            "type": "string"
          },
          "priceInAccountCurrency": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The price of the instrument in the account currency."
          },
          "type": {
            "description": "The type of the instrument (equity, fund, etc).",
            "enum": [
              "ETF",
              "EQUITY",
              "FUND",
              "UNKNOWN"
            ],
            "example": "FUND",
            "type": "string"
          }
        },
        "title": "TransactionInstrument"
      },
      "TwoFactorAuthenticationInstruction": {
        "description": "Instructions for two factor authentication. Add supplemental information to a collection if the `responseType` is not `NO_RESPONSE`.",
        "properties": {
          "authenticationInstruction": {
            "description": "Instructions text",
            "example": "Please authenticate with the following device: <name>'s IPHONE 13",
            "type": "string"
          },
          "responseType": {
            "description": "Expected response type",
            "enum": [
              "NUMBER_CODE",
              "NO_RESPONSE",
              "PHONE_NUMBER",
              "QR_CODE"
            ],
            "example": "NUMBER_CODE",
            "type": "string"
          }
        },
        "required": [
          "authenticationInstruction",
          "responseType"
        ]
      },
      "TwoFactorChoice": {
        "description": "A two factor code to be supplied to a collection. The collection will have status `TWO FACTOR PENDING` when a two factor code is expected from the user.",
        "properties": {
          "type": {
            "enum": [
              "TWO_FACTOR_CHOICE"
            ],
            "example": "TWO_FACTOR_CHOICE",
            "type": "string"
          },
          "value": {
            "description": "UUID of Selected Two factor method",
            "example": "2331690c-06ea-499b-a5b5-c719e253ce93",
            "type": "string"
          }
        },
        "title": "TwoFactorChoice"
      },
      "TwoFactorCode": {
        "description": "A two factor code to be supplied to a collection. The collection will have status `TWO FACTOR PENDING` when a two factor code is expected from the user.",
        "properties": {
          "type": {
            "enum": [
              "TWO_FACTOR_CODE"
            ],
            "example": "TWO_FACTOR_CODE",
            "type": "string"
          },
          "value": {
            "description": "Two factor code",
            "example": "A12345",
            "type": "string"
          }
        },
        "title": "TwoFactorCode"
      },
      "TwoFactorOption": {
        "description": "Available 2FA methods for this collection.",
        "properties": {
          "displayText": {
            "description": "text to display",
            "example": "Please supply the code sent to your iPhone 070******6",
            "type": "string"
          },
          "type": {
            "description": "2FA type",
            "enum": [
              "SMS",
              "APP",
              "APP_CODE",
              "EMAIL"
            ],
            "example": "APP",
            "type": "string"
          },
          "uuid": {
            "description": "uuid for this option",
            "example": "7fbc80f0-870b-4d94-8a31-baf683780b79",
            "type": "string"
          }
        }
      },
      "Wealth.Holding": {
        "properties": {
          "acquisitionValue": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The total cost incurred to acquire an asset."
          },
          "feeVariable": {
            "description": "Yearly variable fee based on the value of the holding.",
            "example": 0.0015,
            "format": "double",
            "type": "number"
          },
          "fundAccountNumber": {
            "description": "Only populated for fund holdings from Handelsbanken ISK or custody accounts. This is the underlying account number for the fund",
            "example": "12345678",
            "type": "string"
          },
          "isin": {
            "description": "ISIN code of the holding.",
            "example": "SE0005188836",
            "type": "string"
          },
          "marketIdentifierCode": {
            "description": "Unique identification code used to identify securities trading exchanges defined in ISO 10383",
            "example": "XSTO",
            "type": "string"
          },
          "name": {
            "description": "Name of the holding.",
            "example": "LF Global Indexnära",
            "type": "string"
          },
          "quantity": {
            "description": "Quantity of the asset held.",
            "example": 123.43,
            "format": "double",
            "type": "number"
          },
          "type": {
            "description": "Type of the holding.",
            "enum": [
              "ETF",
              "EQUITY",
              "FUND",
              "UNKNOWN"
            ],
            "example": "EQUITY",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "Current valuation of the holding, calculated as the product of unit price and quantity."
          }
        },
        "title": "Holding"
      },
      "WealthProductTypeAvailability": {
        "properties": {
          "collectionSupported": {
            "type": "boolean"
          },
          "confirmedAtCompany": {
            "type": "boolean"
          },
          "productType": {
            "enum": [
              "DEPOT_ACCOUNT",
              "SAVINGS_ACCOUNT",
              "DE_PENSION"
            ],
            "type": "string"
          }
        }
      },
      "WithdrawalTransaction": {
        "description": "A withdrawal from the account",
        "discriminator": {
          "mapping": {
            "parent": "#/components/schemas/Transaction"
          },
          "propertyName": "transaction type"
        },
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/MonetaryAmount",
            "description": "The transaction amount."
          },
          "description": {
            "description": "The description of the transaction.",
            "example": "Uttag",
            "type": "string"
          },
          "settlementDate": {
            "description": "The date when the transaction was settled.",
            "example": "2024-01-01",
            "type": "string"
          },
          "type": {
            "enum": [
              "BUY",
              "SELL",
              "DEPOSIT",
              "WITHDRAWAL",
              "FEE",
              "INTEREST",
              "DIVIDEND",
              "REDEMPTION",
              "OTHER"
            ],
            "example": "WITHDRAWAL",
            "title": "TransactionType",
            "type": "string"
          }
        },
        "title": "WithdrawalTransaction"
      }
    },
    "securitySchemes": {
      "authorization-token": {
        "description": "Your API key. Requests are only accepted from IP addresses on the client's allowlist, and with a registered client certificate when mTLS is enforced for the client.",
        "in": "header",
        "name": "authorization-token",
        "type": "apiKey"
      },
      "client-id": {
        "description": "Your client ID, as used by the Prebuilt UI. Server-to-server integrations authenticate with authorization-token instead.",
        "in": "header",
        "name": "client-id",
        "type": "apiKey"
      },
      "jwt-token": {
        "bearerFormat": "JWT",
        "description": "A user session token, sent as `Authorization: Bearer <token>`.",
        "scheme": "bearer",
        "type": "http"
      }
    }
  },
  "info": {
    "contact": {
      "email": "tech@insurely.com",
      "name": "Insurely",
      "url": "https://insurely.com"
    },
    "description": "",
    "termsOfService": "https://www.insurely.com/sv/privacy-policy",
    "title": "Insurely API",
    "version": "2025-01-01"
  },
  "openapi": "3.1.0",
  "paths": {
    "/companies/availability": {
      "get": {
        "description": "Obtain a full list of companies available for your client, together with their current status, availability (functional or not) and available login methods.",
        "operationId": "getCompaniesStatus",
        "parameters": [
          {
            "description": "The API version to use, as YYYY-MM-DD. Must match the version of the endpoint you are targeting. A request without it, or with a version older than the client's minimum API version, is served by the client's minimum API version.",
            "example": "2025-01-01",
            "in": "header",
            "name": "Insurely-Version",
            "required": true,
            "schema": {
              "enum": [
                "2025-01-01"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/CompanyAvailability"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Successful request."
          },
          "429": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-429"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Too Many Requests"
          }
        },
        "security": [
          {
            "authorization-token": []
          },
          {
            "client-id": []
          }
        ],
        "summary": "Get status and availability",
        "tags": [
          "Company"
        ]
      }
    },
    "/companies/supported-products": {
      "get": {
        "description": "Lists each company configured for the calling client, along with the wealth product types that company supports for this client. Each product type carries a collectionSupported flag (the company offers this product type) and a confirmedAtCompany flag (confirmed in production).",
        "operationId": "getSupportedProducts",
        "parameters": [
          {
            "description": "The API version to use, as YYYY-MM-DD. Must match the version of the endpoint you are targeting. A request without it, or with a version older than the client's minimum API version, is served by the client's minimum API version.",
            "example": "2025-01-01",
            "in": "header",
            "name": "Insurely-Version",
            "required": true,
            "schema": {
              "enum": [
                "2025-01-01"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "supported-products": {
                    "$ref": "#/components/examples/getSupportedProducts-200-supported-products"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/CompanyProductsResponse"
                }
              }
            },
            "description": "Successful request."
          },
          "429": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-429"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Too many requests. Please retry with backoff."
          }
        },
        "security": [
          {
            "authorization-token": []
          },
          {
            "client-id": []
          }
        ],
        "summary": "Get the supported products per company",
        "tags": [
          "Company"
        ]
      }
    },
    "/wealth/collection": {
      "post": {
        "description": "Initiate a pension/investment data collection for a specific individual. Calling this will trigger the selected login method.",
        "operationId": "initiateCollection",
        "parameters": [
          {
            "in": "header",
            "name": "insurely-session-id",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The API version to use, as YYYY-MM-DD. Must match the version of the endpoint you are targeting. A request without it, or with a version older than the client's minimum API version, is served by the client's minimum API version.",
            "example": "2025-01-01",
            "in": "header",
            "name": "Insurely-Version",
            "required": true,
            "schema": {
              "enum": [
                "2025-01-01"
              ],
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CollectionRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CollectionStatus"
                }
              }
            },
            "description": "Data collection successfully initiated."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-400"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-401"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-403"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "429": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-429"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Too Many Requests"
          }
        },
        "security": [
          {
            "authorization-token": []
          },
          {
            "client-id": []
          },
          {
            "jwt-token": []
          }
        ],
        "summary": "Initiate collection",
        "tags": [
          "Wealth Data Collection"
        ]
      }
    },
    "/wealth/collection/{collectionId}/data": {
      "get": {
        "operationId": "getCollectionData",
        "parameters": [
          {
            "in": "path",
            "name": "collectionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The API version to use, as YYYY-MM-DD. Must match the version of the endpoint you are targeting. A request without it, or with a version older than the client's minimum API version, is served by the client's minimum API version.",
            "example": "2025-01-01",
            "in": "header",
            "name": "Insurely-Version",
            "required": true,
            "schema": {
              "enum": [
                "2025-01-01"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/FinancialProduct"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Pension data successfully fetched."
          },
          "401": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-401"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-403"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-404"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "429": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-429"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Too Many Requests"
          }
        },
        "security": [
          {
            "authorization-token": []
          },
          {
            "client-id": []
          }
        ],
        "summary": "Get collection data",
        "tags": [
          "Wealth Data Collection"
        ]
      }
    },
    "/wealth/collection/{collectionId}/skip": {
      "post": {
        "description": "Mark a collection as skipped by the user.",
        "operationId": "skipCollection",
        "parameters": [
          {
            "in": "path",
            "name": "collectionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The API version to use, as YYYY-MM-DD. Must match the version of the endpoint you are targeting. A request without it, or with a version older than the client's minimum API version, is served by the client's minimum API version.",
            "example": "2025-01-01",
            "in": "header",
            "name": "Insurely-Version",
            "required": true,
            "schema": {
              "enum": [
                "2025-01-01"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Successfully marked as skipped."
          },
          "401": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-401"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Invalid authorization token or disabled client."
          },
          "403": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-403"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "The authenticated external user does not have access to the collection."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-404"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Collection not found for this client."
          },
          "429": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-429"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Too many requests. Please retry with backoff."
          }
        },
        "security": [
          {
            "authorization-token": []
          },
          {
            "client-id": []
          },
          {
            "jwt-token": []
          }
        ],
        "summary": "Skip collection",
        "tags": [
          "Wealth Data Collection"
        ]
      }
    },
    "/wealth/collection/{collectionId}/status": {
      "get": {
        "description": "Returns the current status of an initiated collection of wealth data.",
        "operationId": "getCollectionStatus",
        "parameters": [
          {
            "in": "path",
            "name": "collectionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The API version to use, as YYYY-MM-DD. Must match the version of the endpoint you are targeting. A request without it, or with a version older than the client's minimum API version, is served by the client's minimum API version.",
            "example": "2025-01-01",
            "in": "header",
            "name": "Insurely-Version",
            "required": true,
            "schema": {
              "enum": [
                "2025-01-01"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CollectionStatus"
                }
              }
            },
            "description": "Status successfully fetched."
          },
          "401": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-401"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-403"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-404"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "429": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-429"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Too Many Requests"
          }
        },
        "security": [
          {
            "authorization-token": []
          },
          {
            "client-id": []
          },
          {
            "jwt-token": []
          }
        ],
        "summary": "Get collection status",
        "tags": [
          "Wealth Data Collection"
        ]
      }
    },
    "/wealth/collection/{collectionId}/supplement-info": {
      "post": {
        "description": "Add supplemental information to a collection. See the extended section of SupplementInformation for what types of supplemental information that are supported.\n",
        "operationId": "addSupplementInformation",
        "parameters": [
          {
            "in": "path",
            "name": "collectionId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The API version to use, as YYYY-MM-DD. Must match the version of the endpoint you are targeting. A request without it, or with a version older than the client's minimum API version, is served by the client's minimum API version.",
            "example": "2025-01-01",
            "in": "header",
            "name": "Insurely-Version",
            "required": true,
            "schema": {
              "enum": [
                "2025-01-01"
              ],
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SupplementInformation"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Successfully added supplemental information."
          },
          "401": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-401"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-403"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-404"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "429": {
            "content": {
              "application/json": {
                "examples": {
                  "error": {
                    "$ref": "#/components/examples/standard-error-429"
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              }
            },
            "description": "Too Many Requests"
          }
        },
        "security": [
          {
            "authorization-token": []
          },
          {
            "client-id": []
          }
        ],
        "summary": "Add collection supplemental information",
        "tags": [
          "Wealth Data Collection"
        ]
      }
    }
  },
  "servers": [
    {
      "description": "Production",
      "url": "https://api.insurely.com"
    },
    {
      "description": "Test",
      "url": "https://api.test.insurely.com"
    }
  ],
  "tags": [
    {
      "description": "Provides statuses of companies available for data collection",
      "name": "Company"
    },
    {
      "description": "Initiate a collection of pension & investments data, see the status and get the data collected from the holder of pension data.",
      "name": "Wealth Data Collection"
    }
  ]
}