AlbaApi

<back to all web services

PowensConnectionSyncRequest

The following routes are available for this service:
POST/ext/powens/connection_synced
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 Stability:
    status: Optional[str] = None
    last_update: Optional[datetime.datetime] = None


class AuthMechanism(IntEnum):
    CREDENTIALS = 'credentials'
    WEB_AUTH = 'webauth'


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ConnectorReq:
    id: Optional[int] = None
    name: Optional[str] = None
    hidden: Optional[bool] = None
    charged: Optional[bool] = None
    code: Optional[str] = None
    beta: Optional[bool] = None
    color: Optional[str] = None
    slug: Optional[str] = None
    sync_periodicity: Optional[Decimal] = None
    months_to_fetch: Optional[int] = None
    siret: Optional[str] = None
    uuid: Optional[str] = None
    restricted: Optional[bool] = None
    stability: Optional[Stability] = None
    capabilities: Optional[List[str]] = None
    available_auth_mechanisms: Optional[List[AuthMechanism]] = None
    categories: Optional[List[str]] = None
    auth_mechanism: Optional[AuthMechanism] = None
    account_types: Optional[List[Object]] = None
    account_usages: Optional[List[Object]] = None
    documents_type: Optional[List[str]] = None
    products: Optional[List[Object]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ConnectionRequest:
    id: Optional[int] = None
    id_user: Optional[int] = None
    id_connector: Optional[int] = None
    last_update: Optional[datetime.datetime] = None
    created: Optional[datetime.datetime] = None
    active: Optional[bool] = None
    last_push: Optional[datetime.datetime] = None
    next_try: Optional[datetime.datetime] = None
    connector: Optional[ConnectorReq] = None
    accounts: Optional[List[PowensAccount]] = None
    state: Optional[str] = None
    error: Optional[str] = None
    error_message: Optional[str] = None
    expire: Optional[datetime.datetime] = None
    id_provider: Optional[int] = None
    id_bank: Optional[int] = None
    bank: Optional[ConnectorReq] = None
    connector_uuid: Optional[str] = None
    informations: Optional[Object] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PowensConnectionSyncRequest:
    connection: Optional[ConnectionRequest] = None
    push_type: Optional[str] = None
    id_webhook_data: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PowensCurrency:
    id: Optional[str] = None
    name: Optional[str] = None
    symbol: Optional[str] = None
    crypto: Optional[bool] = None
    precision: Optional[int] = None
    prefix: Optional[bool] = None
    marketcap: Optional[Object] = None
    datetime: Optional[datetime.datetime] = None


class AccountUsage(IntEnum):
    PRIV = 1
    ORGA = 2


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PowensInformation:
    version: Optional[str] = None
    provider_type: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PowensLoan:
    total_amount: Optional[Decimal] = None
    available_amount: Optional[Decimal] = None
    used_amount: Optional[Decimal] = None
    subscription_date: Optional[datetime.datetime] = None
    maturity_date: Optional[datetime.datetime] = None
    next_payment_amount: Optional[Decimal] = None
    next_payment_date: Optional[datetime.datetime] = None
    rate: Optional[Decimal] = None
    nb_payments_left: Optional[int] = None
    nb_payments_done: Optional[int] = None
    nb_payments_total: Optional[int] = None
    last_payment_amount: Optional[Decimal] = None
    last_payment_date: Optional[datetime.datetime] = None
    account_label: Optional[str] = None
    insurance_label: Optional[str] = None
    insurance_amount: Optional[Decimal] = None
    insurance_rate: Optional[Decimal] = None
    duration: Optional[int] = None
    type: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PowensAccount:
    investments: Optional[List[PowensInvestment]] = None
    id: Optional[int] = None
    id_connection: Optional[int] = None
    id_user: Optional[int] = None
    id_source: Optional[int] = None
    id_parent: Optional[int] = None
    number: Optional[str] = None
    web_id: Optional[str] = None
    original_name: Optional[str] = None
    balance: Optional[Decimal] = None
    coming: Optional[Decimal] = None
    display: Optional[bool] = None
    last_update: Optional[datetime.datetime] = None
    deleted: Optional[datetime.datetime] = None
    disabled: Optional[datetime.datetime] = None
    iban: Optional[str] = None
    currency: Optional[PowensCurrency] = None
    id_type: Optional[int] = None
    bookmarked: Optional[int] = None
    name: Optional[str] = None
    error: Optional[str] = None
    usage: Optional[AccountUsage] = None
    company_name: Optional[str] = None
    opening_date: Optional[datetime.datetime] = None
    bic: Optional[Object] = None
    coming_balances: Optional[int] = None
    formatted_balance: Optional[str] = None
    type: Optional[str] = None
    calculated: Optional[List[str]] = None
    valuation: Optional[float] = None
    diff: Optional[float] = None
    diff_percent: Optional[float] = None
    prev_diff: Optional[float] = None
    prev_diff_percent: Optional[float] = None
    information: Optional[PowensInformation] = None
    loan: Optional[PowensLoan] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Currency:
    id: Optional[str] = None
    name: Optional[str] = None
    symbol: Optional[str] = None
    crypto: Optional[bool] = None
    precision: Optional[int] = None
    prefix: Optional[bool] = None
    marketcap: Optional[Object] = None
    datetime: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PowensInvestment:
    id: Optional[int] = None
    id_account: Optional[int] = None
    label: Optional[str] = None
    code: Optional[str] = None
    code_type: Optional[str] = None
    stock_symbol: Optional[str] = None
    stock_market: Optional[Object] = None
    source: Optional[str] = None
    description: Optional[str] = None
    quantity: Optional[Decimal] = None
    unit_price: Optional[Decimal] = None
    unit_value: Optional[Decimal] = None
    valuation: Optional[Decimal] = None
    diff: Optional[Decimal] = None
    diff_percent: Optional[Decimal] = None
    prev_diff: Optional[Decimal] = None
    portfolio_share: Optional[Decimal] = None
    v_date: Optional[datetime.datetime] = None
    prev_v_date: Optional[datetime.datetime] = None
    id_security: Optional[int] = None
    original_currency: Optional[Currency] = None
    original_valuation: Optional[Decimal] = None
    original_unit_value: Optional[Decimal] = None
    original_unit_price: Optional[Decimal] = None
    original_diff: Optional[Decimal] = None
    last_update: Optional[datetime.datetime] = None
    deleted: Optional[datetime.datetime] = None
    calculated: Optional[List[str]] = None
    id_type: Optional[int] = None

Python PowensConnectionSyncRequest DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

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

{"connection":{"id":0,"id_user":0,"id_connector":0,"last_update":"0001-01-01T00:00:00.0000000","created":"0001-01-01T00:00:00.0000000","active":false,"last_push":"0001-01-01T00:00:00.0000000","next_try":"0001-01-01T00:00:00.0000000","connector":{"id":0,"name":"String","hidden":false,"charged":false,"code":"String","beta":false,"color":"String","slug":"String","sync_periodicity":0,"months_to_fetch":0,"siret":"String","uuid":"String","restricted":false,"stability":{"status":"String","lastUpdate":"0001-01-01T00:00:00.0000000"},"capabilities":["String"],"available_auth_mechanisms":["credentials"],"categories":["String"],"auth_mechanism":"credentials","account_types":[{}],"account_usage":[{}],"documents_type":["String"],"products":[{}]},"accounts":[{"investments":[{"id":0,"id_account":0,"label":"String","code":"String","code_type":"String","stock_symbol":"String","stock_market":{},"source":"String","description":"String","quantity":0,"unitprice":0,"unitvalue":0,"valuation":0,"diff":0,"diff_percent":0,"prev_diff":0,"portfolio_share":0,"vdate":"0001-01-01T00:00:00.0000000","prev_vdate":"0001-01-01T00:00:00.0000000","id_security":0,"original_currency":{"id":"String","name":"String","symbol":"String","crypto":false,"precision":0,"prefix":false,"marketcap":{},"datetime":"0001-01-01T00:00:00.0000000"},"original_valuation":0,"original_unitvalue":0,"original_unitprice":0,"original_diff":0,"last_update":"0001-01-01T00:00:00.0000000","deleted":"0001-01-01T00:00:00.0000000","calculated":["String"],"id_type":0}],"id":0,"id_connection":0,"id_user":0,"id_source":0,"id_parent":0,"number":"String","webid":"String","original_name":"String","balance":0,"coming":0,"display":false,"last_update":"0001-01-01T00:00:00.0000000","deleted":"0001-01-01T00:00:00.0000000","disabled":"0001-01-01T00:00:00.0000000","iban":"String","currency":{"id":"String","name":"String","symbol":"String","crypto":false,"precision":0,"prefix":false,"marketcap":{},"datetime":"0001-01-01T00:00:00.0000000"},"id_type":0,"bookmarked":0,"name":"String","error":"String","usage":"0","company_name":"String","opening_date":"0001-01-01T00:00:00.0000000","bic":{},"coming_balance":0,"formatted_balance":"String","type":"String","calculated":["String"],"valuation":0,"diff":0,"diff_percent":0,"prev_diff":0,"prev_diff_percent":0,"information":{"version":"String","provider_type":"String"},"loan":{"total_amount":0,"available_amount":0,"used_amount":0,"subscription_date":"0001-01-01T00:00:00.0000000","maturity_date":"0001-01-01T00:00:00.0000000","next_payment_amount":0,"next_payment_date":"0001-01-01T00:00:00.0000000","rate":0,"nb_payments_left":0,"nb_payments_done":0,"nb_payments_total":0,"last_payment_amount":0,"last_payment_date":"0001-01-01T00:00:00.0000000","account_label":"String","insurance_label":"String","insurance_amount":0,"insurance_rate":0,"duration":0,"type":"String"}}],"state":"String","error":"String","error_message":"String","expire":"0001-01-01T00:00:00.0000000","id_provider":0,"id_bank":0,"bank":{"id":0,"name":"String","hidden":false,"charged":false,"code":"String","beta":false,"color":"String","slug":"String","sync_periodicity":0,"months_to_fetch":0,"siret":"String","uuid":"String","restricted":false,"stability":{"status":"String","lastUpdate":"0001-01-01T00:00:00.0000000"},"capabilities":["String"],"available_auth_mechanisms":["credentials"],"categories":["String"],"auth_mechanism":"credentials","account_types":[{}],"account_usage":[{}],"documents_type":["String"],"products":[{}]},"connector_uuid":"String","informations":{}},"push_type":"String","id_webhook_data":0}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"version":{"major":0,"minor":0,"build":-1,"revision":-1,"majorRevision":-1,"minorRevision":-1},"content":{"__type":"System.Net.Http.EmptyContent, System.Net.Http","headers":[]},"statusCode":"Continue","reasonPhrase":"String","headers":[],"trailingHeaders":[],"requestMessage":{"version":{"major":0,"minor":0,"build":-1,"revision":-1,"majorRevision":-1,"minorRevision":-1},"versionPolicy":"RequestVersionOrLower","method":{"method":"GET"},"headers":[],"properties":{},"options":{}},"isSuccessStatusCode":false}