regis

<back to all web services

CRMApplicationUpsertMultipleRequest

Requires Authentication
Required permission:UpdateApplication
The following routes are available for this service:
POST/DynamicsCRM/Application/Upsert/Multiple
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CRMApplicationLanguageTestCreateRequest:
    type: Optional[str] = None
    test_date: Optional[datetime.datetime] = None
    score: Optional[Decimal] = None
    applicant_defined: bool = False
    status: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CRMApplicationRefereeCreateRequest:
    import_id: int = 0
    first_name: Optional[str] = None
    last_name: Optional[str] = None
    job_title: Optional[str] = None
    email: Optional[str] = None
    phone: Optional[str] = None
    type: Optional[str] = None
    full_name: Optional[str] = None
    position: Optional[str] = None
    organization: Optional[str] = None
    email_from_referee: Optional[str] = None
    relationship: Optional[str] = None
    relationship_details: Optional[str] = None
    personal_evaluation: Optional[str] = None
    ability_question_1: Optional[int] = None
    ability_question_2: Optional[int] = None
    ability_question_3: Optional[int] = None
    ability_question_4: Optional[int] = None
    ability_question_5: Optional[int] = None
    ability_question_6: Optional[int] = None
    ability_question_7: Optional[int] = None
    ability_question_8: Optional[int] = None
    ability_question_9: Optional[int] = None
    ability_question_10: Optional[int] = None
    qualify_assessment: Optional[str] = None
    recommendation: Optional[str] = None
    recommendation_details: Optional[str] = None
    is_regent_alum: bool = False
    is_complete: bool = False
    email_sent: Optional[datetime.datetime] = None
    submitted_date: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CRMApplicationRequirementCreateRequest:
    status: Optional[str] = None
    requirement_name: Optional[str] = None
    requested_date: Optional[datetime.datetime] = None
    received_date: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CRMEducationUpsertRequest:
    regent_id: int = 0
    import_id: Optional[int] = None
    institution_regent_id: Optional[int] = None
    application_guid: Optional[str] = None
    degree_status: Optional[str] = None
    degree_type: Optional[str] = None
    unofficial_institution_name: Optional[str] = None
    unofficial_degree_name: Optional[str] = None
    degree_name: Optional[str] = None
    degree_code: Optional[str] = None
    description: Optional[str] = None
    major: Optional[str] = None
    second_major: Optional[str] = None
    cumulative_gpa: Optional[Decimal] = None
    is_final: bool = False
    is_regis_external_degree: bool = False
    start_year: Optional[int] = None
    end_year: Optional[int] = None
    month_graduated: Optional[int] = None
    year_graduated: Optional[int] = None
    added_date: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CRMApplicationCreateRequest:
    regent_id: int = 0
    import_id: int = 0
    application_name: Optional[str] = None
    academic_program: Optional[str] = None
    start_term: Optional[str] = None
    location: Optional[str] = None
    addr1: Optional[str] = None
    addr2: Optional[str] = None
    city: Optional[str] = None
    state: Optional[str] = None
    country: Optional[str] = None
    code: Optional[str] = None
    former_name: Optional[str] = None
    citizenship: Optional[str] = None
    citizenship_other: Optional[str] = None
    permanent_resident: Optional[str] = None
    spouse_name: Optional[str] = None
    children: Optional[str] = None
    native_english_speaker: bool = False
    native_language: Optional[str] = None
    birth_place: Optional[str] = None
    residency_status: Optional[str] = None
    language_test_exemption_request_date: Optional[datetime.datetime] = None
    language_test_exemption_decision_date: Optional[datetime.datetime] = None
    language_test_exemption_decision: Optional[str] = None
    language_test_comment: Optional[str] = None
    language_tests: Optional[List[CRMApplicationLanguageTestCreateRequest]] = None
    references: Optional[List[CRMApplicationRefereeCreateRequest]] = None
    requirements: Optional[List[CRMApplicationRequirementCreateRequest]] = None
    education: Optional[List[CRMEducationUpsertRequest]] = None
    church_attended: Optional[str] = None
    pastor_first_name: Optional[str] = None
    pastor_last_name: Optional[str] = None
    has_impairment: bool = False
    impairment_description: Optional[str] = None
    apply_for_financial_aid: bool = False
    financial_description: Optional[str] = None
    employment_years: Optional[Decimal] = None
    employment_description: Optional[str] = None
    church_volunteer_years: Optional[Decimal] = None
    church_volunteer_description: Optional[str] = None
    other_volunteer_years: Optional[Decimal] = None
    other_volunteer_description: Optional[str] = None
    accomplishments_description: Optional[str] = None
    what_other_graduate_schools_are_you_apply: Optional[str] = None
    what_else_interests_you_about_regent: Optional[str] = None
    heard_about_regent_from_book: Optional[str] = None
    heard_about_regent_from_event: Optional[str] = None
    heard_about_regent_from_organization: Optional[str] = None
    heard_about_regent_from_person: Optional[str] = None
    heard_about_regent_from_website_pub: Optional[str] = None
    what_interests_you_about_regent: Optional[List[str]] = None
    what_else_brought_you_to_regent: Optional[str] = None
    start_via_distance_ed: bool = False
    transfer_credits: bool = False
    applicant_comments: Optional[str] = None
    cumulative_undergraduate_gpa: Optional[Decimal] = None
    cumulative_graduate_gpa: Optional[Decimal] = None
    conditional_admission: bool = False
    conditional_admission_reason: Optional[List[str]] = None
    admission_notes: Optional[str] = None
    admission_decision_notes: Optional[str] = None
    withdrawn_reason: Optional[str] = None
    submitted: Optional[datetime.datetime] = None
    paid: Optional[datetime.datetime] = None
    reviewed: Optional[datetime.datetime] = None
    completed: Optional[datetime.datetime] = None
    rejected: Optional[datetime.datetime] = None
    admitted: Optional[datetime.datetime] = None
    postponed: Optional[datetime.datetime] = None
    withdrawn: Optional[datetime.datetime] = None
    confirmed: Optional[datetime.datetime] = None
    read_theological_position: Optional[datetime.datetime] = None
    current_status: Optional[str] = None
    image_base64: Optional[str] = None
    promo_code: Optional[str] = None
    added_date: datetime.datetime = datetime.datetime(1, 1, 1)
    last_contacted_date: Optional[datetime.datetime] = None
    owning_username: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CRMApplicationUpsertMultipleRequest:
    applications: Optional[List[CRMApplicationCreateRequest]] = None

