AIM Web Services

<back to all web services

C2BGetTeacherInfoRequest

C2BGetTeacherInfo
Requires active-e Contracts Service.

The following routes are available for this service:
POST, GET/api/C2BGetTeacherInfo
import 'package:servicestack/servicestack.dart';

// @DataContract
class BaseRequest implements IConvertible
{
    /**
    * This is your AIM API Key provided by Tri-Tech
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header")
    String? ApiKey;

    // @DataMember
    // @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header")
    String? OAuthToken;

    BaseRequest({this.ApiKey,this.OAuthToken});
    BaseRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ApiKey = json['ApiKey'];
        OAuthToken = json['OAuthToken'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ApiKey': ApiKey,
        'OAuthToken': OAuthToken
    };

    getTypeName() => "BaseRequest";
    TypeContext? context = _ctx;
}

// @DataContract
class BaseResponseResult implements IConvertible
{
    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")
    String? StatusCode;

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")
    String? Login;

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")
    String? ErrorCode;

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")
    String? ErrorDisplayText;

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")
    String? ErrorMessage;

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")
    String? DomainName;

    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")
    String? IpAddress;

    BaseResponseResult({this.StatusCode,this.Login,this.ErrorCode,this.ErrorDisplayText,this.ErrorMessage,this.DomainName,this.IpAddress});
    BaseResponseResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        StatusCode = json['StatusCode'];
        Login = json['Login'];
        ErrorCode = json['ErrorCode'];
        ErrorDisplayText = json['ErrorDisplayText'];
        ErrorMessage = json['ErrorMessage'];
        DomainName = json['DomainName'];
        IpAddress = json['IpAddress'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'StatusCode': StatusCode,
        'Login': Login,
        'ErrorCode': ErrorCode,
        'ErrorDisplayText': ErrorDisplayText,
        'ErrorMessage': ErrorMessage,
        'DomainName': DomainName,
        'IpAddress': IpAddress
    };

    getTypeName() => "BaseResponseResult";
    TypeContext? context = _ctx;
}

// @DataContract
class BaseResponse implements IConvertible
{
    /**
    * 
    */
    // @DataMember
    // @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")
    BaseResponseResult? Status;

    BaseResponse({this.Status});
    BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Status = JsonConverters.fromJson(json['Status'],'BaseResponseResult',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Status': JsonConverters.toJson(Status,'BaseResponseResult',context!)
    };

    getTypeName() => "BaseResponse";
    TypeContext? context = _ctx;
}

// @DataContract
class C2BDeliveryInfo implements IConvertible
{
    // @DataMember
    DateTime? FirstDelivery;

    // @DataMember
    DateTime? DeliveryTime;

    // @DataMember
    int? DeliveryThreshold;

    // @DataMember
    bool? SundayDelivery;

    // @DataMember
    bool? MondayDelivery;

    // @DataMember
    bool? TuesdayDelivery;

    // @DataMember
    bool? WednesdayDelivery;

    // @DataMember
    bool? ThursdayDelivery;

    // @DataMember
    bool? FridayDelivery;

    // @DataMember
    bool? SaturdayDelivery;

    C2BDeliveryInfo({this.FirstDelivery,this.DeliveryTime,this.DeliveryThreshold,this.SundayDelivery,this.MondayDelivery,this.TuesdayDelivery,this.WednesdayDelivery,this.ThursdayDelivery,this.FridayDelivery,this.SaturdayDelivery});
    C2BDeliveryInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        FirstDelivery = JsonConverters.fromJson(json['FirstDelivery'],'DateTime',context!);
        DeliveryTime = JsonConverters.fromJson(json['DeliveryTime'],'DateTime',context!);
        DeliveryThreshold = json['DeliveryThreshold'];
        SundayDelivery = json['SundayDelivery'];
        MondayDelivery = json['MondayDelivery'];
        TuesdayDelivery = json['TuesdayDelivery'];
        WednesdayDelivery = json['WednesdayDelivery'];
        ThursdayDelivery = json['ThursdayDelivery'];
        FridayDelivery = json['FridayDelivery'];
        SaturdayDelivery = json['SaturdayDelivery'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'FirstDelivery': JsonConverters.toJson(FirstDelivery,'DateTime',context!),
        'DeliveryTime': JsonConverters.toJson(DeliveryTime,'DateTime',context!),
        'DeliveryThreshold': DeliveryThreshold,
        'SundayDelivery': SundayDelivery,
        'MondayDelivery': MondayDelivery,
        'TuesdayDelivery': TuesdayDelivery,
        'WednesdayDelivery': WednesdayDelivery,
        'ThursdayDelivery': ThursdayDelivery,
        'FridayDelivery': FridayDelivery,
        'SaturdayDelivery': SaturdayDelivery
    };

    getTypeName() => "C2BDeliveryInfo";
    TypeContext? context = _ctx;
}

// @DataContract
class C2BTeacherGeneric implements IConvertible
{
    // @DataMember
    String? TeacherName;

    // @DataMember
    String? SchoolName;

    // @DataMember
    String? DistrictName;

    // @DataMember
    String? Topic;

    // @DataMember
    int? Id;

    // @DataMember
    C2BDeliveryInfo? DeliveryInfo;

    // @DataMember
    int? AIMSchoolId;

