Einführung
Hier beginnen: der Kundenablauf
Folgen Sie einem Kunden durch die folgenden Schritte. Wählen Sie C# oder Java und bleiben Sie bei dieser Sprache. Jeder Codeblock ist ein Baustein dieses Ablaufs und kein eigenständiges Programm.
- Kunden registrieren: Verwenden Sie die Selbstregistrierung mit einem GUEST-Token. Die administrative Registrierung ist eine Alternative.
- Anmelden: Erhalten Sie das CLIENT-Access-/Refresh-Token-Paar und bewahren Sie userId auf. Die Registrierung kann dieses Paar bereits liefern; melden Sie sich bei Bedarf erneut an.
- Risiko berechnen und Vorschlag wählen: Bewahren Sie Geschäftsbereich, Anlagekategorie, Antwort-IDs des Fragebogens und die gewählte proposalId auf.
- Portfolio eröffnen: Speichern Sie den Fragebogen, ergänzen Sie Kundendaten, erstellen Sie den PDF-Vertrag und senden Sie den Eröffnungsauftrag. Bewahren Sie orderId und portfolioId auf und verfolgen Sie den Auftrag.
- Portfoliodaten lesen: Rufen Sie den aktuellen Snapshot, Werte, Geldkonten und Dokumente ab, sobald diese verfügbar sind.
- Strategie ändern: Wählen Sie einen zulässigen Vorschlag, bereiten Sie den Vertrag vor und senden Sie einen Änderungsauftrag.
Verwenden Sie Kundendaten ändern wenn sich Angaben ändern. Benachrichtigungen ist eine separate administrative Integration. Simulationsabläufe enthält optionale Entwicklungsszenarien.
Einrichtungscheckliste
- Beschaffen Sie die WMS-Basisadresse und einen GUEST-Token. Nach der Authentifizierung verwenden Sie einen CLIENT-Token. Administrative Beispiele nennen die jeweils erforderliche Rolle.
- C#: Verwenden Sie .NET 9 und installieren Sie Newtonsoft.Json mit
dotnet add package Newtonsoft.Json, und übernehmen Sie anschliessend die Imports und GuideHttp unten. - Java: Verwenden Sie Java 21 oder neuer und ergänzen Sie Gson (Maven-Koordinaten
com.google.code.gson:gson) in Ihrer Build-Konfiguration. Übernehmen Sie die Imports sowie Settings, Api und MultiPartBodyPublisher unten. Setzen Sie WMS_BASE_URL auf die Basisadresse ohne /api/v1 und setzen Sie WMS_GUEST_TOKEN. Administrative Tokens werden nur für administrative Abläufe benötigt. - Initialisieren Sie den HTTP-Client einmalig, übernehmen Sie die DTOs für Ihr Kapitel und erfassen Sie die nachfolgend genannten Kundeneingaben. In C# enthält httpClient.BaseAddress die Dienstadresse mit abschliessendem Schrägstrich; die Beispiele ergänzen api/v1.
Wenn ein Beispiel einen eigenen Typ verwendet, finden Sie dessen Definition in den Hilfsklassen oder im DTO-Katalog auf dieser Seite. Codeblöcke haben eine Schaltfläche zum Kopieren.
Zielgruppe
APIs
Voraussetzungen
Authorization: Bearer <access-token>
HTTP-Client
// WMS_BASE_URL is the WMS service origin, without /api/v1.
var baseUrl = Environment.GetEnvironmentVariable("WMS_BASE_URL") ?? throw new InvalidOperationException("Set WMS_BASE_URL");
var guestToken = Environment.GetEnvironmentVariable("WMS_GUEST_TOKEN") ?? throw new InvalidOperationException("Set WMS_GUEST_TOKEN");
using var httpClient = new HttpClient
{
BaseAddress = new Uri(baseUrl.TrimEnd('/') + "/")
};
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
httpClient.DefaultRequestHeaders.AcceptLanguage.Add(new StringWithQualityHeaderValue("de-DE"));
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", guestToken);
var httpClient = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.timeout(Duration.ofMinutes(1))
.uri(Settings.wmsUri("genders/code/MALE"))
.header("Accept", "application/json")
.header("Accept-Language", "de-DE")
.header("Authorization", "Bearer " + Settings.GUEST_TOKEN)
.GET().build();
var response = httpClient.send(request, BodyHandlers.ofString());
Api.requireSuccess(response);
Codebeispiele verwenden
Werte zwischen Kapiteln weitergeben
Derselbe fachliche Wert kann in C# und Java unterschiedliche Variablennamen haben. Bewahren Sie diese Werte im Kundenkontext auf; ein Kapitelwechsel setzt sie nicht zurück. Wird ein lokaler Name wie response erneut verwendet, wird nur das Anfrageergebnis ersetzt, nicht der gespeicherte Kundenkontext.
| Wert | C#-Beispiele | Java-Beispiele |
|---|---|---|
| Kunden-ID und Sitzung | userId, accessToken, refreshToken, validUntil | userId, accessToken, refreshToken, validUntil |
| Produktreferenzen | businessLineVorsorge.Id, investmentCategory3A.Id | businessLineId, investmentCategoryId |
| Fragebogenantworten und Risiko | responseIds, risk | responseIds, riskCategorizationObj |
| Gewählter Eröffnungsvorschlag | proposalSelectedByUser.Id | proposalSelectedByUser.Id (über proposalId ausgewählt) |
| Vollständiger Eröffnungsvertrag | pdfContractAsByteArray | contractPath als Pfad zum vollständigen PDF |
| Ergebnis der Eröffnung | orderId, portfolioId | orderId, portfolioId |
| Strategieauswahl und Änderungsauftrag | selectedProposalId, modificationOrderId | selectedProposalId, modificationOrderId |
IDs stammen aus API-Referenzaufrufen oder vorherigen Anfragen. Zahlen in JSON-Beispielen dienen nur der Veranschaulichung und dürfen nicht als tatsächliche IDs übernommen werden. Bei administrativen Benachrichtigungen bezeichnet adminUserId den Empfänger und ist von der Kunden-ID userId getrennt.
C#-Imports
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Net.Http.Json;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
Java-Imports
import java.io.*;
import java.lang.reflect.Type;
import java.net.URI;
import java.net.http.*;
import java.net.http.HttpResponse.BodyHandlers;
import java.nio.charset.StandardCharsets;
import java.nio.file.*;
import java.time.*;
import java.util.*;
import java.util.function.Supplier;
import com.google.gson.*;
import com.google.gson.annotations.SerializedName;
import com.google.gson.reflect.TypeToken;
DTO
{
"id": 0,
"code": "string",
"name": "string"
}
public class GenderOutputModel
{
public long Id { get; set; }
public string Code { get; set; }
public string Name { get; set; }
}
import com.google.gson.annotations.SerializedName;
public class GenderOutputModel {
@SerializedName("id")
public long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
}
DTO-Quellcodekatalog
Diese Clientklassen enthalten alle öffentlichen Dateneigenschaften der in den Beispielen verwendeten Modelle, einschliesslich geerbter Eigenschaften. Serverseitige Validierungsattribute und leere Basisklassen sind weggelassen. JSON-Feldnamen sind explizit angegeben. Verwenden Sie die Imports oben sowie System.Collections.Generic für C# und java.util.List / java.util.Map für Java. Java verwendet nullable Wrapper-Typen und ISO-Datumszeichenfolgen. Datumswerte in Abfrageparametern verwenden weiterhin yyyyMMdd; reine JSON-Datumswerte verwenden yyyy-MM-dd. Die Definitionen beschreiben die Datenstruktur. Der Endpunkt bestimmt, welche Felder bei Schreibzugriffen erforderlich sind.
Öffnen Sie ein Modell, um seine C#- oder Java-Definition anzuzeigen und zu kopieren. Definieren Sie jede Klasse nur einmal im Projekt: Verwenden Sie die Katalogdefinition statt einer zusätzlichen Definition aus einem früheren illustrativen Beispiel.
AccessTokenOutputModel
C#
public class AccessTokenOutputModel
{
[JsonProperty("accountNumber")]
public string AccountNumber { get; set; }
[JsonProperty("accessToken")]
public string AccessToken { get; set; }
[JsonProperty("refreshToken")]
public string RefreshToken { get; set; }
[JsonProperty("validUntil")]
public DateTime ValidUntil { get; set; }
}Java
public class AccessTokenOutputModel {
@SerializedName("accountNumber")
public String AccountNumber;
@SerializedName("accessToken")
public String AccessToken;
@SerializedName("refreshToken")
public String RefreshToken;
@SerializedName("validUntil")
public String ValidUntil;
}AccountHoldingInstitutionOutputModel
C#
public class AccountHoldingInstitutionOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("street")]
public string Street { get; set; }
[JsonProperty("streetNr")]
public string StreetNr { get; set; }
[JsonProperty("zipCode")]
public string ZipCode { get; set; }
[JsonProperty("city")]
public string City { get; set; }
[JsonProperty("countryId")]
public long CountryId { get; set; }
[JsonProperty("deleted")]
public bool Deleted { get; set; }
[JsonProperty("businessLineIds")]
public IList<long> BusinessLineIds { get; set; }
}Java
public class AccountHoldingInstitutionOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("street")
public String Street;
@SerializedName("streetNr")
public String StreetNr;
@SerializedName("zipCode")
public String ZipCode;
@SerializedName("city")
public String City;
@SerializedName("countryId")
public Long CountryId;
@SerializedName("deleted")
public Boolean Deleted;
@SerializedName("businessLineIds")
public List<Long> BusinessLineIds;
}AdminOutputModel
C#
public class AdminOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("systemUserTypeId")]
public long? SystemUserTypeId { get; set; }
[JsonProperty("accountNumber")]
public string AccountNumber { get; set; }
[JsonProperty("isLocked")]
public bool IsLocked { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("surname")]
public string Surname { get; set; }
[JsonProperty("genderId")]
public long? GenderId { get; set; }
[JsonProperty("languageId")]
public long? LanguageId { get; set; }
[JsonProperty("email")]
public string Email { get; set; }
[JsonProperty("phoneNumberPrefix")]
public string PhoneNumberPrefix { get; set; }
[JsonProperty("phoneNumberNumber")]
public string PhoneNumberNumber { get; set; }
[JsonProperty("isDeleted")]
public bool IsDeleted { get; set; }
[JsonProperty("created")]
public DateTime Created { get; set; }
[JsonProperty("modified")]
public DateTime? Modified { get; set; }
[JsonProperty("avatar")]
public string Avatar { get; set; }
}Java
public class AdminOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("systemUserTypeId")
public Long SystemUserTypeId;
@SerializedName("accountNumber")
public String AccountNumber;
@SerializedName("isLocked")
public Boolean IsLocked;
@SerializedName("name")
public String Name;
@SerializedName("surname")
public String Surname;
@SerializedName("genderId")
public Long GenderId;
@SerializedName("languageId")
public Long LanguageId;
@SerializedName("email")
public String Email;
@SerializedName("phoneNumberPrefix")
public String PhoneNumberPrefix;
@SerializedName("phoneNumberNumber")
public String PhoneNumberNumber;
@SerializedName("isDeleted")
public Boolean IsDeleted;
@SerializedName("created")
public String Created;
@SerializedName("modified")
public String Modified;
@SerializedName("avatar")
public String Avatar;
}AuthenticationSecondFactorOutputModel
C#
public class AuthenticationSecondFactorOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("accountNumber")]
public string AccountNumber { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("surname")]
public string Surname { get; set; }
[JsonProperty("role")]
public string Role { get; set; }
[JsonProperty("accessToken")]
public string AccessToken { get; set; }
[JsonProperty("validUntil")]
public DateTime ValidUntil { get; set; }
[JsonProperty("refreshToken")]
public string RefreshToken { get; set; }
[JsonProperty("remainingAttempts")]
public int RemainingAttempts { get; set; }
}Java
public class AuthenticationSecondFactorOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("accountNumber")
public String AccountNumber;
@SerializedName("name")
public String Name;
@SerializedName("surname")
public String Surname;
@SerializedName("role")
public String Role;
@SerializedName("accessToken")
public String AccessToken;
@SerializedName("validUntil")
public String ValidUntil;
@SerializedName("refreshToken")
public String RefreshToken;
@SerializedName("remainingAttempts")
public Integer RemainingAttempts;
}BankAccountTypeOutputModel
C#
public class BankAccountTypeOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class BankAccountTypeOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("description")
public String Description;
}BookingCodeOutputModel
C#
public class BookingCodeOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("accountHoldingInstitutionId")]
public long AccountHoldingInstitutionId { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("bookingCategoryId")]
public long BookingCategoryId { get; set; }
}Java
public class BookingCodeOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("accountHoldingInstitutionId")
public Long AccountHoldingInstitutionId;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("description")
public String Description;
@SerializedName("bookingCategoryId")
public Long BookingCategoryId;
}BusinessLineOutputModel
C#
public class BusinessLineOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("alternativeName")]
public string AlternativeName { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class BusinessLineOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("alternativeName")
public String AlternativeName;
@SerializedName("description")
public String Description;
}CashAccountMovementOutputModel
C#
public class CashAccountMovementOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("cashAccountId")]
public long CashAccountId { get; set; }
[JsonProperty("userPortfolioId")]
public long UserPortfolioId { get; set; }
[JsonProperty("bookingDate")]
public DateTime BookingDate { get; set; }
[JsonProperty("amount")]
public decimal Amount { get; set; }
[JsonProperty("saldo")]
public decimal Saldo { get; set; }
[JsonProperty("transactionId")]
public string TransactionId { get; set; }
[JsonProperty("bookingCodeId")]
public long BookingCodeId { get; set; }
[JsonProperty("bookingCode")]
public string BookingCode { get; set; }
[JsonProperty("bookingCodeType")]
public string BookingCodeType { get; set; }
[JsonProperty("bookingDescription")]
public string BookingDescription { get; set; }
[JsonProperty("isin")]
public string Isin { get; set; }
[JsonProperty("isFirstPayment")]
public bool IsFirstPayment { get; set; }
[JsonProperty("usetText")]
public string UsetText { get; set; }
[JsonProperty("remitter")]
public string Remitter { get; set; }
[JsonProperty("remitterAddress")]
public string RemitterAddress { get; set; }
[JsonProperty("remitterIban")]
public string RemitterIban { get; set; }
[JsonProperty("message")]
public string Message { get; set; }
[JsonProperty("reference")]
public string Reference { get; set; }
[JsonProperty("unitPrice")]
public decimal? UnitPrice { get; set; }
[JsonProperty("quantity")]
public decimal? Quantity { get; set; }
}Java
public class CashAccountMovementOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("cashAccountId")
public Long CashAccountId;
@SerializedName("userPortfolioId")
public Long UserPortfolioId;
@SerializedName("bookingDate")
public String BookingDate;
@SerializedName("amount")
public java.math.BigDecimal Amount;
@SerializedName("saldo")
public java.math.BigDecimal Saldo;
@SerializedName("transactionId")
public String TransactionId;
@SerializedName("bookingCodeId")
public Long BookingCodeId;
@SerializedName("bookingCode")
public String BookingCode;
@SerializedName("bookingCodeType")
public String BookingCodeType;
@SerializedName("bookingDescription")
public String BookingDescription;
@SerializedName("isin")
public String Isin;
@SerializedName("isFirstPayment")
public Boolean IsFirstPayment;
@SerializedName("usetText")
public String UsetText;
@SerializedName("remitter")
public String Remitter;
@SerializedName("remitterAddress")
public String RemitterAddress;
@SerializedName("remitterIban")
public String RemitterIban;
@SerializedName("message")
public String Message;
@SerializedName("reference")
public String Reference;
@SerializedName("unitPrice")
public java.math.BigDecimal UnitPrice;
@SerializedName("quantity")
public java.math.BigDecimal Quantity;
}CashAccountOutputModel
C#
public class CashAccountOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("number")]
public string Number { get; set; }
[JsonProperty("iban")]
public string Iban { get; set; }
[JsonProperty("balance")]
public decimal Balance { get; set; }
[JsonProperty("balanceDate")]
public DateTime BalanceDate { get; set; }
[JsonProperty("openingDate")]
public DateTime OpeningDate { get; set; }
[JsonProperty("accountTypeId")]
public long AccountTypeId { get; set; }
[JsonProperty("currencyId")]
public long CurrencyId { get; set; }
[JsonProperty("connectedPortfolioIds")]
public IList<long> ConnectedPortfolioIds { get; set; }
}Java
public class CashAccountOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("number")
public String Number;
@SerializedName("iban")
public String Iban;
@SerializedName("balance")
public java.math.BigDecimal Balance;
@SerializedName("balanceDate")
public String BalanceDate;
@SerializedName("openingDate")
public String OpeningDate;
@SerializedName("accountTypeId")
public Long AccountTypeId;
@SerializedName("currencyId")
public Long CurrencyId;
@SerializedName("connectedPortfolioIds")
public List<Long> ConnectedPortfolioIds;
}CivilStatusOutputModel
C#
public class CivilStatusOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
}Java
public class CivilStatusOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
}ClientAddressOutputModel
C#
public class ClientAddressOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("street")]
public string Street { get; set; }
[JsonProperty("streetNr")]
public string StreetNr { get; set; }
[JsonProperty("zip")]
public string Zip { get; set; }
[JsonProperty("city")]
public string City { get; set; }
[JsonProperty("countryId")]
public long CountryId { get; set; }
[JsonProperty("coName")]
public string CoName { get; set; }
[JsonProperty("coSurname")]
public string CoSurname { get; set; }
}Java
public class ClientAddressOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("street")
public String Street;
@SerializedName("streetNr")
public String StreetNr;
@SerializedName("zip")
public String Zip;
@SerializedName("city")
public String City;
@SerializedName("countryId")
public Long CountryId;
@SerializedName("coName")
public String CoName;
@SerializedName("coSurname")
public String CoSurname;
}ClientAttachmentOutputModel
C#
public class ClientAttachmentOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("reference")]
public string Reference { get; set; }
[JsonProperty("fileName")]
public string FileName { get; set; }
[JsonProperty("size")]
public long Size { get; set; }
[JsonProperty("contentType")]
public string ContentType { get; set; }
}Java
public class ClientAttachmentOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("reference")
public String Reference;
@SerializedName("fileName")
public String FileName;
@SerializedName("size")
public Long Size;
@SerializedName("contentType")
public String ContentType;
}ClientExternalIdOutputModel
C#
public class ClientExternalIdOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("userId")]
public long UserId { get; set; }
[JsonProperty("externalId")]
public string ExternalId { get; set; }
[JsonProperty("investmentCategoryId")]
public long InvestmentCategoryId { get; set; }
[JsonProperty("accountHoldingInstitutionId")]
public long AccountHoldingInstitutionId { get; set; }
[JsonProperty("deleted")]
public bool Deleted { get; set; }
}Java
public class ClientExternalIdOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("userId")
public Long UserId;
@SerializedName("externalId")
public String ExternalId;
@SerializedName("investmentCategoryId")
public Long InvestmentCategoryId;
@SerializedName("accountHoldingInstitutionId")
public Long AccountHoldingInstitutionId;
@SerializedName("deleted")
public Boolean Deleted;
}ClientLegalAcceptanceOutputModel
C#
public class ClientLegalAcceptanceOutputModel
{
[JsonProperty("userId")]
public long UserId { get; set; }
[JsonProperty("legalAcceptanceId")]
public long LegalAcceptanceId { get; set; }
[JsonProperty("acceptedDate")]
public DateTime AcceptedDate { get; set; }
}Java
public class ClientLegalAcceptanceOutputModel {
@SerializedName("userId")
public Long UserId;
@SerializedName("legalAcceptanceId")
public Long LegalAcceptanceId;
@SerializedName("acceptedDate")
public String AcceptedDate;
}ClientNationalityOutputModel
C#
public class ClientNationalityOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
}Java
public class ClientNationalityOutputModel {
@SerializedName("id")
public Long Id;
}ClientNoteOutputModel
C#
public class ClientNoteOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("accountId")]
public long AccountId { get; set; }
[JsonProperty("subject")]
public string Subject { get; set; }
[JsonProperty("text")]
public string Text { get; set; }
[JsonProperty("created")]
public DateTime Created { get; set; }
[JsonProperty("createdByUser")]
public CreatedByUserOutputModel CreatedByUser { get; set; }
[JsonProperty("attachmentReferences")]
public ICollection<ClientAttachmentOutputModel> AttachmentReferences { get; set; }
}Java
public class ClientNoteOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("accountId")
public Long AccountId;
@SerializedName("subject")
public String Subject;
@SerializedName("text")
public String Text;
@SerializedName("created")
public String Created;
@SerializedName("createdByUser")
public CreatedByUserOutputModel CreatedByUser;
@SerializedName("attachmentReferences")
public List<ClientAttachmentOutputModel> AttachmentReferences;
}ClientOutputModel
C#
public class ClientOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("systemUserTypeId")]
public long? SystemUserTypeId { get; set; }
[JsonProperty("isHappyPath")]
public bool IsHappyPath { get; set; }
[JsonProperty("accountNumber")]
public string AccountNumber { get; set; }
[JsonProperty("titleId")]
public long? TitleId { get; set; }
[JsonProperty("nickName")]
public string NickName { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("nickSurname")]
public string NickSurname { get; set; }
[JsonProperty("surname")]
public string Surname { get; set; }
[JsonProperty("genderId")]
public long GenderId { get; set; }
[JsonProperty("roleId")]
public long RoleId { get; set; }
[JsonProperty("languageId")]
public long LanguageId { get; set; }
[JsonProperty("taxLiabilityId")]
public long? TaxLiabilityId { get; set; }
[JsonProperty("civilStatusId")]
public long? CivilStatusId { get; set; }
[JsonProperty("civilStatusDate")]
public DateTime? CivilStatusDate { get; set; }
[JsonProperty("workSituationId")]
public long? WorkSituationId { get; set; }
[JsonProperty("pensionSituationId")]
public long? PensionSituationId { get; set; }
[JsonProperty("birthCountryId")]
public long? BirthCountryId { get; set; }
[JsonProperty("email")]
public string Email { get; set; }
[JsonProperty("phoneNumberPrefix")]
public string PhoneNumberPrefix { get; set; }
[JsonProperty("phoneNumberNumber")]
public string PhoneNumberNumber { get; set; }
[JsonProperty("birthDate")]
public DateTime? BirthDate { get; set; }
[JsonProperty("isDeleted")]
public bool IsDeleted { get; set; }
[JsonProperty("deliverTaxStatement")]
public bool DeliverTaxStatement { get; set; }
[JsonProperty("created")]
public DateTime Created { get; set; }
[JsonProperty("modified")]
public DateTime? Modified { get; set; }
[JsonProperty("isLocked")]
public bool IsLocked { get; set; }
[JsonProperty("lastLoginOn")]
public DateTime? LastLoginOn { get; set; }
[JsonProperty("avatar")]
public string Avatar { get; set; }
[JsonProperty("promoCode")]
public string PromoCode { get; set; }
[JsonProperty("createdByUser")]
public CreatedByUserOutputModel CreatedByUser { get; set; }
[JsonProperty("onBehalfOfId")]
public long? OnBehalfOfId { get; set; }
[JsonProperty("uSPerson")]
public bool? USPerson { get; set; }
[JsonProperty("usLawBeneficialOwner")]
public bool? UsLawBeneficialOwner { get; set; }
[JsonProperty("role")]
public RoleOutputModel Role { get; set; }
[JsonProperty("address")]
public ClientAddressOutputModel Address { get; set; }
[JsonProperty("externalIds")]
public IList<ClientExternalIdOutputModel> ExternalIds { get; set; }
[JsonProperty("nationalities")]
public IList<ClientNationalityOutputModel> Nationalities { get; set; }
[JsonProperty("notes")]
public IList<ClientNoteOutputModel> Notes { get; set; }
[JsonProperty("politicalExposures")]
public IList<ClientPoliticalExposureOutputModel> PoliticalExposures { get; set; }
[JsonProperty("refundBankAccount")]
public ClientRefundBankAccountOutputModel RefundBankAccount { get; set; }
[JsonProperty("legalAcceptance")]
public ClientLegalAcceptanceOutputModel LegalAcceptance { get; set; }
}Java
public class ClientOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("systemUserTypeId")
public Long SystemUserTypeId;
@SerializedName("isHappyPath")
public Boolean IsHappyPath;
@SerializedName("accountNumber")
public String AccountNumber;
@SerializedName("titleId")
public Long TitleId;
@SerializedName("nickName")
public String NickName;
@SerializedName("name")
public String Name;
@SerializedName("nickSurname")
public String NickSurname;
@SerializedName("surname")
public String Surname;
@SerializedName("genderId")
public Long GenderId;
@SerializedName("roleId")
public Long RoleId;
@SerializedName("languageId")
public Long LanguageId;
@SerializedName("taxLiabilityId")
public Long TaxLiabilityId;
@SerializedName("civilStatusId")
public Long CivilStatusId;
@SerializedName("civilStatusDate")
public String CivilStatusDate;
@SerializedName("workSituationId")
public Long WorkSituationId;
@SerializedName("pensionSituationId")
public Long PensionSituationId;
@SerializedName("birthCountryId")
public Long BirthCountryId;
@SerializedName("email")
public String Email;
@SerializedName("phoneNumberPrefix")
public String PhoneNumberPrefix;
@SerializedName("phoneNumberNumber")
public String PhoneNumberNumber;
@SerializedName("birthDate")
public String BirthDate;
@SerializedName("isDeleted")
public Boolean IsDeleted;
@SerializedName("deliverTaxStatement")
public Boolean DeliverTaxStatement;
@SerializedName("created")
public String Created;
@SerializedName("modified")
public String Modified;
@SerializedName("isLocked")
public Boolean IsLocked;
@SerializedName("lastLoginOn")
public String LastLoginOn;
@SerializedName("avatar")
public String Avatar;
@SerializedName("promoCode")
public String PromoCode;
@SerializedName("createdByUser")
public CreatedByUserOutputModel CreatedByUser;
@SerializedName("onBehalfOfId")
public Long OnBehalfOfId;
@SerializedName("uSPerson")
public Boolean USPerson;
@SerializedName("usLawBeneficialOwner")
public Boolean UsLawBeneficialOwner;
@SerializedName("role")
public RoleOutputModel Role;
@SerializedName("address")
public ClientAddressOutputModel Address;
@SerializedName("externalIds")
public List<ClientExternalIdOutputModel> ExternalIds;
@SerializedName("nationalities")
public List<ClientNationalityOutputModel> Nationalities;
@SerializedName("notes")
public List<ClientNoteOutputModel> Notes;
@SerializedName("politicalExposures")
public List<ClientPoliticalExposureOutputModel> PoliticalExposures;
@SerializedName("refundBankAccount")
public ClientRefundBankAccountOutputModel RefundBankAccount;
@SerializedName("legalAcceptance")
public ClientLegalAcceptanceOutputModel LegalAcceptance;
}ClientPoliticalExposureOutputModel
C#
public class ClientPoliticalExposureOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("userId")]
public long UserId { get; set; }
[JsonProperty("politicalExposureId")]
public long PoliticalExposureId { get; set; }
[JsonProperty("selfDescription")]
public string SelfDescription { get; set; }
}Java
public class ClientPoliticalExposureOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("userId")
public Long UserId;
@SerializedName("politicalExposureId")
public Long PoliticalExposureId;
@SerializedName("selfDescription")
public String SelfDescription;
}ClientRefundBankAccountOutputModel
C#
public class ClientRefundBankAccountOutputModel
{
[JsonProperty("bankName")]
public string BankName { get; set; }
[JsonProperty("iban")]
public string Iban { get; set; }
[JsonProperty("clientName")]
public string ClientName { get; set; }
[JsonProperty("clientSurname")]
public string ClientSurname { get; set; }
[JsonProperty("clientZipCode")]
public string ClientZipCode { get; set; }
[JsonProperty("clientCity")]
public string ClientCity { get; set; }
[JsonProperty("clientCountryId")]
public long? ClientCountryId { get; set; }
}Java
public class ClientRefundBankAccountOutputModel {
@SerializedName("bankName")
public String BankName;
@SerializedName("iban")
public String Iban;
@SerializedName("clientName")
public String ClientName;
@SerializedName("clientSurname")
public String ClientSurname;
@SerializedName("clientZipCode")
public String ClientZipCode;
@SerializedName("clientCity")
public String ClientCity;
@SerializedName("clientCountryId")
public Long ClientCountryId;
}CountryOutputModel
C#
public class CountryOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("color")]
public string Color { get; set; }
[JsonProperty("order")]
public int Order { get; set; }
[JsonProperty("phonePrefix")]
public string PhonePrefix { get; set; }
[JsonProperty("clientRegistrationSelecteble")]
public bool ClientRegistrationSelecteble { get; set; }
}Java
public class CountryOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("color")
public String Color;
@SerializedName("order")
public Integer Order;
@SerializedName("phonePrefix")
public String PhonePrefix;
@SerializedName("clientRegistrationSelecteble")
public Boolean ClientRegistrationSelecteble;
}CreatedByUserOutputModel
C#
public class CreatedByUserOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("surname")]
public string Surname { get; set; }
}Java
public class CreatedByUserOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("name")
public String Name;
@SerializedName("surname")
public String Surname;
}GenderOutputModel
C#
public class GenderOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
}Java
public class GenderOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
}InvestmentCategoryOutputModel
C#
public class InvestmentCategoryOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("availableOnlyInCountries")]
public IList<long> AvailableOnlyInCountries { get; set; }
[JsonProperty("businessLineId")]
public long BusinessLineId { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("alternativeName")]
public string AlternativeName { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class InvestmentCategoryOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("availableOnlyInCountries")
public List<Long> AvailableOnlyInCountries;
@SerializedName("businessLineId")
public Long BusinessLineId;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("alternativeName")
public String AlternativeName;
@SerializedName("description")
public String Description;
}LanguageOutputModel
C#
public class LanguageOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
}Java
public class LanguageOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
}LegalAcceptanceDescriptionOutputModel
C#
public class LegalAcceptanceDescriptionOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("languageId")]
public long LanguageId { get; set; }
[JsonProperty("title")]
public string Title { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class LegalAcceptanceDescriptionOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("languageId")
public Long LanguageId;
@SerializedName("title")
public String Title;
@SerializedName("description")
public String Description;
}LegalAcceptanceDocumentOutputModel
C#
public class LegalAcceptanceDocumentOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("languageId")]
public long LanguageId { get; set; }
[JsonProperty("reference")]
public string Reference { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("title")]
public string Title { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("contentType")]
public string ContentType { get; set; }
[JsonProperty("fileName")]
public string FileName { get; set; }
[JsonProperty("fileSize")]
public long FileSize { get; set; }
}Java
public class LegalAcceptanceDocumentOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("languageId")
public Long LanguageId;
@SerializedName("reference")
public String Reference;
@SerializedName("code")
public String Code;
@SerializedName("title")
public String Title;
@SerializedName("description")
public String Description;
@SerializedName("contentType")
public String ContentType;
@SerializedName("fileName")
public String FileName;
@SerializedName("fileSize")
public Long FileSize;
}LegalAcceptanceOutputModel
C#
public class LegalAcceptanceOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("status")]
public string Status { get; set; }
[JsonProperty("modified")]
public DateTime Modified { get; set; }
[JsonProperty("systemNote")]
public string SystemNote { get; set; }
[JsonProperty("isUpdatable")]
public bool IsUpdatable { get; set; }
[JsonProperty("descriptions")]
public IList<LegalAcceptanceDescriptionOutputModel> Descriptions { get; set; }
[JsonProperty("documents")]
public IList<LegalAcceptanceDocumentOutputModel> Documents { get; set; }
}Java
public class LegalAcceptanceOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("status")
public String Status;
@SerializedName("modified")
public String Modified;
@SerializedName("systemNote")
public String SystemNote;
@SerializedName("isUpdatable")
public Boolean IsUpdatable;
@SerializedName("descriptions")
public List<LegalAcceptanceDescriptionOutputModel> Descriptions;
@SerializedName("documents")
public List<LegalAcceptanceDocumentOutputModel> Documents;
}NationalityOutputModel
C#
public class NationalityOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("order")]
public int Order { get; set; }
[JsonProperty("isDeleted")]
public bool IsDeleted { get; set; }
}Java
public class NationalityOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("name")
public String Name;
@SerializedName("code")
public String Code;
@SerializedName("order")
public Integer Order;
@SerializedName("isDeleted")
public Boolean IsDeleted;
}PensionSituationOutputModel
C#
public class PensionSituationOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class PensionSituationOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("description")
public String Description;
}PortfolioDocumentOrderOutputModel
C#
public class PortfolioDocumentOrderOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("externalId")]
public string ExternalId { get; set; }
[JsonProperty("statusId")]
public long StatusId { get; set; }
[JsonProperty("resendingPossible")]
public bool ResendingPossible { get; set; }
[JsonProperty("orderIdResending")]
public long? OrderIdResending { get; set; }
[JsonProperty("reasonForRejection")]
public string ReasonForRejection { get; set; }
[JsonProperty("submissionErrorMessage")]
public string SubmissionErrorMessage { get; set; }
[JsonProperty("created")]
public DateTime Created { get; set; }
[JsonProperty("createdByUserName")]
public string CreatedByUserName { get; set; }
[JsonProperty("createdByUserSurname")]
public string CreatedByUserSurname { get; set; }
}Java
public class PortfolioDocumentOrderOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("externalId")
public String ExternalId;
@SerializedName("statusId")
public Long StatusId;
@SerializedName("resendingPossible")
public Boolean ResendingPossible;
@SerializedName("orderIdResending")
public Long OrderIdResending;
@SerializedName("reasonForRejection")
public String ReasonForRejection;
@SerializedName("submissionErrorMessage")
public String SubmissionErrorMessage;
@SerializedName("created")
public String Created;
@SerializedName("createdByUserName")
public String CreatedByUserName;
@SerializedName("createdByUserSurname")
public String CreatedByUserSurname;
}PortfolioDocumentOutputModel
C#
public class PortfolioDocumentOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("portfolioDocumentTypeId")]
public long PortfolioDocumentTypeId { get; set; }
[JsonProperty("reference")]
public string Reference { get; set; }
[JsonProperty("fileName")]
public string FileName { get; set; }
[JsonProperty("size")]
public long Size { get; set; }
[JsonProperty("contentType")]
public string ContentType { get; set; }
[JsonProperty("note")]
public string Note { get; set; }
[JsonProperty("created")]
public DateTime Created { get; set; }
[JsonProperty("createdByUserName")]
public string CreatedByUserName { get; set; }
[JsonProperty("createdByUserSurname")]
public string CreatedByUserSurname { get; set; }
[JsonProperty("orders")]
public IList<PortfolioDocumentOrderOutputModel> Orders { get; set; }
}Java
public class PortfolioDocumentOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("portfolioDocumentTypeId")
public Long PortfolioDocumentTypeId;
@SerializedName("reference")
public String Reference;
@SerializedName("fileName")
public String FileName;
@SerializedName("size")
public Long Size;
@SerializedName("contentType")
public String ContentType;
@SerializedName("note")
public String Note;
@SerializedName("created")
public String Created;
@SerializedName("createdByUserName")
public String CreatedByUserName;
@SerializedName("createdByUserSurname")
public String CreatedByUserSurname;
@SerializedName("orders")
public List<PortfolioDocumentOrderOutputModel> Orders;
}PortfolioExtendedPropertyOutputModel
C#
public class PortfolioExtendedPropertyOutputModel
{
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("value")]
public string Value { get; set; }
}Java
public class PortfolioExtendedPropertyOutputModel {
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("description")
public String Description;
@SerializedName("value")
public String Value;
}PortfolioFundOriginOutputModel
C#
public class PortfolioFundOriginOutputModel
{
[JsonProperty("fundOriginId")]
public long FundOriginId { get; set; }
[JsonProperty("selfDescription")]
public string SelfDescription { get; set; }
}Java
public class PortfolioFundOriginOutputModel {
@SerializedName("fundOriginId")
public Long FundOriginId;
@SerializedName("selfDescription")
public String SelfDescription;
}PortfolioModelOutputModel
C#
public class PortfolioModelOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class PortfolioModelOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("description")
public String Description;
}PortfolioOrderDetailOutputModel
C#
public class PortfolioOrderDetailOutputModel
{
[JsonProperty("securityId")]
public long SecurityId { get; set; }
[JsonProperty("currencyId")]
public long CurrencyId { get; set; }
[JsonProperty("allocation")]
public decimal Allocation { get; set; }
[JsonProperty("quantity")]
public decimal? Quantity { get; set; }
[JsonProperty("purchasePrice")]
public decimal? PurchasePrice { get; set; }
[JsonProperty("currencyExchange")]
public decimal? CurrencyExchange { get; set; }
[JsonProperty("averagePrice")]
public decimal? AveragePrice { get; set; }
[JsonProperty("closingDate")]
public DateTime? ClosingDate { get; set; }
}Java
public class PortfolioOrderDetailOutputModel {
@SerializedName("securityId")
public Long SecurityId;
@SerializedName("currencyId")
public Long CurrencyId;
@SerializedName("allocation")
public java.math.BigDecimal Allocation;
@SerializedName("quantity")
public java.math.BigDecimal Quantity;
@SerializedName("purchasePrice")
public java.math.BigDecimal PurchasePrice;
@SerializedName("currencyExchange")
public java.math.BigDecimal CurrencyExchange;
@SerializedName("averagePrice")
public java.math.BigDecimal AveragePrice;
@SerializedName("closingDate")
public String ClosingDate;
}PortfolioOrderDocumentOrderOutputModel
C#
public class PortfolioOrderDocumentOrderOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("externalId")]
public string ExternalId { get; set; }
[JsonProperty("created")]
public DateTime Created { get; set; }
[JsonProperty("deliveringDate")]
public DateTime? DeliveringDate { get; set; }
[JsonProperty("closingDate")]
public DateTime? ClosingDate { get; set; }
[JsonProperty("orderStatusId")]
public long OrderStatusId { get; set; }
[JsonProperty("orderStatusDate")]
public DateTime? OrderStatusDate { get; set; }
[JsonProperty("submissionErrorMessage")]
public string SubmissionErrorMessage { get; set; }
[JsonProperty("reasonForRejectionCode")]
public string ReasonForRejectionCode { get; set; }
[JsonProperty("reasonForRejection")]
public string ReasonForRejection { get; set; }
[JsonProperty("correlationId")]
public string CorrelationId { get; set; }
[JsonProperty("resendingPossible")]
public bool ResendingPossible { get; set; }
[JsonProperty("orderIdResending")]
public long? OrderIdResending { get; set; }
[JsonProperty("orderRawData")]
public string OrderRawData { get; set; }
[JsonProperty("createdByUser")]
public CreatedByUserOutputModel CreatedByUser { get; set; }
}Java
public class PortfolioOrderDocumentOrderOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("externalId")
public String ExternalId;
@SerializedName("created")
public String Created;
@SerializedName("deliveringDate")
public String DeliveringDate;
@SerializedName("closingDate")
public String ClosingDate;
@SerializedName("orderStatusId")
public Long OrderStatusId;
@SerializedName("orderStatusDate")
public String OrderStatusDate;
@SerializedName("submissionErrorMessage")
public String SubmissionErrorMessage;
@SerializedName("reasonForRejectionCode")
public String ReasonForRejectionCode;
@SerializedName("reasonForRejection")
public String ReasonForRejection;
@SerializedName("correlationId")
public String CorrelationId;
@SerializedName("resendingPossible")
public Boolean ResendingPossible;
@SerializedName("orderIdResending")
public Long OrderIdResending;
@SerializedName("orderRawData")
public String OrderRawData;
@SerializedName("createdByUser")
public CreatedByUserOutputModel CreatedByUser;
}PortfolioOrderDocumentOutputModel
C#
public class PortfolioOrderDocumentOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("orderId")]
public long OrderId { get; set; }
[JsonProperty("documentType")]
public string DocumentType { get; set; }
[JsonProperty("contentType")]
public string ContentType { get; set; }
[JsonProperty("reference")]
public string Reference { get; set; }
[JsonProperty("size")]
public long Size { get; set; }
[JsonProperty("portfolioOrderDocumentTypeCode")]
public string PortfolioOrderDocumentTypeCode { get; set; }
[JsonProperty("orders")]
public IList<PortfolioOrderDocumentOrderOutputModel> Orders { get; set; }
}Java
public class PortfolioOrderDocumentOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("orderId")
public Long OrderId;
@SerializedName("documentType")
public String DocumentType;
@SerializedName("contentType")
public String ContentType;
@SerializedName("reference")
public String Reference;
@SerializedName("size")
public Long Size;
@SerializedName("portfolioOrderDocumentTypeCode")
public String PortfolioOrderDocumentTypeCode;
@SerializedName("orders")
public List<PortfolioOrderDocumentOrderOutputModel> Orders;
}PortfolioOrderExtendedPropertyOutputModel
C#
public class PortfolioOrderExtendedPropertyOutputModel
{
[JsonProperty("userPortfolioOrderId")]
public long UserPortfolioOrderId { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("value")]
public string Value { get; set; }
}Java
public class PortfolioOrderExtendedPropertyOutputModel {
@SerializedName("userPortfolioOrderId")
public Long UserPortfolioOrderId;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("description")
public String Description;
@SerializedName("value")
public String Value;
}PortfolioOrderOutputModel
C#
public class PortfolioOrderOutputModel
{
[JsonProperty("portfolioId")]
public long PortfolioId { get; set; }
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("externalId")]
public string ExternalId { get; set; }
[JsonProperty("proposalId")]
public long ProposalId { get; set; }
[JsonProperty("created")]
public DateTime Created { get; set; }
[JsonProperty("deliveringDate")]
public DateTime? DeliveringDate { get; set; }
[JsonProperty("closingDate")]
public DateTime? ClosingDate { get; set; }
[JsonProperty("orderStatusId")]
public long OrderStatusId { get; set; }
[JsonProperty("orderStatusDate")]
public DateTime? OrderStatusDate { get; set; }
[JsonProperty("orderTypeId")]
public long OrderTypeId { get; set; }
[JsonProperty("orderIdToFixOrRevoke")]
public long? OrderIdToFixOrRevoke { get; set; }
[JsonProperty("submissionErrorMessage")]
public string SubmissionErrorMessage { get; set; }
[JsonProperty("reasonForRejectionCode")]
public string ReasonForRejectionCode { get; set; }
[JsonProperty("reasonForRejection")]
public string ReasonForRejection { get; set; }
[JsonProperty("correlationId")]
public string CorrelationId { get; set; }
[JsonProperty("resendingPossible")]
public bool ResendingPossible { get; set; }
[JsonProperty("userPortfolioOrderIdResending")]
public long? UserPortfolioOrderIdResending { get; set; }
[JsonProperty("orderRawData")]
public string OrderRawData { get; set; }
[JsonProperty("scheduledRecurringOrderId")]
public long? ScheduledRecurringOrderId { get; set; }
[JsonProperty("createdByUser")]
public CreatedByUserOutputModel CreatedByUser { get; set; }
[JsonProperty("portfolioOrderReasonToChangeProposal")]
public PortfolioOrderReasonToChangeProposalOutModel PortfolioOrderReasonToChangeProposal { get; set; }
[JsonProperty("extendedProperties")]
public ICollection<PortfolioOrderExtendedPropertyOutputModel> ExtendedProperties { get; set; }
[JsonProperty("documents")]
public ICollection<PortfolioOrderDocumentOutputModel> Documents { get; set; }
[JsonProperty("details")]
public ICollection<PortfolioOrderDetailOutputModel> Details { get; set; }
}Java
public class PortfolioOrderOutputModel {
@SerializedName("portfolioId")
public Long PortfolioId;
@SerializedName("id")
public Long Id;
@SerializedName("externalId")
public String ExternalId;
@SerializedName("proposalId")
public Long ProposalId;
@SerializedName("created")
public String Created;
@SerializedName("deliveringDate")
public String DeliveringDate;
@SerializedName("closingDate")
public String ClosingDate;
@SerializedName("orderStatusId")
public Long OrderStatusId;
@SerializedName("orderStatusDate")
public String OrderStatusDate;
@SerializedName("orderTypeId")
public Long OrderTypeId;
@SerializedName("orderIdToFixOrRevoke")
public Long OrderIdToFixOrRevoke;
@SerializedName("submissionErrorMessage")
public String SubmissionErrorMessage;
@SerializedName("reasonForRejectionCode")
public String ReasonForRejectionCode;
@SerializedName("reasonForRejection")
public String ReasonForRejection;
@SerializedName("correlationId")
public String CorrelationId;
@SerializedName("resendingPossible")
public Boolean ResendingPossible;
@SerializedName("userPortfolioOrderIdResending")
public Long UserPortfolioOrderIdResending;
@SerializedName("orderRawData")
public String OrderRawData;
@SerializedName("scheduledRecurringOrderId")
public Long ScheduledRecurringOrderId;
@SerializedName("createdByUser")
public CreatedByUserOutputModel CreatedByUser;
@SerializedName("portfolioOrderReasonToChangeProposal")
public PortfolioOrderReasonToChangeProposalOutModel PortfolioOrderReasonToChangeProposal;
@SerializedName("extendedProperties")
public List<PortfolioOrderExtendedPropertyOutputModel> ExtendedProperties;
@SerializedName("documents")
public List<PortfolioOrderDocumentOutputModel> Documents;
@SerializedName("details")
public List<PortfolioOrderDetailOutputModel> Details;
}PortfolioOrderReasonToChangeProposalOutModel
C#
public class PortfolioOrderReasonToChangeProposalOutModel
{
[JsonProperty("reasonToChangeProposalId")]
public long ReasonToChangeProposalId { get; set; }
[JsonProperty("responseIds")]
public IList<long> ResponseIds { get; set; }
}Java
public class PortfolioOrderReasonToChangeProposalOutModel {
@SerializedName("reasonToChangeProposalId")
public Long ReasonToChangeProposalId;
@SerializedName("responseIds")
public List<Long> ResponseIds;
}PortfolioOutputModel
C#
public class PortfolioOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("externalId")]
public string ExternalId { get; set; }
[JsonProperty("accountHoldingInstitutionId")]
public long AccountHoldingInstitutionId { get; set; }
[JsonProperty("investmentCategoryId")]
public long InvestmentCategoryId { get; set; }
[JsonProperty("userId")]
public long UserId { get; set; }
[JsonProperty("proposalId")]
public long ProposalId { get; set; }
[JsonProperty("depositNumber")]
public string DepositNumber { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("systemName")]
public string SystemName { get; set; }
[JsonProperty("currencyId")]
public long CurrencyId { get; set; }
[JsonProperty("color")]
public string Color { get; set; }
[JsonProperty("isTrading")]
public bool IsTrading { get; set; }
[JsonProperty("hasPendingOrder")]
public bool HasPendingOrder { get; set; }
[JsonProperty("lastOrderStatusId")]
public long LastOrderStatusId { get; set; }
[JsonProperty("statusId")]
public long StatusId { get; set; }
[JsonProperty("creationDate")]
public DateTime CreationDate { get; set; }
[JsonProperty("acceptanceDate")]
public DateTime? AcceptanceDate { get; set; }
[JsonProperty("closingRequestDate")]
public DateTime? ClosingRequestDate { get; set; }
[JsonProperty("inClosingSinceDate")]
public DateTime? InClosingSinceDate { get; set; }
[JsonProperty("closingDate")]
public DateTime? ClosingDate { get; set; }
[JsonProperty("isDeleted")]
public bool IsDeleted { get; set; }
[JsonProperty("investedAmount")]
public decimal? InvestedAmount { get; set; }
[JsonProperty("total")]
public decimal? Total { get; set; }
[JsonProperty("marketValue")]
public decimal? MarketValue { get; set; }
[JsonProperty("profitOrLost")]
public decimal? ProfitOrLost { get; set; }
[JsonProperty("performanceSinceInception")]
public decimal? PerformanceSinceInception { get; set; }
[JsonProperty("performanceYearToDate")]
public decimal? PerformanceYearToDate { get; set; }
[JsonProperty("portfolioValueDate")]
public DateTime? PortfolioValueDate { get; set; }
[JsonProperty("correlationId")]
public string CorrelationId { get; set; }
[JsonProperty("iban")]
public string Iban { get; set; }
[JsonProperty("userExternalIdId")]
public long? UserExternalIdId { get; set; }
[JsonProperty("fee")]
public decimal Fee { get; set; }
[JsonProperty("extendedProperties")]
public IList<PortfolioExtendedPropertyOutputModel> ExtendedProperties { get; set; }
[JsonProperty("positions")]
public IList<PortfolioPositionOutputModel> Positions { get; set; }
[JsonProperty("orders")]
public IList<PortfolioOrderOutputModel> Orders { get; set; }
[JsonProperty("fundOrigins")]
public IList<PortfolioFundOriginOutputModel> FundOrigins { get; set; }
[JsonProperty("documents")]
public IList<PortfolioDocumentOutputModel> Documents { get; set; }
}Java
public class PortfolioOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("externalId")
public String ExternalId;
@SerializedName("accountHoldingInstitutionId")
public Long AccountHoldingInstitutionId;
@SerializedName("investmentCategoryId")
public Long InvestmentCategoryId;
@SerializedName("userId")
public Long UserId;
@SerializedName("proposalId")
public Long ProposalId;
@SerializedName("depositNumber")
public String DepositNumber;
@SerializedName("name")
public String Name;
@SerializedName("systemName")
public String SystemName;
@SerializedName("currencyId")
public Long CurrencyId;
@SerializedName("color")
public String Color;
@SerializedName("isTrading")
public Boolean IsTrading;
@SerializedName("hasPendingOrder")
public Boolean HasPendingOrder;
@SerializedName("lastOrderStatusId")
public Long LastOrderStatusId;
@SerializedName("statusId")
public Long StatusId;
@SerializedName("creationDate")
public String CreationDate;
@SerializedName("acceptanceDate")
public String AcceptanceDate;
@SerializedName("closingRequestDate")
public String ClosingRequestDate;
@SerializedName("inClosingSinceDate")
public String InClosingSinceDate;
@SerializedName("closingDate")
public String ClosingDate;
@SerializedName("isDeleted")
public Boolean IsDeleted;
@SerializedName("investedAmount")
public java.math.BigDecimal InvestedAmount;
@SerializedName("total")
public java.math.BigDecimal Total;
@SerializedName("marketValue")
public java.math.BigDecimal MarketValue;
@SerializedName("profitOrLost")
public java.math.BigDecimal ProfitOrLost;
@SerializedName("performanceSinceInception")
public java.math.BigDecimal PerformanceSinceInception;
@SerializedName("performanceYearToDate")
public java.math.BigDecimal PerformanceYearToDate;
@SerializedName("portfolioValueDate")
public String PortfolioValueDate;
@SerializedName("correlationId")
public String CorrelationId;
@SerializedName("iban")
public String Iban;
@SerializedName("userExternalIdId")
public Long UserExternalIdId;
@SerializedName("fee")
public java.math.BigDecimal Fee;
@SerializedName("extendedProperties")
public List<PortfolioExtendedPropertyOutputModel> ExtendedProperties;
@SerializedName("positions")
public List<PortfolioPositionOutputModel> Positions;
@SerializedName("orders")
public List<PortfolioOrderOutputModel> Orders;
@SerializedName("fundOrigins")
public List<PortfolioFundOriginOutputModel> FundOrigins;
@SerializedName("documents")
public List<PortfolioDocumentOutputModel> Documents;
}PortfolioPositionOutputModel
C#
public class PortfolioPositionOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("allocation")]
public decimal Allocation { get; set; }
[JsonProperty("quantity")]
public decimal Quantity { get; set; }
[JsonProperty("price")]
public decimal Price { get; set; }
[JsonProperty("priceInChf")]
public decimal PriceInChf { get; set; }
[JsonProperty("performance")]
public decimal Performance { get; set; }
[JsonProperty("date")]
public DateTime Date { get; set; }
[JsonProperty("currencyId")]
public long CurrencyId { get; set; }
[JsonProperty("securityId")]
public long SecurityId { get; set; }
}Java
public class PortfolioPositionOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("allocation")
public java.math.BigDecimal Allocation;
@SerializedName("quantity")
public java.math.BigDecimal Quantity;
@SerializedName("price")
public java.math.BigDecimal Price;
@SerializedName("priceInChf")
public java.math.BigDecimal PriceInChf;
@SerializedName("performance")
public java.math.BigDecimal Performance;
@SerializedName("date")
public String Date;
@SerializedName("currencyId")
public Long CurrencyId;
@SerializedName("securityId")
public Long SecurityId;
}PortfolioValueOutputModel
C#
public class PortfolioValueOutputModel
{
[JsonProperty("date")]
public DateTime Date { get; set; }
[JsonProperty("performanceSinceInception")]
public decimal PerformanceSinceInception { get; set; }
[JsonProperty("performanceYearToDate")]
public decimal PerformanceYearToDate { get; set; }
[JsonProperty("profitOrLost")]
public decimal ProfitOrLost { get; set; }
[JsonProperty("portfolioMarketValue")]
public decimal PortfolioMarketValue { get; set; }
[JsonProperty("cashAmount")]
public decimal CashAmount { get; set; }
[JsonProperty("portfolioTotalAssets")]
public decimal PortfolioTotalAssets { get; set; }
}Java
public class PortfolioValueOutputModel {
@SerializedName("date")
public String Date;
@SerializedName("performanceSinceInception")
public java.math.BigDecimal PerformanceSinceInception;
@SerializedName("performanceYearToDate")
public java.math.BigDecimal PerformanceYearToDate;
@SerializedName("profitOrLost")
public java.math.BigDecimal ProfitOrLost;
@SerializedName("portfolioMarketValue")
public java.math.BigDecimal PortfolioMarketValue;
@SerializedName("cashAmount")
public java.math.BigDecimal CashAmount;
@SerializedName("portfolioTotalAssets")
public java.math.BigDecimal PortfolioTotalAssets;
}PortfolioValuesContainerOutputModel
C#
public class PortfolioValuesContainerOutputModel
{
[JsonProperty("portfolioId")]
public long PortfolioId { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("color")]
public string Color { get; set; }
[JsonProperty("values")]
public IList<PortfolioValueOutputModel> Values { get; set; }
}Java
public class PortfolioValuesContainerOutputModel {
@SerializedName("portfolioId")
public Long PortfolioId;
@SerializedName("name")
public String Name;
@SerializedName("color")
public String Color;
@SerializedName("values")
public List<PortfolioValueOutputModel> Values;
}ProposalManagementCostOutputModel
C#
public class ProposalManagementCostOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("proposalId")]
public long ProposalId { get; set; }
[JsonProperty("accountHoldingInstitutionId")]
public long AccountHoldingInstitutionId { get; set; }
[JsonProperty("investmentCategoryId")]
public long InvestmentCategoryId { get; set; }
[JsonProperty("upTo")]
public decimal UpTo { get; set; }
[JsonProperty("cost")]
public decimal Cost { get; set; }
}Java
public class ProposalManagementCostOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("proposalId")
public Long ProposalId;
@SerializedName("accountHoldingInstitutionId")
public Long AccountHoldingInstitutionId;
@SerializedName("investmentCategoryId")
public Long InvestmentCategoryId;
@SerializedName("upTo")
public java.math.BigDecimal UpTo;
@SerializedName("cost")
public java.math.BigDecimal Cost;
}ProposalOutputModel
C#
public class ProposalOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("investmentCategoryIds")]
public IList<long> InvestmentCategoryIds { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("color")]
public string Color { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("riskCategorizationId")]
public long RiskCategorizationId { get; set; }
[JsonProperty("isDeleted")]
public bool IsDeleted { get; set; }
[JsonProperty("order")]
public int Order { get; set; }
[JsonProperty("volatility")]
public decimal Volatility { get; set; }
[JsonProperty("expectedReturn")]
public decimal ExpectedReturn { get; set; }
[JsonProperty("sharpeRatio")]
public decimal? SharpeRatio { get; set; }
[JsonProperty("eSGScore")]
public decimal? ESGScore { get; set; }
[JsonProperty("eSGRating")]
public string ESGRating { get; set; }
[JsonProperty("cO2Intensity")]
public decimal? CO2Intensity { get; set; }
[JsonProperty("probabilityGain")]
public decimal? ProbabilityGain { get; set; }
[JsonProperty("probabilityLoss")]
public decimal? ProbabilityLoss { get; set; }
[JsonProperty("portfolioModel")]
public PortfolioModelOutputModel PortfolioModel { get; set; }
[JsonProperty("positions")]
public IList<ProposalPositionOutputModel> Positions { get; set; }
[JsonProperty("proposalManagementCosts")]
public IList<ProposalManagementCostOutputModel> ProposalManagementCosts { get; set; }
}Java
public class ProposalOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("investmentCategoryIds")
public List<Long> InvestmentCategoryIds;
@SerializedName("name")
public String Name;
@SerializedName("description")
public String Description;
@SerializedName("color")
public String Color;
@SerializedName("code")
public String Code;
@SerializedName("riskCategorizationId")
public Long RiskCategorizationId;
@SerializedName("isDeleted")
public Boolean IsDeleted;
@SerializedName("order")
public Integer Order;
@SerializedName("volatility")
public java.math.BigDecimal Volatility;
@SerializedName("expectedReturn")
public java.math.BigDecimal ExpectedReturn;
@SerializedName("sharpeRatio")
public java.math.BigDecimal SharpeRatio;
@SerializedName("eSGScore")
public java.math.BigDecimal ESGScore;
@SerializedName("eSGRating")
public String ESGRating;
@SerializedName("cO2Intensity")
public java.math.BigDecimal CO2Intensity;
@SerializedName("probabilityGain")
public java.math.BigDecimal ProbabilityGain;
@SerializedName("probabilityLoss")
public java.math.BigDecimal ProbabilityLoss;
@SerializedName("portfolioModel")
public PortfolioModelOutputModel PortfolioModel;
@SerializedName("positions")
public List<ProposalPositionOutputModel> Positions;
@SerializedName("proposalManagementCosts")
public List<ProposalManagementCostOutputModel> ProposalManagementCosts;
}ProposalPositionOutputModel
C#
public class ProposalPositionOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("allocation")]
public decimal Allocation { get; set; }
[JsonProperty("price")]
public decimal? Price { get; set; }
[JsonProperty("priceDate")]
public DateTime? PriceDate { get; set; }
[JsonProperty("currencyId")]
public long CurrencyId { get; set; }
[JsonProperty("securityId")]
public long SecurityId { get; set; }
[JsonProperty("order")]
public long Order { get; set; }
}Java
public class ProposalPositionOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("allocation")
public java.math.BigDecimal Allocation;
@SerializedName("price")
public java.math.BigDecimal Price;
@SerializedName("priceDate")
public String PriceDate;
@SerializedName("currencyId")
public Long CurrencyId;
@SerializedName("securityId")
public Long SecurityId;
@SerializedName("order")
public Long Order;
}QuestionnaireOutputModel
C#
public class QuestionnaireOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("businessLineIds")]
public IList<long> BusinessLineIds { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("isDeleted")]
public bool IsDeleted { get; set; }
[JsonProperty("sections")]
public IList<QuestionnaireSectionOutputModel> Sections { get; set; }
}Java
public class QuestionnaireOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("businessLineIds")
public List<Long> BusinessLineIds;
@SerializedName("code")
public String Code;
@SerializedName("description")
public String Description;
@SerializedName("isDeleted")
public Boolean IsDeleted;
@SerializedName("sections")
public List<QuestionnaireSectionOutputModel> Sections;
}QuestionnaireQuestionOutputModel
C#
public class QuestionnaireQuestionOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("order")]
public int Order { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("responses")]
public IList<QuestionnaireResponseOutputModel> Responses { get; set; }
}Java
public class QuestionnaireQuestionOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("description")
public String Description;
@SerializedName("order")
public Integer Order;
@SerializedName("code")
public String Code;
@SerializedName("responses")
public List<QuestionnaireResponseOutputModel> Responses;
}QuestionnaireResponseOutputModel
C#
public class QuestionnaireResponseOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("score")]
public decimal Score { get; set; }
[JsonProperty("order")]
public int Order { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("minValue")]
public decimal? MinValue { get; set; }
[JsonProperty("maxValue")]
public decimal? MaxValue { get; set; }
}Java
public class QuestionnaireResponseOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("description")
public String Description;
@SerializedName("score")
public java.math.BigDecimal Score;
@SerializedName("order")
public Integer Order;
@SerializedName("code")
public String Code;
@SerializedName("minValue")
public java.math.BigDecimal MinValue;
@SerializedName("maxValue")
public java.math.BigDecimal MaxValue;
}QuestionnaireSectionOutputModel
C#
public class QuestionnaireSectionOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("order")]
public int Order { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("questions")]
public IList<QuestionnaireQuestionOutputModel> Questions { get; set; }
}Java
public class QuestionnaireSectionOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("description")
public String Description;
@SerializedName("order")
public Integer Order;
@SerializedName("code")
public String Code;
@SerializedName("questions")
public List<QuestionnaireQuestionOutputModel> Questions;
}ReasonToChangeProposalOutputModel
C#
public class ReasonToChangeProposalOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("isDeleted")]
public bool IsDeleted { get; set; }
[JsonProperty("responses")]
public IList<ReasonToChangeProposalResponseOutputModel> Responses { get; set; }
}Java
public class ReasonToChangeProposalOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("isDeleted")
public Boolean IsDeleted;
@SerializedName("responses")
public List<ReasonToChangeProposalResponseOutputModel> Responses;
}ReasonToChangeProposalResponseOutputModel
C#
public class ReasonToChangeProposalResponseOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("order")]
public int Order { get; set; }
}Java
public class ReasonToChangeProposalResponseOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("description")
public String Description;
@SerializedName("order")
public Integer Order;
}RegistrationFirstFactorOutputModel
C#
public class RegistrationFirstFactorOutputModel
{
[JsonProperty("accountNumber")]
public string AccountNumber { get; set; }
[JsonProperty("validUntil")]
public DateTime ValidUntil { get; set; }
[JsonProperty("token")]
public string Token { get; set; }
}Java
public class RegistrationFirstFactorOutputModel {
@SerializedName("accountNumber")
public String AccountNumber;
@SerializedName("validUntil")
public String ValidUntil;
@SerializedName("token")
public String Token;
}RegistrationSecondFactorOutputModel
C#
public class RegistrationSecondFactorOutputModel
{
[JsonProperty("accountNumber")]
public string AccountNumber { get; set; }
[JsonProperty("validUntil")]
public DateTime ValidUntil { get; set; }
[JsonProperty("token")]
public string Token { get; set; }
}Java
public class RegistrationSecondFactorOutputModel {
@SerializedName("accountNumber")
public String AccountNumber;
@SerializedName("validUntil")
public String ValidUntil;
@SerializedName("token")
public String Token;
}RegistrationThirdFactorOutputModel
C#
public class RegistrationThirdFactorOutputModel
{
[JsonProperty("userId")]
public long UserId { get; set; }
[JsonProperty("accountNumber")]
public string AccountNumber { get; set; }
[JsonProperty("accessToken")]
public string AccessToken { get; set; }
[JsonProperty("validUntil")]
public DateTime ValidUntil { get; set; }
[JsonProperty("refreshToken")]
public string RefreshToken { get; set; }
}Java
public class RegistrationThirdFactorOutputModel {
@SerializedName("userId")
public Long UserId;
@SerializedName("accountNumber")
public String AccountNumber;
@SerializedName("accessToken")
public String AccessToken;
@SerializedName("validUntil")
public String ValidUntil;
@SerializedName("refreshToken")
public String RefreshToken;
}RiskCategorizationOutputModel
C#
public class RiskCategorizationOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("businessLineIds")]
public IList<long> BusinessLineIds { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("profileName")]
public string ProfileName { get; set; }
[JsonProperty("profileDescription")]
public string ProfileDescription { get; set; }
[JsonProperty("strategyName")]
public string StrategyName { get; set; }
[JsonProperty("strategyDescription")]
public string StrategyDescription { get; set; }
[JsonProperty("timeHorizon")]
public int TimeHorizon { get; set; }
[JsonProperty("timeHorizonDescription")]
public string TimeHorizonDescription { get; set; }
[JsonProperty("riskyAssets")]
public int RiskyAssets { get; set; }
[JsonProperty("lessRiskyAssets")]
public int LessRiskyAssets { get; set; }
[JsonProperty("alternativeNickName")]
public string AlternativeNickName { get; set; }
[JsonProperty("alternativeName")]
public string AlternativeName { get; set; }
[JsonProperty("alternativeDescription")]
public string AlternativeDescription { get; set; }
}Java
public class RiskCategorizationOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("businessLineIds")
public List<Long> BusinessLineIds;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("description")
public String Description;
@SerializedName("profileName")
public String ProfileName;
@SerializedName("profileDescription")
public String ProfileDescription;
@SerializedName("strategyName")
public String StrategyName;
@SerializedName("strategyDescription")
public String StrategyDescription;
@SerializedName("timeHorizon")
public Integer TimeHorizon;
@SerializedName("timeHorizonDescription")
public String TimeHorizonDescription;
@SerializedName("riskyAssets")
public Integer RiskyAssets;
@SerializedName("lessRiskyAssets")
public Integer LessRiskyAssets;
@SerializedName("alternativeNickName")
public String AlternativeNickName;
@SerializedName("alternativeName")
public String AlternativeName;
@SerializedName("alternativeDescription")
public String AlternativeDescription;
}RoleOutputModel
C#
public class RoleOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class RoleOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("description")
public String Description;
}SystemOccurrenceOutputModel
C#
public class SystemOccurrenceOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("systemOccurrenceCategoryId")]
public long SystemOccurrenceCategoryId { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class SystemOccurrenceOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("systemOccurrenceCategoryId")
public Long SystemOccurrenceCategoryId;
@SerializedName("code")
public String Code;
@SerializedName("name")
public String Name;
@SerializedName("description")
public String Description;
}SystemOccurrencePreferenceInputModel
C#
public class SystemOccurrencePreferenceInputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("isEmailEnabled")]
public bool IsEmailEnabled { get; set; }
[JsonProperty("isSmsEnabled")]
public bool IsSmsEnabled { get; set; }
[JsonProperty("isHttpEnabled")]
public bool IsHttpEnabled { get; set; }
}Java
public class SystemOccurrencePreferenceInputModel {
@SerializedName("id")
public Long Id;
@SerializedName("isEmailEnabled")
public Boolean IsEmailEnabled;
@SerializedName("isSmsEnabled")
public Boolean IsSmsEnabled;
@SerializedName("isHttpEnabled")
public Boolean IsHttpEnabled;
}TaxLiabilityOutputModel
C#
public class TaxLiabilityOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("code")]
public string Code { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
}Java
public class TaxLiabilityOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("code")
public String Code;
@SerializedName("description")
public String Description;
}UserBankDocumentInfoOutputModel
C#
public class UserBankDocumentInfoOutputModel
{
[JsonProperty("id")]
public long Id { get; set; }
[JsonProperty("userPortfolioId")]
public long UserPortfolioId { get; set; }
[JsonProperty("documentTypeId")]
public long DocumentTypeId { get; set; }
[JsonProperty("documentTypeCode")]
public string DocumentTypeCode { get; set; }
[JsonProperty("description")]
public string Description { get; set; }
[JsonProperty("reference")]
public string Reference { get; set; }
[JsonProperty("created")]
public DateTime Created { get; set; }
[JsonProperty("viewed")]
public DateTime? Viewed { get; set; }
[JsonProperty("downloaded")]
public DateTime Downloaded { get; set; }
}Java
public class UserBankDocumentInfoOutputModel {
@SerializedName("id")
public Long Id;
@SerializedName("userPortfolioId")
public Long UserPortfolioId;
@SerializedName("documentTypeId")
public Long DocumentTypeId;
@SerializedName("documentTypeCode")
public String DocumentTypeCode;
@SerializedName("description")
public String Description;
@SerializedName("reference")
public String Reference;
@SerializedName("created")
public String Created;
@SerializedName("viewed")
public String Viewed;
@SerializedName("downloaded")
public String Downloaded;
}ValidationErrorModel
C#
public class ValidationErrorModel
{
[JsonProperty("traceIdentifier")]
public string TraceIdentifier { get; set; }
[JsonProperty("errorCode")]
public string ErrorCode { get; set; }
[JsonProperty("message")]
public string Message { get; set; }
[JsonProperty("stackTrace")]
public string StackTrace { get; set; }
[JsonProperty("validationErrors")]
public IDictionary<string,IList<ValidationResultEntryModel>> ValidationErrors { get; set; }
}Java
public class ValidationErrorModel {
@SerializedName("traceIdentifier")
public String TraceIdentifier;
@SerializedName("errorCode")
public String ErrorCode;
@SerializedName("message")
public String Message;
@SerializedName("stackTrace")
public String StackTrace;
@SerializedName("validationErrors")
public Map<String, List<ValidationResultEntryModel>> ValidationErrors;
}ValidationResultEntryModel
C#
public class ValidationResultEntryModel
{
[JsonProperty("validationErrorCode")]
public string ValidationErrorCode { get; set; }
[JsonProperty("validationErrorMessage")]
public string ValidationErrorMessage { get; set; }
}Java
public class ValidationResultEntryModel {
@SerializedName("validationErrorCode")
public String ValidationErrorCode;
@SerializedName("validationErrorMessage")
public String ValidationErrorMessage;
}Fehlerbehandlung
Die Beispiele zeigen typische Antwortstrukturen. Prüfen Sie den Statuscode, bevor Sie ein Erfolgs-DTO deserialisieren. Bei Middleware-Fehlern kann der Payload fehlen oder eine andere Struktur haben.
Authentifizierungsfehler
{
"ErrorCode": "string",
"Message": "string",
"RemainingAttempts": 2
}
Ungültige Anfrage (Bad Request)
{
"ErrorCode": "VALIDATION-ERRORS",
"Message": "Request contains invalid fields.",
"ValidationErrors": {
"Name": [
{"ValidationErrorCode": "INVALID-FIELD", "ValidationErrorMessage": "Name is too short"}
]
}
}
{
"ErrorCode": "string",
"Message": "string",
"ValidationErrors": null
}
Die folgende administrative Registrierungsanfrage ist absichtlich unvollständig und enthält einen zu kurzen Name-Wert. Die konkreten Fehlermeldungen hängen vom Endpunkt und von der Sprache ab:
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", adminToken);
var payload = JsonConvert.SerializeObject(new { Name = "A", Surname = "Example" });
using var response = await httpClient.PostAsync("api/v1/users", new StringContent(payload, Encoding.UTF8, "application/json"));
if (response.StatusCode == HttpStatusCode.BadRequest)
{
var errorContent = await response.Content.ReadAsStringAsync();
var error = JsonConvert.DeserializeObject<ValidationErrorModel>(errorContent);
// Present the errors to the caller; do not decode a ClientOutputModel.
}
else
{
response.EnsureSuccessStatusCode();
}
JsonObject payload = new JsonObject();
payload.addProperty("Name", "A");
payload.addProperty("Surname", "Example");
HttpRequest request = HttpRequest.newBuilder()
.timeout(Duration.ofMinutes(1))
.uri(Settings.wmsUri("users"))
.header("Accept-Language", "de-DE")
.header("Authorization", "Bearer " + Settings.ADMIN_TOKEN)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(payload.toString()))
.build();
var response = httpClient.send(request, BodyHandlers.ofString());
if (response.statusCode() == 400) {
// Handle the error without logging personal data or tokens.
ValidationErrorModel errorsObj = new Gson().fromJson(response.body(), ValidationErrorModel.class);
// Present field errors to the caller.
} else {
Api.requireSuccess(response);
}
{
"ErrorCode":"VALIDATION-ERRORS",
"Message":"Request contains one or more invalid fields.",
"ValidationErrors":
{
"GenderId":[{"ValidationErrorCode":"INVALID-FIELD","ValidationErrorMessage":"Gender ID is mandatory"}],
"Name":[{"ValidationErrorCode":"INVALID-FIELD","ValidationErrorMessage":"Customer name is too short"}],
"Surname":[{"ValidationErrorCode":"INVALID-FIELD","ValidationErrorMessage":"Surname is invalid"}]
}
}
Diese Anfrage nach Dokumentmetadaten verwendet absichtlich ein ungültiges starting-from-Datum. Das erforderliche Abfrageformat ist yyyyMMdd:
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
using var response = await httpClient.GetAsync(
$"api/v1/user-bank-documents/user-id/{userId}/list?starting-from=not-a-date");
if (response.StatusCode == HttpStatusCode.BadRequest)
{
var errorContent = await response.Content.ReadAsStringAsync();
var error = JsonConvert.DeserializeObject<ValidationErrorModel>(errorContent);
// A generic error can have null ValidationErrors. Inspect ErrorCode and Message.
}
else
{
response.EnsureSuccessStatusCode();
}
{
"ErrorCode":"INVALID-DATE-FORMAT",
"Message":"Invalid date format.",
"ValidationErrors": null
}
Weitere Fehler
{
"ErrorCode": "string",
"Message": "string"
}
Seiteneinteilung
- pageNumber
- pageSize (wird verwendet, wenn pageNumber angegeben ist)
- totalCount
- currentPage
- pageSize
- totalPages
- previousPageLink
- nextPageLink