Python CRMApplicationUpsertMultipleRequest 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/Application/Upsert/Multiple HTTP/1.1 
Host: data.regent-college.edu 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	applications: 
	[
		{
			regent_id: 0,
			import_id: 0,
			application_name: String,
			academic_program: String,
			start_term: String,
			location: String,
			addr1: String,
			addr2: String,
			city: String,
			state: String,
			country: String,
			code: String,
			former_name: String,
			citizenship: String,
			citizenship_other: String,
			permanent_resident: String,
			spouse_name: String,
			children: String,
			native_english_speaker: False,
			native_language: String,
			birth_place: String,
			residency_status: String,
			language_test_exemption_request_date: 0001-01-01,
			language_test_exemption_decision_date: 0001-01-01,
			language_test_exemption_decision: String,
			language_test_comment: String,
			language_tests: 
			[
				{
					type: String,
					test_date: 0001-01-01,
					score: 0,
					applicant_defined: False,
					status: String
				}
			],
			references: 
			[
				{
					import_id: 0,
					first_name: String,
					last_name: String,
					job_title: String,
					email: String,
					phone: String,
					type: String,
					full_name: String,
					position: String,
					organization: String,
					email_from_referee: String,
					relationship: String,
					relationship_details: String,
					personal_evaluation: String,
					ability_question_1: 0,
					ability_question_2: 0,
					ability_question_3: 0,
					ability_question_4: 0,
					ability_question_5: 0,
					ability_question_6: 0,
					ability_question_7: 0,
					ability_question_8: 0,
					ability_question_9: 0,
					ability_question_10: 0,
					qualify_assessment: String,
					recommendation: String,
					recommendation_details: String,
					is_regent_alum: False,
					is_complete: False,
					email_sent: 0001-01-01,
					submitted_date: 0001-01-01
				}
			],
			requirements: 
			[
				{
					status: String,
					requirement_name: String,
					requested_date: 0001-01-01,
					received_date: 0001-01-01
				}
			],
			education: 
			[
				{
					regent_id: 0,
					import_id: 0,
					institution_regent_id: 0,
					application_guid: String,
					degree_status: String,
					degree_type: String,
					unofficial_institution_name: String,
					unofficial_degree_name: String,
					degree_name: String,
					degree_code: String,
					description: String,
					major: String,
					second_major: String,
					cumulative_gpa: 0,
					is_final: False,
					is_regis_external_degree: False,
					start_year: 0,
					end_year: 0,
					month_graduated: 0,
					year_graduated: 0,
					added_date: 0001-01-01
				}
			],
			church_attended: String,
			pastor_first_name: String,
			pastor_last_name: String,
			has_impairment: False,
			impairment_description: String,
			apply_for_financial_aid: False,
			financial_description: String,
			employment_years: 0,
			employment_description: String,
			church_volunteer_years: 0,
			church_volunteer_description: String,
			other_volunteer_years: 0,
			other_volunteer_description: String,
			accomplishments_description: String,
			what_other_graduate_schools_are_you_apply: String,
			what_else_interests_you_about_regent: String,
			heard_about_regent_from_book: String,
			heard_about_regent_from_event: String,
			heard_about_regent_from_organization: String,
			heard_about_regent_from_person: String,
			heard_about_regent_from_website_pub: String,
			what_interests_you_about_regent: 
			[
				String
			],
			what_else_brought_you_to_regent: String,
			start_via_distance_ed: False,
			transfer_credits: False,
			applicant_comments: String,
			cumulative_undergraduate_gpa: 0,
			cumulative_graduate_gpa: 0,
			conditional_admission: False,
			conditional_admission_reason: 
			[
				String
			],
			admission_notes: String,
			admission_decision_notes: String,
			withdrawn_reason: String,
			submitted: 0001-01-01,
			paid: 0001-01-01,
			reviewed: 0001-01-01,
			completed: 0001-01-01,
			rejected: 0001-01-01,
			admitted: 0001-01-01,
			postponed: 0001-01-01,
			withdrawn: 0001-01-01,
			confirmed: 0001-01-01,
			read_theological_position: 0001-01-01,
			current_status: String,
			image_base64: String,
			promo_code: String,
			added_date: 0001-01-01,
			last_contacted_date: 0001-01-01,
			owning_username: String
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	errorCode: String,
	message: String,
	stackTrace: String,
	errors: 
	[
		{
			errorCode: String,
			fieldName: String,
			message: String,
			meta: 
			{
				String: String
			}
		}
	],
	meta: 
	{
		String: String
	}
}