DX STF Client API

<back to all web services

GetTransactionalPartyByParam

Transactional Party Requests

Transactional Party

Requires Authentication
The following routes are available for this service:
GET/api/transactionalPartyGet transactional party by params
namespace DX.STF.Application.ClientApi.Messages.TransactionalParty

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<DataContract>]
    [<AllowNullLiteral>]
    type DocumentIdentification() = 
        [<DataMember(Name="identifier")>]
        member val Identifier:String = null with get,set

        [<DataMember(Name="type")>]
        member val Type:String = null with get,set

        [<DataMember(Name="creationDateAndTime")>]
        member val CreationDateAndTime:DateTime = new DateTime() with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type Identifier() = 
        [<DataMember(Name="authority")>]
        member val Authority:String = null with get,set

        [<DataMember(Name="text")>]
        member val Text:String = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type ContactInformation() = 
        class end

    [<DataContract>]
    [<AllowNullLiteral>]
    type Partner() = 
        [<DataMember(Name="identifier")>]
        member val Identifier:Identifier = null with get,set

        [<DataMember(Name="contactInformation")>]
        member val ContactInformation:ResizeArray<ContactInformation> = null with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type Header() = 
        [<DataMember(Name="documentIdentification")>]
        member val DocumentIdentification:DocumentIdentification = null with get,set

        [<DataMember(Name="sender")>]
        member val Sender:Partner = null with get,set

        [<DataMember(Name="receiver")>]
        member val Receiver:Partner = null with get,set

    [<AllowNullLiteral>]
    type AvpList() = 
        member val Code:String = null with get,set
        member val Value:String = null with get,set

    [<AllowNullLiteral>]
    type Ecom_PartyIdentificationType() = 
        member val Gln:String = null with get,set
        member val Name:String = null with get,set
        member val AdditionalPartyIdentification:ResizeArray<AvpList> = null with get,set

    [<AllowNullLiteral>]
    type CommunicationChannel() = 
        member val CommunicationChannelCode:String = null with get,set
        member val CommunicationChannelName:String = null with get,set
        member val CommunicationValue:String = null with get,set

    [<AllowNullLiteral>]
    type Contact() = 
        member val ContactTypeCode:String = null with get,set
        member val PersonName:String = null with get,set
        member val DepartmentName:String = null with get,set
        member val JobTitle:String = null with get,set
        member val Responsibility:String = null with get,set
        member val CommunicationChannel:ResizeArray<CommunicationChannel> = null with get,set

    [<AllowNullLiteral>]
    type Address() = 
        member val StreetAddressOne:String = null with get,set
        member val StreetAddressTwo:String = null with get,set
        member val StreetAddressThree:String = null with get,set
        member val City:String = null with get,set
        member val PostalCode:String = null with get,set
        member val ProvinceCode:String = null with get,set
        member val CountryCode:String = null with get,set

    [<AllowNullLiteral>]
    type FinancialRoutingNumber() = 
        member val Number:String = null with get,set
        member val NumberTypeCode:String = null with get,set

    [<AllowNullLiteral>]
    type FinancialAccount() = 
        member val Number:String = null with get,set
        member val NumberTypeCode:String = null with get,set
        member val Name:String = null with get,set

    [<AllowNullLiteral>]
    type FinancialInstitutionInformation() = 
        member val FinancialInstitutionBranchName:String = null with get,set
        member val FinancialInstitutionName:String = null with get,set
        member val FinancialRoutingNumber:FinancialRoutingNumber = null with get,set
        member val FinancialAccount:FinancialAccount = null with get,set
        member val SwiftCode:String = null with get,set
        member val ExportersCode:String = null with get,set

    [<AllowNullLiteral>]
    type TransactionalParty() = 
        inherit Ecom_PartyIdentificationType()
        member val Contact:ResizeArray<Contact> = null with get,set
        member val Address:Address = null with get,set
        member val CommunicationChannel:ResizeArray<AvpList> = null with get,set
        member val FinancialInstitutionInformation:FinancialInstitutionInformation = null with get,set
        member val DutyFeeTaxRegistration:String = null with get,set
        member val EntityIdentification:String = null with get,set

    type DocumentAction =
        | ADD = 0
        | CHANGE_BY_REFRESH = 1
        | DELETE = 2
        | REJECTED = 3

    type DocumentStatus =
        | ADDITIONAL_TRANSMISSION = 0
        | COPY = 1
        | ORIGINAL = 2

    [<AllowNullLiteral>]
    type TransactionalPartyMessageType() = 
        inherit TransactionalParty()
        member val CreationDateTime:DateTime = new DateTime() with get,set
        member val LastUpdateDateTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val DocumentActionCode:DocumentAction = new DocumentAction() with get,set
        member val DocumentStatusCode:DocumentStatus = new DocumentStatus() with get,set
        member val DocumentStructureVersion:String = null with get,set
        member val RevisionNumber:Nullable<Int64> = new Nullable<Int64>() with get,set
        member val AvpList:ResizeArray<AvpList> = null with get,set

    [<AllowNullLiteral>]
    type TransactionalPartyMessage() = 
        member val Header:Header = null with get,set
        member val TransactionalParty:TransactionalPartyMessageType = null with get,set

    ///<summary>
    ///Transactional Party
    ///</summary>
    [<Api(Description="Transactional Party")>]
    [<ApiResponse(Description="Transactional Party data", IsDefaultResponse=true, StatusCode=200)>]
    [<ApiResponse(Description="No Content", ResponseType=typeof<IReturnVoid>, StatusCode=204)>]
    [<ApiResponse(Description="Specified argument was out of the range of valid values.", ResponseType=typeof<ArgumentOutOfRangeException>, StatusCode=400)>]
    [<AllowNullLiteral>]
    type GetTransactionalPartyByParam() = 
        member val TransactionPartyGln:String = null with get,set

