Introduzione
Inizia qui: il percorso del cliente
Segui un cliente nei passaggi seguenti. Scegli C# o Java e mantieni lo stesso linguaggio. Ogni blocco è una procedura di questo percorso, non un programma autonomo.
- Registra il cliente: segui l’autoregistrazione con un token GUEST. La registrazione amministrativa è un’alternativa.
- Accedi: ottieni la coppia di token CLIENT e conserva userId. La registrazione può già fornire questa coppia; accedi nuovamente se necessario.
- Calcola il rischio e scegli una proposta: conserva la linea di attività, la categoria, gli ID delle risposte e il proposalId scelto.
- Apri il portafoglio: salva il questionario, completa i dati, prepara il contratto PDF e invia l’ordine di apertura. Conserva orderId e portfolioId, quindi monitora l’ordine.
- Consulta il portafoglio: recupera lo snapshot attuale, i valori, i conti di liquidità e i documenti quando diventano disponibili.
- Cambia la strategia: scegli una proposta ammissibile, prepara il contratto e invia un ordine di modifica.
Usa Modifica dei dati del cliente quando cambiano le informazioni. Notifiche è un’integrazione amministrativa separata. Scenari di simulazione contiene scenari di sviluppo opzionali.
Checklist di configurazione
- Ottieni l’indirizzo base WMS e un token GUEST. Dopo l’autenticazione usa un token CLIENT. Gli esempi amministrativi specificano il ruolo richiesto.
- C#: usa .NET 9 e installa Newtonsoft.Json con
dotnet add package Newtonsoft.Json, quindi copia gli import e GuideHttp indicati sotto. - Java: usa Java 21 o successivo e aggiungi Gson (coordinate Maven
com.google.code.gson:gson) nella build. Copia gli import, Settings, Api e MultiPartBodyPublisher indicati sotto. Imposta WMS_BASE_URL con l’indirizzo base senza /api/v1 e valorizza WMS_GUEST_TOKEN. I token amministrativi servono soltanto per le procedure amministrative. - Inizializza il client HTTP una sola volta, copia i DTO necessari e raccogli i dati indicati. In C#, httpClient.BaseAddress è l’indirizzo base terminato da una barra; gli esempi aggiungono api/v1.
Quando un esempio usa un tipo personalizzato, consulta gli helper e il catalogo DTO in questa pagina. I blocchi dispongono di un pulsante per copiare il codice.
Destinatari
API
Prerequisiti
Authorization: Bearer <access-token>
Client HTTP
Il selettore cambia soltanto la lingua della guida. Gli esempi mantengono Accept-Language: de-DE e i codici di lingua della versione inglese. Per risposte o un profilo cliente in una lingua diversa, consulta i riferimenti delle lingue supportate e configura separatamente Accept-Language e la lingua del cliente.
// 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);
Utilizzo degli esempi
Passaggio dei valori tra capitoli
Lo stesso valore funzionale può avere nomi diversi nei due linguaggi. Conserva questi valori nel contesto del cliente; cambiare capitolo non li azzera. Riutilizzare un nome locale come response sostituisce il risultato della richiesta, non il contesto salvato.
| Valore | Esempi C# | Esempi Java |
|---|---|---|
| Identità del cliente e sessione | userId, accessToken, refreshToken, validUntil | userId, accessToken, refreshToken, validUntil |
| Riferimenti del prodotto | businessLineVorsorge.Id, investmentCategory3A.Id | businessLineId, investmentCategoryId |
| Risposte al questionario e rischio | responseIds, risk | responseIds, riskCategorizationObj |
| Proposta scelta per l’apertura | proposalSelectedByUser.Id | proposalSelectedByUser.Id (selezionato tramite proposalId) |
| Contratto completo per l’apertura | pdfContractAsByteArray | contractPath, percorso del PDF completo |
| Risultato dell’apertura | orderId, portfolioId | orderId, portfolioId |
| Scelta della strategia e ordine di modifica | selectedProposalId, modificationOrderId | selectedProposalId, modificationOrderId |
Gli identificativi provengono dalle chiamate di riferimento o dalle richieste precedenti. I numeri negli esempi JSON sono illustrativi; non usarli mai come ID reali. Nelle notifiche amministrative adminUserId identifica il destinatario ed è distinto dal userId del cliente.
Import C#
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;
Import Java
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;
}
Catalogo del codice sorgente dei DTO
Queste classi client espongono tutte le proprietà pubbliche dei modelli utilizzati, comprese quelle ereditate. Gli attributi di validazione server e le classi base vuote sono omessi. I nomi JSON sono espliciti. Usa gli import precedenti; aggiungi System.Collections.Generic in C# e java.util.List / java.util.Map in Java. Java usa wrapper che possono essere null e stringhe di date ISO. Le date nei parametri rimangono in yyyyMMdd; le date JSON senza ora sono in yyyy-MM-dd. Queste definizioni descrivono i dati; l’endpoint determina i campi necessari per le scritture.
Apri un modello per vedere e copiare la definizione C# o Java. Definisci ogni classe una sola volta: usa la definizione del catalogo anziché una seconda definizione da un esempio precedente.
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;
}Gestione degli errori
Gli esempi mostrano strutture comuni. Verifica lo stato prima di deserializzare un DTO di successo; un errore del middleware può avere un payload vuoto o diverso.
Errori di autenticazione
{
"ErrorCode": "string",
"Message": "string",
"RemainingAttempts": 2
}
Richiesta non valida (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
}
Questa richiesta amministrativa è intenzionalmente incompleta e il suo Name è troppo corto. I messaggi esatti dipendono dall’endpoint e dalla lingua:
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"}]
}
}
Questa richiesta di metadati usa intenzionalmente una data starting-from non valida. Il formato richiesto nella query è 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
}
Altri errori
{
"ErrorCode": "string",
"Message": "string"
}
Paginazione
- pageNumber
- pageSize (utilizzato quando pageNumber è indicato)
- totalCount
- currentPage
- pageSize
- totalPages
- previousPageLink
- nextPageLink