Portal

<back to all web services

AddSupplier

Requires Authentication
Requires any of the roles:VeoliaAdmin, SupplierRegistration
The following routes are available for this service:
POST/supplier
namespace Portal.Common

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

    [<AllowNullLiteral>]
    type ResponseBase() = 
        member val ResponseStatus:ResponseStatus = null with get,set

    [<AllowNullLiteral>]
    type ModifyEntityResponse() = 
        inherit ResponseBase()
        member val Id:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type ModifyRequestBase() = 
        member val ConcurrencyStamp:String = null with get,set

    [<AllowNullLiteral>]
    type SupplierBase() = 
        inherit ModifyRequestBase()
        member val VatNumber:String = null with get,set
        member val EUTaxNumber:String = null with get,set
        member val GroupTaxNumber:String = null with get,set
        member val BusinessType:Int32 = new Int32() with get,set
        member val CountryId:Int32 = new Int32() with get,set
        member val Name:String = null with get,set
        member val ShortName:String = null with get,set
        member val RegistrationNumber:String = null with get,set
        member val EstablishedDate:DateTime = new DateTime() with get,set
        member val RegistrationDate:DateTime = new DateTime() with get,set
        member val Duns:String = null with get,set
        member val OperatingLicenseNumber:String = null with get,set
        member val IsAccounting:Boolean = new Boolean() with get,set
        member val IsSmallTaxPayer:Boolean = new Boolean() with get,set
        member val Email:String = null with get,set
        member val PhoneNumber:String = null with get,set
        member val Website:String = null with get,set

    [<AllowNullLiteral>]
    type AddSupplierMainActivity() = 
        member val Teaor:String = null with get,set
        member val Description:String = null with get,set

    type AddressType =
        | Postal = 0
        | HeadQuarters = 1
        | Site = 2

    [<AllowNullLiteral>]
    type AddSupplierSupplierAddress() = 
        member val CountryId:Int32 = new Int32() with get,set
        member val AddressType:AddressType = new AddressType() with get,set
        member val ZipCode:String = null with get,set
        member val City:String = null with get,set
        member val Address:String = null with get,set
        member val StreetAddress:String = null with get,set
        member val StreetType:String = null with get,set
        member val HouseNumber:String = null with get,set
        member val Building:String = null with get,set
        member val Staircase:String = null with get,set
        member val Floor:String = null with get,set
        member val Door:String = null with get,set
        member val POB:String = null with get,set
        member val Other:String = null with get,set

    [<AllowNullLiteral>]
    type AddSupplier() = 
        inherit SupplierBase()
        interface IPost
        member val MainActivities:ResizeArray<AddSupplierMainActivity> = new ResizeArray<AddSupplierMainActivity>() with get,set
        member val SupplierAddresses:ResizeArray<AddSupplierSupplierAddress> = new ResizeArray<AddSupplierSupplierAddress>() with get,set

F# AddSupplier 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.

POST /supplier HTTP/1.1 
Host: szallitoiportal-be.veolia.hu 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	MainActivities: 
	[
		{
			Teaor: String,
			Description: String
		}
	],
	SupplierAddresses: 
	[
		{
			CountryId: 0,
			AddressType: 0,
			ZipCode: String,
			City: String,
			Address: String,
			StreetAddress: String,
			StreetType: String,
			HouseNumber: String,
			Building: String,
			Staircase: String,
			Floor: String,
			Door: String,
			POB: String,
			Other: String
		}
	],
	VatNumber: String,
	EUTaxNumber: String,
	GroupTaxNumber: String,
	BusinessType: 0,
	CountryId: 0,
	Name: String,
	ShortName: String,
	RegistrationNumber: String,
	EstablishedDate: 0001-01-01,
	RegistrationDate: 0001-01-01,
	Duns: String,
	OperatingLicenseNumber: String,
	IsAccounting: False,
	IsSmallTaxPayer: False,
	Email: String,
	PhoneNumber: String,
	Website: String,
	ConcurrencyStamp: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Id: 0,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}