    C2BTeacherGeneric({this.TeacherName,this.SchoolName,this.DistrictName,this.Topic,this.Id,this.DeliveryInfo,this.AIMSchoolId});
    C2BTeacherGeneric.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        TeacherName = json['TeacherName'];
        SchoolName = json['SchoolName'];
        DistrictName = json['DistrictName'];
        Topic = json['Topic'];
        Id = json['Id'];
        DeliveryInfo = JsonConverters.fromJson(json['DeliveryInfo'],'C2BDeliveryInfo',context!);
        AIMSchoolId = json['AIMSchoolId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'TeacherName': TeacherName,
        'SchoolName': SchoolName,
        'DistrictName': DistrictName,
        'Topic': Topic,
        'Id': Id,
        'DeliveryInfo': JsonConverters.toJson(DeliveryInfo,'C2BDeliveryInfo',context!),
        'AIMSchoolId': AIMSchoolId
    };

    getTypeName() => "C2BTeacherGeneric";
    TypeContext? context = _ctx;
}

// @DataContract
class C2BGetTeacherInfoResponse extends BaseResponse implements IConvertible
{
    // @DataMember
    List<C2BTeacherGeneric>? Teachers;

    // @DataMember
    String? PlanCode;

    C2BGetTeacherInfoResponse({this.Teachers,this.PlanCode});
    C2BGetTeacherInfoResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        Teachers = JsonConverters.fromJson(json['Teachers'],'List<C2BTeacherGeneric>',context!);
        PlanCode = json['PlanCode'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'Teachers': JsonConverters.toJson(Teachers,'List<C2BTeacherGeneric>',context!),
        'PlanCode': PlanCode
    });

    getTypeName() => "C2BGetTeacherInfoResponse";
    TypeContext? context = _ctx;
}

/**
* C2BGetTeacherInfoRequires active-e Contracts Service.
*/
// @DataContract
class C2BGetTeacherInfoRequest extends BaseRequest implements IConvertible
{
    /**
    * If sent, only teachers associated with the sent plan code will be returned.
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="If sent, only teachers associated with the sent plan code will be returned.", Name="PlanCode", ParameterType="query")
    String? PlanCode;

    /**
    * If sent, only teachers associated with the sent school will be returned.
    */
    // @DataMember
    // @ApiMember(DataType="integer", Description="If sent, only teachers associated with the sent school will be returned.", Format="int64", Name="SchoolId", ParameterType="query")
    int? SchoolId;

    /**
    * If sent, only info for the sent teacher will be returned.
    */
    // @DataMember
    // @ApiMember(DataType="integer", Description="If sent, only info for the sent teacher will be returned.", Format="int64", Name="DistrictId", ParameterType="query")
    int? TeacherId;

    /**
    * ID of the Instrument record. Optional.
    */
    // @DataMember
    // @ApiMember(DataType="integer", Description="ID of the Instrument record. Optional.", Format="int64", Name="RinPk", ParameterType="query")
    int? RinPk;

    /**
    * Optional Request Type. Valid values are Contract and Shipping.
    */
    // @DataMember
    // @ApiMember(DataType="string", Description="Optional Request Type. Valid values are Contract and Shipping.", Name="RequestType", ParameterType="query")
    String? RequestType;

    C2BGetTeacherInfoRequest({this.PlanCode,this.SchoolId,this.TeacherId,this.RinPk,this.RequestType});
    C2BGetTeacherInfoRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        PlanCode = json['PlanCode'];
        SchoolId = json['SchoolId'];
        TeacherId = json['TeacherId'];
        RinPk = json['RinPk'];
        RequestType = json['RequestType'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'PlanCode': PlanCode,
        'SchoolId': SchoolId,
        'TeacherId': TeacherId,
        'RinPk': RinPk,
        'RequestType': RequestType
    });

    getTypeName() => "C2BGetTeacherInfoRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'active_ewebservice.biz', types: <String, TypeInfo> {
    'BaseRequest': TypeInfo(TypeOf.Class, create:() => BaseRequest()),
    'BaseResponseResult': TypeInfo(TypeOf.Class, create:() => BaseResponseResult()),
    'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()),
    'C2BDeliveryInfo': TypeInfo(TypeOf.Class, create:() => C2BDeliveryInfo()),
    'C2BTeacherGeneric': TypeInfo(TypeOf.Class, create:() => C2BTeacherGeneric()),
    'C2BGetTeacherInfoResponse': TypeInfo(TypeOf.Class, create:() => C2BGetTeacherInfoResponse()),
    'List<C2BTeacherGeneric>': TypeInfo(TypeOf.Class, create:() => <C2BTeacherGeneric>[]),
    'C2BGetTeacherInfoRequest': TypeInfo(TypeOf.Class, create:() => C2BGetTeacherInfoRequest()),
});

Dart C2BGetTeacherInfoRequest 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/C2BGetTeacherInfo HTTP/1.1 
Host: active-ewebservice.biz 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<C2BGetTeacherInfoRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService">
  <ApiKey>String</ApiKey>
  <OAuthToken>String</OAuthToken>
  <PlanCode>String</PlanCode>
  <RequestType>String</RequestType>
  <RinPk>0</RinPk>
  <SchoolId>0</SchoolId>
  <TeacherId>0</TeacherId>
</C2BGetTeacherInfoRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<C2BGetTeacherInfoResponse 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>
  <PlanCode>String</PlanCode>
  <Teachers xmlns:d2p1="http://schemas.datacontract.org/2004/07/AIM">
    <d2p1:C2BTeacherGeneric i:nil="true" />
  </Teachers>
</C2BGetTeacherInfoResponse>