AIM Web Services

<back to all web services

C2BGetInstrumentDetailRequest

C2BGetInstrumentDetail
Requires active-e Contracts Service.

The following routes are available for this service:
POST, GET/api/C2BGetInstrumentDetail
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports AIM.WebService
Imports AIM
Imports AIM.BL.Core.ExternalAPIs.MobileRentals

Namespace Global

    Namespace AIM

        <DataContract>
        Public Partial Class C2BAccessoryGeneric
            <DataMember>
            Public Overridable Property AccessoryDesc As String

            <DataMember>
            Public Overridable Property Price As Decimal

            <DataMember>
            Public Overridable Property Required As Boolean

            <DataMember>
            Public Overridable Property [Default] As Boolean

            <DataMember>
            Public Overridable Property RequiresLocation As Boolean

            <DataMember>
            Public Overridable Property Type As String

            <DataMember>
            Public Overridable Property Topic As String

            <DataMember>
            Public Overridable Property Id As Long

            <DataMember>
            Public Overridable Property DisplayOrder As Integer

            <DataMember>
            Public Overridable Property Sku As String

            <DataMember>
            Public Overridable Property TaxAmount As Nullable(Of Decimal)

            <DataMember>
            Public Overridable Property CatNum As Nullable(Of Integer)
        End Class

        <DataContract>
        Public Partial Class C2BDeliveryInfo
            <DataMember>
            Public Overridable Property FirstDelivery As Date

            <DataMember>
            Public Overridable Property DeliveryTime As Date

            <DataMember>
            Public Overridable Property DeliveryThreshold As Integer

            <DataMember>
            Public Overridable Property SundayDelivery As Boolean

            <DataMember>
            Public Overridable Property MondayDelivery As Boolean

            <DataMember>
            Public Overridable Property TuesdayDelivery As Boolean

            <DataMember>
            Public Overridable Property WednesdayDelivery As Boolean

            <DataMember>
            Public Overridable Property ThursdayDelivery As Boolean

            <DataMember>
            Public Overridable Property FridayDelivery As Boolean

            <DataMember>
            Public Overridable Property SaturdayDelivery As Boolean
        End Class

        <DataContract>
        Public Partial Class C2BDistrictGeneric
            <DataMember>
            Public Overridable Property DistrictName As String

            <DataMember>
            Public Overridable Property SchoolCount As Integer

            <DataMember>
            Public Overridable Property TeacherCount As Integer

            <DataMember>
            Public Overridable Property Topic As String

            <DataMember>
            Public Overridable Property Id As Long
        End Class

        <DataContract>
        Public Partial Class C2BGradeGeneric
            <DataMember>
            Public Overridable Property Level As Integer

            <DataMember>
            Public Overridable Property Grade As String

            <DataMember>
            Public Overridable Property DownPay As Decimal

            <DataMember>
            Public Overridable Property DownMaint As Decimal

            <DataMember>
            Public Overridable Property MoPay As Decimal

            <DataMember>
            Public Overridable Property MoMaint As Decimal

            <DataMember>
            Public Overridable Property Id As Long

            <DataMember>
            Public Overridable Property OutOfStock As Boolean

            <DataMember>
            Public Overridable Property RentPrice As Decimal

            <DataMember>
            Public Overridable Property CashPrice As Decimal

            <DataMember>
            Public Overridable Property DownPayTax As Nullable(Of Decimal)

            <DataMember>
            Public Overridable Property DownMaintTax As Nullable(Of Decimal)

            <DataMember>
            Public Overridable Property MoPayTax As Nullable(Of Decimal)

            <DataMember>
            Public Overridable Property MoMaintTax As Nullable(Of Decimal)

            <DataMember>
            Public Overridable Property RentPricePlusTax As Decimal

            <DataMember>
            Public Overridable Property RentPricePlusTaxLessDownpay As Decimal

            <DataMember>
            Public Overridable Property Months As Integer
        End Class

        <DataContract>
        Public Partial Class C2BInstrumentDetailGeneric
            Public Sub New()
                AccessoryList = New List(Of C2BAccessoryGeneric)
                DeliveryList = New List(Of C2BAccessoryGeneric)
                MaintenanceList = New List(Of C2BAccessoryGeneric)
            End Sub

            <DataMember>
            Public Overridable Property PlanCode As C2BPlanCodeGeneric

            <DataMember>
            Public Overridable Property Teacher As C2BTeacherGeneric

            <DataMember>
            Public Overridable Property School As C2BSchoolGeneric

            <DataMember>
            Public Overridable Property DeliveryDate As String

            <DataMember>
            Public Overridable Property SalesPerson As String

            <DataMember>
            Public Overridable Property District As C2BDistrictGeneric

            <DataMember>
            Public Overridable Property Instrument As C2BInstrumentGeneric

            <DataMember>
            Public Overridable Property Grade As C2BGradeGeneric

            <DataMember>
            Public Overridable Property AccessoryList As List(Of C2BAccessoryGeneric)

            <DataMember>
            Public Overridable Property DeliveryList As List(Of C2BAccessoryGeneric)

            <DataMember>
            Public Overridable Property MaintenanceList As List(Of C2BAccessoryGeneric)
        End Class

        <DataContract>
        Public Partial Class C2BInstrumentGeneric
            Public Sub New()
                GradeList = New List(Of C2BGradeGeneric)
                AccessoryList = New List(Of C2BAccessoryGeneric)
                DeliveryList = New List(Of C2BAccessoryGeneric)
                MaintenanceList = New List(Of C2BAccessoryGeneric)
            End Sub

            <DataMember>
            Public Overridable Property InstrumentName As String

            <DataMember>
            Public Overridable Property Sku As String

            <DataMember>
            Public Overridable Property Topic As String

            <DataMember>
            Public Overridable Property Image As String

            <DataMember>
            Public Overridable Property Level As Integer

            <DataMember>
            Public Overridable Property RentPrice As Nullable(Of Decimal)

            <DataMember>
            Public Overridable Property CashPrice As Nullable(Of Decimal)

            <DataMember>
            Public Overridable Property Token As String

            <DataMember>
            Public Overridable Property InstrumentId As Long

            <DataMember>
            Public Overridable Property InstrumentTeacherId As Long

            <DataMember>
            Public Overridable Property GradeList As List(Of C2BGradeGeneric)

            <DataMember>
            Public Overridable Property HasGrades As Boolean

            <DataMember>
            Public Overridable Property DisplayOrder As Integer

            <DataMember>
            Public Overridable Property AccessoryList As List(Of C2BAccessoryGeneric)

            <DataMember>
            Public Overridable Property DeliveryList As List(Of C2BAccessoryGeneric)

            <DataMember>
            Public Overridable Property MaintenanceList As List(Of C2BAccessoryGeneric)
        End Class

        <DataContract>
        Public Partial Class C2BPlanCodeGeneric
            <DataMember>
            Public Overridable Property Code As String

            <DataMember>
            Public Overridable Property Name As String

            <DataMember>
            Public Overridable Property Months As Integer

            <DataMember>
            Public Overridable Property Topic As String

            <DataMember>
            Public Overridable Property Url As String

            <DataMember>
            Public Overridable Property FinalTopic As String
        End Class

        <DataContract>
        Public Partial Class C2BSchoolGeneric
            <DataMember>
            Public Overridable Property SchoolName As String

            <DataMember>
            Public Overridable Property DistrictName As String

            <DataMember>
            Public Overridable Property TeacherCount As Integer

            <DataMember>
            Public Overridable Property Topic As String

            <DataMember>
            Public Overridable Property Id As Long

            <DataMember>
            Public Overridable Property DeliveryInfo As C2BDeliveryInfo

            <DataMember>
            Public Overridable Property AIMSchoolId As Nullable(Of Long)
        End Class

        <DataContract>
        Public Partial Class C2BTeacherGeneric
            <DataMember>
            Public Overridable Property TeacherName As String

            <DataMember>
            Public Overridable Property SchoolName As String

            <DataMember>
            Public Overridable Property DistrictName As String

            <DataMember>
            Public Overridable Property Topic As String

            <DataMember>
            Public Overridable Property Id As Long

            <DataMember>
            Public Overridable Property DeliveryInfo As C2BDeliveryInfo

            <DataMember>
            Public Overridable Property AIMSchoolId As Nullable(Of Long)
        End Class
    End Namespace

    Namespace AIM.BL.Core.ExternalAPIs.MobileRentals

        <DataContract>
        Public Partial Class MobileLayout
            Public Sub New()
                sections = New Section(){}
            End Sub

            <DataMember>
            Public Overridable Property title As String

            <DataMember>
            Public Overridable Property returnurl As String

            <DataMember>
            Public Overridable Property sections As Section()

            <DataContract>
            Public Partial Class Section
                Public Sub New()
                    elements = New Element(){}
                End Sub

                <DataMember>
                Public Overridable Property header As String

                <DataMember>
                Public Overridable Property id As String

                <DataMember>
                Public Overridable Property margin As String

                <DataMember>
                Public Overridable Property elements As Element()
            End Class

            <DataContract>
            Public Partial Class Element
                Public Sub New()
                    values = New String(){}
                End Sub

                <DataMember>
                Public Overridable Property type As String

                <DataMember>
                Public Overridable Property label As String

                <DataMember>
                Public Overridable Property id As String

                <DataMember>
                Public Overridable Property fontsize As String

                <DataMember>
                Public Overridable Property margin As String

                <DataMember>
                Public Overridable Property backgroundcolor As String

                <DataMember>
                Public Overridable Property textcolor As String

                <DataMember>
                Public Overridable Property height As String

                <DataMember>
                Public Overridable Property width As String

                <DataMember>
                Public Overridable Property value As String

                <DataMember>
                Public Overridable Property addvalue As Boolean

                <DataMember>
                Public Overridable Property values As String()

                <DataMember>
                Public Overridable Property textalign As String

                <DataMember>
                Public Overridable Property required As Nullable(Of Boolean)

                <DataMember>
                Public Overridable Property placeholder As String

                <DataMember>
                Public Overridable Property fontbold As Nullable(Of Boolean)

                <DataMember>
                Public Overridable Property selected As Nullable(Of Boolean)

                <DataMember>
                Public Overridable Property disabled As Nullable(Of Boolean)

                <DataMember>
                Public Overridable Property totalamount As Nullable(Of Boolean)

                <DataMember>
                Public Overridable Property elements As IEnumerable(Of Element)

                <DataMember>
                Public Overridable Property map As IEnumerable(Of LicenseMap)
            End Class

            <DataContract>
            Public Partial Class LicenseMap
                <DataMember>
                Public Overridable Property name As String

                <DataMember>
                Public Overridable Property value As String
            End Class
        End Class
    End Namespace

    Namespace AIM.WebService

        <DataContract>
        Public Partial Class BaseRequest
            '''<Summary>
            '''This is your AIM API Key provided by Tri-Tech
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="This is your AIM API Key provided by Tri-Tech", IsRequired:=true, Name:="ApiKey", ParameterType:="header")>
            Public Overridable Property ApiKey As String

            <DataMember>
            <ApiMember(DataType:="string", Name:="OAuthToken", ParameterType:="header")>
            Public Overridable Property OAuthToken As String
        End Class

        <DataContract>
        Public Partial Class BaseResponse
            '''<Summary>
            '''
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="BaseResponseResult", Description:="", Name:="Status", ParameterType:="body")>
            Public Overridable Property Status As BaseResponseResult

            <DataContract>
            Public Partial Class BaseResponseResult
                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="StatusCode", ParameterType:="body")>
                Public Overridable Property StatusCode As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="Login", ParameterType:="body")>
                Public Overridable Property Login As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="ErrorCode", ParameterType:="body")>
                Public Overridable Property ErrorCode As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="ErrorDisplayText", ParameterType:="body")>
                Public Overridable Property ErrorDisplayText As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", Name:="ErrorMessage", ParameterType:="body")>
                Public Overridable Property ErrorMessage As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", ExcludeInSchema:=true, Name:="DomainName", ParameterType:="body")>
                Public Overridable Property DomainName As String

                '''<Summary>
                '''
                '''</Summary>
                <DataMember>
                <ApiMember(DataType:="string", Description:="", ExcludeInSchema:=true, Name:="IPAddress", ParameterType:="body")>
                Public Overridable Property IpAddress As String
            End Class
        End Class

        <DataContract>
        Public Partial Class BaseSecureRequest
            Inherits BaseRequest
            '''<Summary>
            '''
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="", Name:="Token", ParameterType:="Header")>
            Public Overridable Property Token As String

            '''<Summary>
            '''
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="", Name:="DeviceId", ParameterType:="Header")>
            Public Overridable Property DeviceId As String

            '''<Summary>
            '''
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="", IsRequired:=true, Name:="AppId", ParameterType:="Header")>
            Public Overridable Property AppId As String
        End Class

        '''<Summary>
        '''C2BGetInstrumentDetailRequires active-e Contracts Service.
        '''</Summary>
        <DataContract>
        Public Partial Class C2BGetInstrumentDetailRequest
            Inherits BaseSecureRequest
            '''<Summary>
            '''ID of the Teacher/Instrument record. Either this *or* TeacherId + InstrumentId must be sent.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="integer", Description:="ID of the Teacher/Instrument record. Either this *or* TeacherId + InstrumentId must be sent.", Format:="int64", Name:="RsiPk", ParameterType:="query")>
            Public Overridable Property RsiPk As Nullable(Of Long)

            '''<Summary>
            '''ID of the Teacher record. Either this+InstrumentID *or* RsiPk must be sent.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="integer", Description:="ID of the Teacher record. Either this+InstrumentID *or* RsiPk must be sent.", Format:="int64", Name:="TeacherId", ParameterType:="query")>
            Public Overridable Property TeacherId As Nullable(Of Long)

            '''<Summary>
            '''ID of the Instrument record. Either this+TeacherID *or* RsiPk must be sent.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="integer", Description:="ID of the Instrument record. Either this+TeacherID *or* RsiPk must be sent.", Format:="int64", Name:="InstrumentId", ParameterType:="query")>
            Public Overridable Property InstrumentId As Nullable(Of Long)

            '''<Summary>
            '''ID of the Rate to be used. This is required.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="integer", Description:="ID of the Rate to be used. This is required.", Format:="int64", IsRequired:=true, Name:="RateId", ParameterType:="query")>
            Public Overridable Property RateId As Nullable(Of Long)

            '''<Summary>
            '''If 'Y', then Mobile Layout will be returned.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="string", Description:="If 'Y', then Mobile Layout will be returned.", Name:="IncludeMobileLayout", ParameterType:="query")>
            Public Overridable Property IncludeMobileLayout As String

            '''<Summary>
            '''ID of the Delivery option to be used.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="integer", Description:="ID of the Delivery option to be used.", Format:="int64", IsRequired:=true, Name:="DeliveryId", ParameterType:="query")>
            Public Overridable Property DeliveryId As Nullable(Of Long)

            '''<Summary>
            '''ID of the Location. Used for Location required Delivery options.
            '''</Summary>
            <DataMember>
            <ApiMember(DataType:="integer", Description:="ID of the Location. Used for Location required Delivery options.", Format:="int64", IsRequired:=true, Name:="LocationId", ParameterType:="query")>
            Public Overridable Property LocationId As Nullable(Of Long)
        End Class

        <DataContract>
        Public Partial Class C2BGetInstrumentDetailResponse
            Inherits BaseResponse
            <DataMember>
            Public Overridable Property InstrumentDetails As C2BInstrumentDetailGeneric

            <DataMember>
            Public Overridable Property MobileLayout As MobileLayout
        End Class
    End Namespace
End Namespace

VB.NET C2BGetInstrumentDetailRequest DTOs

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

HTTP + OTHER

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

POST /api/C2BGetInstrumentDetail HTTP/1.1 
Host: active-ewebservice.biz 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"RsiPk":0,"TeacherId":0,"InstrumentId":0,"RateId":0,"IncludeMobileLayout":"String","DeliveryId":0,"LocationId":0,"Token":"String","DeviceId":"String","AppId":"String","ApiKey":"String","OAuthToken":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"MobileLayout":{"title":"String","returnurl":"String","sections":[{"header":"String","id":"String","margin":"String","elements":[{"type":"String","label":"String","id":"String","fontsize":"String","margin":"String","backgroundcolor":"String","textcolor":"String","height":"String","width":"String","value":"String","addvalue":false,"values":["String"],"textalign":"String","required":false,"placeholder":"String","fontbold":false,"selected":false,"disabled":false,"totalamount":false}]}]},"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}