AlbaApi

<back to all web services

PensionsInfoExtReq

The following routes are available for this service:
POST/ext/pensionsinfo
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class TransactionHeader:
    version_number: Optional[int] = None
    transaction_id: Optional[str] = None
    transactions_type_number: Optional[int] = None
    event_time: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AnswerSendPensionPlanHeader(TransactionHeader):
    social_security_number: Optional[str] = None
    report_received: Optional[bool] = None
    provider_remark: Optional[bytes] = None
    error_text: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SendPensionPlanToProviderResponseVer9DTO:
    header: Optional[AnswerSendPensionPlanHeader] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SendPensionPlanHeader(TransactionHeader):
    social_security_number: Optional[str] = None
    cohabitant_social_security_number: Optional[str] = None
    customer_remark: Optional[bytes] = None
    system_info: Optional[str] = None
    pension_provider_id: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Pdf:
    pdf_report: Optional[bytes] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RemarkVer9DTO:
    type_number: Optional[int] = None
    number: Optional[int] = None
    text: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PremiumWaiverBenefitVer9DTO:
    is_eligible: Optional[bool] = None
    is_active: Optional[bool] = None
    value: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BenefitPaymentVer9DTO:
    benefit_payment: Optional[int] = None
    payment_year_to_date: Optional[int] = None
    latest_payment_date: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PayoutForecastVer9DTO:
    age: Optional[int] = None
    amount: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BeneficiaryVer9DTO:
    name: Optional[str] = None
    percentage: Optional[int] = None
    type_number: Optional[int] = None
    type_text: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DateAgeTypeVer9DTO:
    date: Optional[datetime.datetime] = None
    age: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PayoutVer9DTO:
    current_payment: Optional[bool] = None
    payout_forecasts: Optional[List[PayoutForecastVer9DTO]] = None
    payment_form_number: Optional[int] = None
    payment_form_text: Optional[str] = None
    payment_taxation_number: Optional[int] = None
    payment_taxation_text: Optional[str] = None
    receiver_number: Optional[int] = None
    receiver_text: Optional[str] = None
    condition_number: Optional[int] = None
    condition_text: Optional[str] = None
    condition_parameter: Optional[int] = None
    beneficiaries: Optional[List[BeneficiaryVer9DTO]] = None
    payout_start: Optional[DateAgeTypeVer9DTO] = None
    payout_end: Optional[DateAgeTypeVer9DTO] = None
    latest_possible_payout: Optional[DateAgeTypeVer9DTO] = None
    earliest_possible_payout: Optional[DateAgeTypeVer9DTO] = None
    latest_payout_start: Optional[DateAgeTypeVer9DTO] = None
    payment_years: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RiskBenefitVer9DTO:
    shadow_benefit: Optional[bool] = None
    amount: Optional[int] = None
    amount_date: Optional[datetime.datetime] = None
    risk_termination: Optional[DateAgeTypeVer9DTO] = None
    benefit_extent_number: Optional[int] = None
    benefit_detail: Optional[List[int]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class InvestmentDistributionVer9DTO:
    investment_form_number: Optional[int] = None
    investment_identification: Optional[str] = None
    investment_value: Optional[int] = None
    investment_value_date: Optional[datetime.datetime] = None
    pending_yield_amount: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ForecastVer9DTO:
    age: Optional[int] = None
    amount: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ForecastCalculationVer9DTO:
    forecast_start_age: Optional[int] = None
    remarks: Optional[List[RemarkVer9DTO]] = None
    forecasts: Optional[List[ForecastVer9DTO]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PensionForecastsVer9DTO:
    pension_payment: Optional[bool] = None
    early_retirement_deduction: Optional[bool] = None
    calculate_forecasts: Optional[bool] = None
    forecast_interest_type: Optional[int] = None
    price_index_regulated: Optional[bool] = None
    real_income_regulated: Optional[bool] = None
    enter_payment_enabled: Optional[bool] = None
    forecast_calculation_date: Optional[datetime.datetime] = None
    forecasts_calculations: Optional[List[ForecastCalculationVer9DTO]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PensionBenefitVer9DTO:
    pension_type_number: Optional[int] = None
    pension_type: Optional[str] = None
    index_contract_count: Optional[int] = None
    investment_distributions: Optional[List[InvestmentDistributionVer9DTO]] = None
    pension_forecasts: Optional[PensionForecastsVer9DTO] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BenefitVer9DTO:
    transaction_status: Optional[int] = None
    type_number: Optional[int] = None
    type_text: Optional[str] = None
    subscription_type_number: Optional[int] = None
    subscription_type_text: Optional[str] = None
    can_be_shown_in_graph: Optional[bool] = None
    more_info_url: Optional[str] = None
    system_info: Optional[str] = None
    premium_waiver_benefit: Optional[PremiumWaiverBenefitVer9DTO] = None
    payment: Optional[BenefitPaymentVer9DTO] = None
    payout: Optional[PayoutVer9DTO] = None
    risk: Optional[RiskBenefitVer9DTO] = None
    pension: Optional[PensionBenefitVer9DTO] = None
    remarks: Optional[List[RemarkVer9DTO]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PensionSchemeVer9DTO:
    transaction_status: Optional[int] = None
    reference_number: Optional[str] = None
    type_number: Optional[int] = None
    phone: Optional[int] = None
    contact: Optional[str] = None
    email: Optional[str] = None
    payment: Optional[int] = None
    payment_date: Optional[datetime.datetime] = None
    saved_value: Optional[int] = None
    saved_value_date: Optional[datetime.datetime] = None
    saved_value_presentation: Optional[int] = None
    system_info_scheme: Optional[str] = None
    business_partner_number: Optional[int] = None
    guarantees: Optional[int] = None
    transfer_costs: Optional[int] = None
    transfer_costs_job_change: Optional[int] = None
    repurchase: Optional[int] = None
    repurchase_text: Optional[bytes] = None
    has_withdrawal_penalty: Optional[bool] = None
    benefit_composition: Optional[bool] = None
    investment_form_number: Optional[int] = None
    business_partner: Optional[str] = None
    word_split_character: Optional[int] = None
    remarks: Optional[List[RemarkVer9DTO]] = None
    benefits: Optional[List[BenefitVer9DTO]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PensionProviderVer9DTO:
    pension_provider_id: Optional[int] = None
    pension_provider_name: Optional[str] = None
    word_split_character: Optional[int] = None
    web_site_url: Optional[str] = None
    currency_code: Optional[str] = None
    advisor_name: Optional[str] = None
    receive_data_for_advisory: Optional[bool] = None
    transaction_status: Optional[int] = None
    schemes: Optional[List[PensionSchemeVer9DTO]] = None
    transaction_remarks: Optional[List[RemarkVer9DTO]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PensionsInfoExtReq:
    header: Optional[SendPensionPlanHeader] = None
    pdf: Optional[Pdf] = None
    cohabitant_pdf: Optional[Pdf] = None
    pension_providers: Optional[List[PensionProviderVer9DTO]] = None
    cohabitant_pension_providers: Optional[List[PensionProviderVer9DTO]] = None

Python PensionsInfoExtReq DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /ext/pensionsinfo HTTP/1.1 
Host: hcbtas-q-albamfs-api.azurewebsites.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<PensionsInfoExtReq xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AlbaApi.ServiceModel">
  <CohabitantPdf xmlns:d2p1="http://schemas.datacontract.org/2004/07/AlbaMfs.Common.PensionsInfo">
    <d2p1:PdfReport>AA==</d2p1:PdfReport>
  </CohabitantPdf>
  <CohabitantPensionProviders xmlns:d2p1="http://schemas.datacontract.org/2004/07/AlbaMfs.Common.PensionsInfo">
    <d2p1:PensionProviderVer9DTO>
      <d2p1:AdvisorName>String</d2p1:AdvisorName>
      <d2p1:CurrencyCode>String</d2p1:CurrencyCode>
      <d2p1:PensionProviderId>0</d2p1:PensionProviderId>
      <d2p1:PensionProviderName>String</d2p1:PensionProviderName>
      <d2p1:ReceiveDataForAdvisory>false</d2p1:ReceiveDataForAdvisory>
      <d2p1:Schemes i:nil="true" />
      <d2p1:TransactionRemarks i:nil="true" />
      <d2p1:TransactionStatus>0</d2p1:TransactionStatus>
      <d2p1:WebSiteUrl>String</d2p1:WebSiteUrl>
      <d2p1:WordSplitCharacter>0</d2p1:WordSplitCharacter>
    </d2p1:PensionProviderVer9DTO>
  </CohabitantPensionProviders>
  <Header xmlns:d2p1="http://schemas.datacontract.org/2004/07/AlbaMfs.Common.PensionsInfo">
    <d2p1:EventTime xmlns:d3p1="http://schemas.datacontract.org/2004/07/System">
      <d3p1:DateTime>0001-01-01T00:00:00Z</d3p1:DateTime>
      <d3p1:OffsetMinutes>0</d3p1:OffsetMinutes>
    </d2p1:EventTime>
    <d2p1:TransactionId>String</d2p1:TransactionId>
    <d2p1:TransactionsTypeNumber>0</d2p1:TransactionsTypeNumber>
    <d2p1:VersionNumber>0</d2p1:VersionNumber>
    <d2p1:CohabitantSocialSecurityNumber>String</d2p1:CohabitantSocialSecurityNumber>
    <d2p1:CustomerRemark>AA==</d2p1:CustomerRemark>
    <d2p1:PensionProviderId>0</d2p1:PensionProviderId>
    <d2p1:SocialSecurityNumber>String</d2p1:SocialSecurityNumber>
    <d2p1:SystemInfo>String</d2p1:SystemInfo>
  </Header>
  <Pdf xmlns:d2p1="http://schemas.datacontract.org/2004/07/AlbaMfs.Common.PensionsInfo">
    <d2p1:PdfReport>AA==</d2p1:PdfReport>
  </Pdf>
  <PensionProviders xmlns:d2p1="http://schemas.datacontract.org/2004/07/AlbaMfs.Common.PensionsInfo">
    <d2p1:PensionProviderVer9DTO>
      <d2p1:AdvisorName>String</d2p1:AdvisorName>
      <d2p1:CurrencyCode>String</d2p1:CurrencyCode>
      <d2p1:PensionProviderId>0</d2p1:PensionProviderId>
      <d2p1:PensionProviderName>String</d2p1:PensionProviderName>
      <d2p1:ReceiveDataForAdvisory>false</d2p1:ReceiveDataForAdvisory>
      <d2p1:Schemes i:nil="true" />
      <d2p1:TransactionRemarks i:nil="true" />
      <d2p1:TransactionStatus>0</d2p1:TransactionStatus>
      <d2p1:WebSiteUrl>String</d2p1:WebSiteUrl>
      <d2p1:WordSplitCharacter>0</d2p1:WordSplitCharacter>
    </d2p1:PensionProviderVer9DTO>
  </PensionProviders>
</PensionsInfoExtReq>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<SendPensionPlanToProviderResponseVer9DTO xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AlbaMfs.Common.PensionsInfo">
  <Header>
    <EventTime xmlns:d3p1="http://schemas.datacontract.org/2004/07/System">
      <d3p1:DateTime>0001-01-01T00:00:00Z</d3p1:DateTime>
      <d3p1:OffsetMinutes>0</d3p1:OffsetMinutes>
    </EventTime>
    <TransactionId>String</TransactionId>
    <TransactionsTypeNumber>0</TransactionsTypeNumber>
    <VersionNumber>0</VersionNumber>
    <ErrorText>String</ErrorText>
    <ProviderRemark>AA==</ProviderRemark>
    <ReportReceived>false</ReportReceived>
    <SocialSecurityNumber>String</SocialSecurityNumber>
  </Header>
</SendPensionPlanToProviderResponseVer9DTO>