Required role: | REGISUserRole |
POST | /DynamicsCRM/Contact/Create |
---|
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 CRMContactCreateRequest:
regent_id: Optional[int] = None
first_name: Optional[str] = None
last_name: Optional[str] = None
middle_name: Optional[str] = None
preferred_name: Optional[str] = None
prefix: Optional[str] = None
addressee: Optional[str] = None
primary_salutation: Optional[str] = None
former_name: Optional[str] = None
spouse_name: Optional[str] = None
spouse_is_main_contact: bool = False
addr1: Optional[str] = None
addr2: Optional[str] = None
city: Optional[str] = None
state: Optional[str] = None
country: Optional[str] = None
code: Optional[str] = None
dob: Optional[datetime.datetime] = None
deceased_date: Optional[datetime.datetime] = None
citizenship: Optional[str] = None
citizenship_other: Optional[str] = None
permanent_resident: Optional[str] = None
denomination: Optional[str] = None
connection_to_regent: Optional[str] = None
student_segment: Optional[str] = None
reason_added: Optional[str] = None
gender: Optional[str] = None
marital_status: Optional[str] = None
financial_aid_received: bool = False
is_applicant: bool = False
solicitation_method: Optional[str] = None
solicitation_exceptions: Optional[str] = None
campaign_monitor_optin: bool = False
campaign_monitor_suppressed: bool = False
campaign_monitor_lists: Optional[str] = None
email: Optional[str] = None
email_secondary: Optional[str] = None
phone_home: Optional[str] = None
phone_bus: Optional[str] = None
phone_cell: Optional[str] = None
no_mail: bool = False
no_email: bool = False
no_bulk_email: bool = False
no_phone: bool = False
no_marketing_materials: bool = False
prefers_email: bool = False
prefers_phone: bool = False
last_credit_class: Optional[datetime.datetime] = None
last_audit_class: Optional[datetime.datetime] = None
last_oncampus_class: Optional[datetime.datetime] = None
last_distance_education_class: Optional[datetime.datetime] = None
last_evening_weekend_class: Optional[datetime.datetime] = None
last_summer_class: Optional[datetime.datetime] = None
last_marketplace_class: Optional[datetime.datetime] = None
last_anglican_studies_class: Optional[datetime.datetime] = None
image_base64: Optional[str] = None
owning_username: Optional[str] = None
Python CRMContactCreateRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /DynamicsCRM/Contact/Create HTTP/1.1
Host: data.regent-college.edu
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
regent_id: 0,
first_name: String,
last_name: String,
middle_name: String,
preferred_name: String,
prefix: String,
addressee: String,
primary_salutation: String,
former_name: String,
spouse_name: String,
spouse_is_main_contact: False,
addr1: String,
addr2: String,
city: String,
state: String,
country: String,
code: String,
dob: 0001-01-01,
deceased_date: 0001-01-01,
citizenship: String,
citizenship_other: String,
permanent_resident: String,
denomination: String,
connection_to_regent: String,
student_segment: String,
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_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,
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,
image_base64: String,
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 } }