regis

<back to all web services

CRMContactRequest

Requires Authentication
Required role:REGISUserRole
The following routes are available for this service:
POST/DynamicsCRM/Contact/{regent_id}
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class CRMContactResponse implements IConvertible
{
    ResponseStatus? responseStatus;
    String? guid;
    int? regent_id;
    String? full_name;
    String? first_name;
    String? last_name;
    String? middle_name;
    String? preferred_name;
    String? former_name;
    String? prefix;
    String? addressee;
    String? primary_salutation;
    String? spouse_name;
    bool? spouse_is_main_contact;
    String? addr1;
    String? addr2;
    String? city;
    String? state;
    String? country;
    String? code;
    String? citizenship;
    String? citizenship_other;
    String? permanent_resident;
    DateTime? dob;
    String? birth_month;
    DateTime? deceased_date;
    int? age;
    String? denomination;
    String? connection_to_regent;
    String? student_status;
    String? student_segment;
    int? engagement_score;
    String? reason_added;
    String? gender;
    String? marital_status;
    bool? financial_aid_received;
    bool? is_applicant;
    String? solicitation_method;
    String? solicitation_exceptions;
    bool? campaign_monitor_optin;
    bool? campaign_monitor_suppressed;
    DateTime? campaign_monitor_last_event_date;
    DateTime? campaign_monitor_last_reframe_purchase_dt;
    String? consent_to_receive_bulk_email;
    String? last_consent_source;
    DateTime? last_consent_date;
    String? campaign_monitor_lists;
    String? email;
    String? email_secondary;
    String? phone_home;
    String? phone_bus;
    String? phone_cell;
    bool? no_mail;
    bool? no_email;
    bool? no_bulk_email;
    bool? no_phone;
    bool? no_marketing_materials;
    bool? prefers_email;
    bool? prefers_phone;
    String? added_by;
    DateTime? added_date;
    String? changed_by;
    DateTime? changed_date;
    String? current_program;
    double? total_audit_hours;
    double? total_credit_hours;
    DateTime? last_credit_class;
    DateTime? last_audit_class;
    DateTime? last_oncampus_class;
    DateTime? last_distance_education_class;
    DateTime? last_evening_weekend_class;
    DateTime? last_summer_class;
    DateTime? last_marketplace_class;
    DateTime? last_anglican_studies_class;
    String? all_terms_registered;
    String? all_terms_registered_onsite;
    String? all_terms_registered_online;
    bool? has_regent_degree;
    String? owner_full_name;

    CRMContactResponse({this.responseStatus,this.guid,this.regent_id,this.full_name,this.first_name,this.last_name,this.middle_name,this.preferred_name,this.former_name,this.prefix,this.addressee,this.primary_salutation,this.spouse_name,this.spouse_is_main_contact,this.addr1,this.addr2,this.city,this.state,this.country,this.code,this.citizenship,this.citizenship_other,this.permanent_resident,this.dob,this.birth_month,this.deceased_date,this.age,this.denomination,this.connection_to_regent,this.student_status,this.student_segment,this.engagement_score,this.reason_added,this.gender,this.marital_status,this.financial_aid_received,this.is_applicant,this.solicitation_method,this.solicitation_exceptions,this.campaign_monitor_optin,this.campaign_monitor_suppressed,this.campaign_monitor_last_event_date,this.campaign_monitor_last_reframe_purchase_dt,this.consent_to_receive_bulk_email,this.last_consent_source,this.last_consent_date,this.campaign_monitor_lists,this.email,this.email_secondary,this.phone_home,this.phone_bus,this.phone_cell,this.no_mail,this.no_email,this.no_bulk_email,this.no_phone,this.no_marketing_materials,this.prefers_email,this.prefers_phone,this.added_by,this.added_date,this.changed_by,this.changed_date,this.current_program,this.total_audit_hours,this.total_credit_hours,this.last_credit_class,this.last_audit_class,this.last_oncampus_class,this.last_distance_education_class,this.last_evening_weekend_class,this.last_summer_class,this.last_marketplace_class,this.last_anglican_studies_class,this.all_terms_registered,this.all_terms_registered_onsite,this.all_terms_registered_online,this.has_regent_degree,this.owner_full_name});
    CRMContactResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        guid = json['guid'];
        regent_id = json['regent_id'];
        full_name = json['full_name'];
        first_name = json['first_name'];
        last_name = json['last_name'];
        middle_name = json['middle_name'];
        preferred_name = json['preferred_name'];
        former_name = json['former_name'];
        prefix = json['prefix'];
        addressee = json['addressee'];
        primary_salutation = json['primary_salutation'];
        spouse_name = json['spouse_name'];
        spouse_is_main_contact = json['spouse_is_main_contact'];
        addr1 = json['addr1'];
        addr2 = json['addr2'];
        city = json['city'];
        state = json['state'];
        country = json['country'];
        code = json['code'];
        citizenship = json['citizenship'];
        citizenship_other = json['citizenship_other'];
        permanent_resident = json['permanent_resident'];
        dob = JsonConverters.fromJson(json['dob'],'DateTime',context!);
        birth_month = json['birth_month'];
        deceased_date = JsonConverters.fromJson(json['deceased_date'],'DateTime',context!);
        age = json['age'];
        denomination = json['denomination'];
        connection_to_regent = json['connection_to_regent'];
        student_status = json['student_status'];
        student_segment = json['student_segment'];
        engagement_score = json['engagement_score'];
        reason_added = json['reason_added'];
        gender = json['gender'];
        marital_status = json['marital_status'];
        financial_aid_received = json['financial_aid_received'];
        is_applicant = json['is_applicant'];
        solicitation_method = json['solicitation_method'];
        solicitation_exceptions = json['solicitation_exceptions'];
        campaign_monitor_optin = json['campaign_monitor_optin'];
        campaign_monitor_suppressed = json['campaign_monitor_suppressed'];
        campaign_monitor_last_event_date = JsonConverters.fromJson(json['campaign_monitor_last_event_date'],'DateTime',context!);
        campaign_monitor_last_reframe_purchase_dt = JsonConverters.fromJson(json['campaign_monitor_last_reframe_purchase_dt'],'DateTime',context!);
        consent_to_receive_bulk_email = json['consent_to_receive_bulk_email'];
        last_consent_source = json['last_consent_source'];
        last_consent_date = JsonConverters.fromJson(json['last_consent_date'],'DateTime',context!);
        campaign_monitor_lists = json['campaign_monitor_lists'];
        email = json['email'];
        email_secondary = json['email_secondary'];
        phone_home = json['phone_home'];
        phone_bus = json['phone_bus'];
        phone_cell = json['phone_cell'];
        no_mail = json['no_mail'];
        no_email = json['no_email'];
        no_bulk_email = json['no_bulk_email'];
        no_phone = json['no_phone'];
        no_marketing_materials = json['no_marketing_materials'];
        prefers_email = json['prefers_email'];
        prefers_phone = json['prefers_phone'];
        added_by = json['added_by'];
        added_date = JsonConverters.fromJson(json['added_date'],'DateTime',context!);
        changed_by = json['changed_by'];
        changed_date = JsonConverters.fromJson(json['changed_date'],'DateTime',context!);
        current_program = json['current_program'];
        total_audit_hours = JsonConverters.toDouble(json['total_audit_hours']);
        total_credit_hours = JsonConverters.toDouble(json['total_credit_hours']);
        last_credit_class = JsonConverters.fromJson(json['last_credit_class'],'DateTime',context!);
        last_audit_class = JsonConverters.fromJson(json['last_audit_class'],'DateTime',context!);
        last_oncampus_class = JsonConverters.fromJson(json['last_oncampus_class'],'DateTime',context!);
        last_distance_education_class = JsonConverters.fromJson(json['last_distance_education_class'],'DateTime',context!);
        last_evening_weekend_class = JsonConverters.fromJson(json['last_evening_weekend_class'],'DateTime',context!);
        last_summer_class = JsonConverters.fromJson(json['last_summer_class'],'DateTime',context!);
        last_marketplace_class = JsonConverters.fromJson(json['last_marketplace_class'],'DateTime',context!);
        last_anglican_studies_class = JsonConverters.fromJson(json['last_anglican_studies_class'],'DateTime',context!);
        all_terms_registered = json['all_terms_registered'];
        all_terms_registered_onsite = json['all_terms_registered_onsite'];
        all_terms_registered_online = json['all_terms_registered_online'];
        has_regent_degree = json['has_regent_degree'];
        owner_full_name = json['owner_full_name'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
        'guid': guid,
        'regent_id': regent_id,
        'full_name': full_name,
        'first_name': first_name,
        'last_name': last_name,
        'middle_name': middle_name,
        'preferred_name': preferred_name,
        'former_name': former_name,
        'prefix': prefix,
        'addressee': addressee,
        'primary_salutation': primary_salutation,
        'spouse_name': spouse_name,
        'spouse_is_main_contact': spouse_is_main_contact,
        'addr1': addr1,
        'addr2': addr2,
        'city': city,
        'state': state,
        'country': country,
        'code': code,
        'citizenship': citizenship,
        'citizenship_other': citizenship_other,
        'permanent_resident': permanent_resident,
        'dob': JsonConverters.toJson(dob,'DateTime',context!),
        'birth_month': birth_month,
        'deceased_date': JsonConverters.toJson(deceased_date,'DateTime',context!),
        'age': age,
        'denomination': denomination,
        'connection_to_regent': connection_to_regent,
        'student_status': student_status,
        'student_segment': student_segment,
        'engagement_score': engagement_score,
        'reason_added': reason_added,
        'gender': gender,
        'marital_status': marital_status,
        'financial_aid_received': financial_aid_received,
        'is_applicant': is_applicant,
        'solicitation_method': solicitation_method,
        'solicitation_exceptions': solicitation_exceptions,
        'campaign_monitor_optin': campaign_monitor_optin,
        'campaign_monitor_suppressed': campaign_monitor_suppressed,
        'campaign_monitor_last_event_date': JsonConverters.toJson(campaign_monitor_last_event_date,'DateTime',context!),
        'campaign_monitor_last_reframe_purchase_dt': JsonConverters.toJson(campaign_monitor_last_reframe_purchase_dt,'DateTime',context!),
        'consent_to_receive_bulk_email': consent_to_receive_bulk_email,
        'last_consent_source': last_consent_source,
        'last_consent_date': JsonConverters.toJson(last_consent_date,'DateTime',context!),
        'campaign_monitor_lists': campaign_monitor_lists,
        'email': email,
        'email_secondary': email_secondary,
        'phone_home': phone_home,
        'phone_bus': phone_bus,
        'phone_cell': phone_cell,
        'no_mail': no_mail,
        'no_email': no_email,
        'no_bulk_email': no_bulk_email,
        'no_phone': no_phone,
        'no_marketing_materials': no_marketing_materials,
        'prefers_email': prefers_email,
        'prefers_phone': prefers_phone,
        'added_by': added_by,
        'added_date': JsonConverters.toJson(added_date,'DateTime',context!),
        'changed_by': changed_by,
        'changed_date': JsonConverters.toJson(changed_date,'DateTime',context!),
        'current_program': current_program,
        'total_audit_hours': total_audit_hours,
        'total_credit_hours': total_credit_hours,
        'last_credit_class': JsonConverters.toJson(last_credit_class,'DateTime',context!),
        'last_audit_class': JsonConverters.toJson(last_audit_class,'DateTime',context!),
        'last_oncampus_class': JsonConverters.toJson(last_oncampus_class,'DateTime',context!),
        'last_distance_education_class': JsonConverters.toJson(last_distance_education_class,'DateTime',context!),
        'last_evening_weekend_class': JsonConverters.toJson(last_evening_weekend_class,'DateTime',context!),
        'last_summer_class': JsonConverters.toJson(last_summer_class,'DateTime',context!),
        'last_marketplace_class': JsonConverters.toJson(last_marketplace_class,'DateTime',context!),
        'last_anglican_studies_class': JsonConverters.toJson(last_anglican_studies_class,'DateTime',context!),
        'all_terms_registered': all_terms_registered,
        'all_terms_registered_onsite': all_terms_registered_onsite,
        'all_terms_registered_online': all_terms_registered_online,
        'has_regent_degree': has_regent_degree,
        'owner_full_name': owner_full_name
    };

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

class CRMContactRequest implements IConvertible
{
    int? regent_id;

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

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

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

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

TypeContext _ctx = TypeContext(library: 'data.regent_college.edu', types: <String, TypeInfo> {
    'CRMContactResponse': TypeInfo(TypeOf.Class, create:() => CRMContactResponse()),
    'CRMContactRequest': TypeInfo(TypeOf.Class, create:() => CRMContactRequest()),
});

Dart CRMContactRequest 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 /DynamicsCRM/Contact/{regent_id} HTTP/1.1 
Host: data.regent-college.edu 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	regent_id: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	},
	guid: String,
	regent_id: 0,
	full_name: String,
	first_name: String,
	last_name: String,
	middle_name: String,
	preferred_name: String,
	former_name: String,
	prefix: String,
	addressee: String,
	primary_salutation: String,
	spouse_name: String,
	spouse_is_main_contact: False,
	addr1: String,
	addr2: String,
	city: String,
	state: String,
	country: String,
	code: String,
	citizenship: String,
	citizenship_other: String,
	permanent_resident: String,
	dob: 0001-01-01,
	birth_month: String,
	deceased_date: 0001-01-01,
	age: 0,
	denomination: String,
	connection_to_regent: String,
	student_status: String,
	student_segment: String,
	engagement_score: 0,
	reason_added: String,
	gender: String,
	marital_status: String,
	financial_aid_received: False,
	is_applicant: False,
	solicitation_method: String,
	solicitation_exceptions: String,
	campaign_monitor_optin: False,
	campaign_monitor_suppressed: False,
	campaign_monitor_last_event_date: 0001-01-01,
	campaign_monitor_last_reframe_purchase_dt: 0001-01-01,
	consent_to_receive_bulk_email: String,
	last_consent_source: String,
	last_consent_date: 0001-01-01,
	campaign_monitor_lists: String,
	email: String,
	email_secondary: String,
	phone_home: String,
	phone_bus: String,
	phone_cell: String,
	no_mail: False,
	no_email: False,
	no_bulk_email: False,
	no_phone: False,
	no_marketing_materials: False,
	prefers_email: False,
	prefers_phone: False,
	added_by: String,
	added_date: 0001-01-01,
	changed_by: String,
	changed_date: 0001-01-01,
	current_program: String,
	total_audit_hours: 0,
	total_credit_hours: 0,
	last_credit_class: 0001-01-01,
	last_audit_class: 0001-01-01,
	last_oncampus_class: 0001-01-01,
	last_distance_education_class: 0001-01-01,
	last_evening_weekend_class: 0001-01-01,
	last_summer_class: 0001-01-01,
	last_marketplace_class: 0001-01-01,
	last_anglican_studies_class: 0001-01-01,
	all_terms_registered: String,
	all_terms_registered_onsite: String,
	all_terms_registered_online: String,
	has_regent_degree: False,
	owner_full_name: String
}