POST | /documents |
---|
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 Members:
home_url: Optional[str] = None
success: Optional[bool] = None
is_pension_sight: Optional[bool] = None
class AuthenticationMethodType(str, Enum):
NEM_ID = 'NemId'
SSO = 'SSO'
COMMON = 'Common'
SINGLE = 'Single'
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PostDocumentReq:
reference: Optional[str] = None
language_iso_code: Optional[str] = None
country_iso_code: Optional[str] = None
client_uri: Optional[str] = None
authentication_method_type: Optional[AuthenticationMethodType] = None
employee_guid: Optional[str] = None
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /documents HTTP/1.1
Host: hcbtas-q-albamfs-api.azurewebsites.net
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<PostDocumentReq xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AlbaApi.ServiceModel">
<AuthenticationMethodType>NemId</AuthenticationMethodType>
<ClientUri>String</ClientUri>
<CountryIsoCode>String</CountryIsoCode>
<EmployeeGuid>00000000-0000-0000-0000-000000000000</EmployeeGuid>
<LanguageIsoCode>String</LanguageIsoCode>
<Reference>String</Reference>
</PostDocumentReq>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <Members xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AlbaApi.Model"> <HomeUrl>String</HomeUrl> <IsPensionSight>false</IsPensionSight> <Success>false</Success> </Members>