F# GetTransactionalPartyByParam DTOs

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

HTTP + JSV

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

GET /api/transactionalParty HTTP/1.1 
Host: stf-api-uat.data-xchange.co.za 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	header: 
	{
		documentIdentification: 
		{
			identifier: String,
			type: String
		},
		sender: 
		{
			identifier: 
			{
				authority: String,
				text: String
			},
			contactInformation: 
			[
				{
					
				}
			]
		},
		receiver: 
		{
			identifier: 
			{
				authority: String,
				text: String
			},
			contactInformation: 
			[
				{
					
				}
			]
		}
	},
	transactionalParty: 
	{
		lastUpdateDateTime: 0001-01-01,
		documentActionCode: ADD,
		documentStatusCode: ADDITIONAL_TRANSMISSION,
		documentStructureVersion: String,
		revisionNumber: 0,
		avpList: 
		[
			{
				code: String,
				value: String
			}
		],
		contact: 
		[
			{
				contactTypeCode: String,
				personName: String,
				departmentName: String,
				jobTitle: String,
				responsibility: String,
				communicationChannel: 
				[
					{
						communicationChannelCode: String,
						communicationChannelName: String,
						communicationValue: String
					}
				]
			}
		],
		address: 
		{
			streetAddressOne: String,
			streetAddressTwo: String,
			streetAddressThree: String,
			city: String,
			postalCode: String,
			provinceCode: String,
			countryCode: String
		},
		communicationChannel: 
		[
			{
				code: String,
				value: String
			}
		],
		financialInstitutionInformation: 
		{
			financialInstitutionBranchName: String,
			financialInstitutionName: String,
			financialRoutingNumber: 
			{
				number: String,
				numberTypeCode: String
			},
			financialAccount: 
			{
				number: String,
				numberTypeCode: String,
				name: String
			},
			swiftCode: String,
			exportersCode: String
		},
		dutyFeeTaxRegistration: String,
		entityIdentification: String,
		gln: String,
		name: String,
		additionalPartyIdentification: 
		[
			{
				code: String,
				value: String
			}
		]
	}
}