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 .xml suffix or ?format=xml

HTTP + XML

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: application/xml
Content-Type: application/xml
Content-Length: length

<C2BGetInstrumentDetailRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService">
  <ApiKey>String</ApiKey>
  <OAuthToken>String</OAuthToken>
  <AppId>String</AppId>
  <DeviceId>String</DeviceId>
  <Token>String</Token>
  <DeliveryId>0</DeliveryId>
  <IncludeMobileLayout>String</IncludeMobileLayout>
  <InstrumentId>0</InstrumentId>
  <LocationId>0</LocationId>
  <RateId>0</RateId>
  <RsiPk>0</RsiPk>
  <TeacherId>0</TeacherId>
</C2BGetInstrumentDetailRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<C2BGetInstrumentDetailResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService">
  <Status>
    <DomainName>String</DomainName>
    <ErrorCode>String</ErrorCode>
    <ErrorDisplayText>String</ErrorDisplayText>
    <ErrorMessage>String</ErrorMessage>
    <IpAddress>String</IpAddress>
    <Login>String</Login>
    <StatusCode>String</StatusCode>
  </Status>
  <InstrumentDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/AIM" i:nil="true" />
  <MobileLayout xmlns:d2p1="http://schemas.datacontract.org/2004/07/AIM.BL.Core.ExternalAPIs.MobileRentals">
    <d2p1:returnurl>String</d2p1:returnurl>
    <d2p1:sections>
      <d2p1:MobileLayout.Section>
        <d2p1:elements>
          <d2p1:MobileLayout.Element>
            <d2p1:addvalue>false</d2p1:addvalue>
            <d2p1:backgroundcolor>String</d2p1:backgroundcolor>
            <d2p1:disabled>false</d2p1:disabled>
            <d2p1:elements i:nil="true" />
            <d2p1:fontbold>false</d2p1:fontbold>
            <d2p1:fontsize>String</d2p1:fontsize>
            <d2p1:height>String</d2p1:height>
            <d2p1:id>String</d2p1:id>
            <d2p1:label>String</d2p1:label>
            <d2p1:map i:nil="true" />
            <d2p1:margin>String</d2p1:margin>
            <d2p1:placeholder>String</d2p1:placeholder>
            <d2p1:required>false</d2p1:required>
            <d2p1:selected>false</d2p1:selected>
            <d2p1:textalign>String</d2p1:textalign>
            <d2p1:textcolor>String</d2p1:textcolor>
            <d2p1:totalamount>false</d2p1:totalamount>
            <d2p1:type>String</d2p1:type>
            <d2p1:value>String</d2p1:value>
            <d2p1:values xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:string>String</d7p1:string>
            </d2p1:values>
            <d2p1:width>String</d2p1:width>
          </d2p1:MobileLayout.Element>
        </d2p1:elements>
        <d2p1:header>String</d2p1:header>
        <d2p1:id>String</d2p1:id>
        <d2p1:margin>String</d2p1:margin>
      </d2p1:MobileLayout.Section>
    </d2p1:sections>
    <d2p1:title>String</d2p1:title>
  </MobileLayout>
</C2BGetInstrumentDetailResponse>