Required permission: | CreatePerson |
POST | /person/create |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class PersonCreateResponse implements IConvertible
{
ResponseStatus? responseStatus;
int? regent_id;
String? uuid;
PersonCreateResponse({this.responseStatus,this.regent_id,this.uuid});
PersonCreateResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
regent_id = json['regent_id'];
uuid = json['uuid'];
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
'regent_id': regent_id,
'uuid': uuid
};
getTypeName() => "PersonCreateResponse";
TypeContext? context = _ctx;
}
class PersonCreateRequest implements IConvertible
{
String? first_name;
String? middle_name;
String? last_name;
String? preferred_name;
String? birth_name;
String? prefix;
String? addr1;
String? addr2;
String? country;
String? state;
String? city;
String? code;
String? phone_home;
String? phone_cell;
String? phone_bus;
String? email;
DateTime? dob;
String? citizenship;
String? citizenship_other;
String? permanent_resident;
String? denomination;
String? occupation;
String? ethnicity;
String? gender;
String? marital_status;
DateTime? deceased_date;
bool? do_not_queue_for_crm;
String? authorizing_uuid;
PersonCreateRequest({this.first_name,this.middle_name,this.last_name,this.preferred_name,this.birth_name,this.prefix,this.addr1,this.addr2,this.country,this.state,this.city,this.code,this.phone_home,this.phone_cell,this.phone_bus,this.email,this.dob,this.citizenship,this.citizenship_other,this.permanent_resident,this.denomination,this.occupation,this.ethnicity,this.gender,this.marital_status,this.deceased_date,this.do_not_queue_for_crm,this.authorizing_uuid});
PersonCreateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
first_name = json['first_name'];
middle_name = json['middle_name'];
last_name = json['last_name'];
preferred_name = json['preferred_name'];
birth_name = json['birth_name'];
prefix = json['prefix'];
addr1 = json['addr1'];
addr2 = json['addr2'];
country = json['country'];
state = json['state'];
city = json['city'];
code = json['code'];
phone_home = json['phone_home'];
phone_cell = json['phone_cell'];
phone_bus = json['phone_bus'];
email = json['email'];
dob = JsonConverters.fromJson(json['dob'],'DateTime',context!);
citizenship = json['citizenship'];
citizenship_other = json['citizenship_other'];
permanent_resident = json['permanent_resident'];
denomination = json['denomination'];
occupation = json['occupation'];
ethnicity = json['ethnicity'];
gender = json['gender'];
marital_status = json['marital_status'];
deceased_date = JsonConverters.fromJson(json['deceased_date'],'DateTime',context!);
do_not_queue_for_crm = json['do_not_queue_for_crm'];
authorizing_uuid = json['authorizing_uuid'];
return this;
}
Map<String, dynamic> toJson() => {
'first_name': first_name,
'middle_name': middle_name,
'last_name': last_name,
'preferred_name': preferred_name,
'birth_name': birth_name,
'prefix': prefix,
'addr1': addr1,
'addr2': addr2,
'country': country,
'state': state,
'city': city,
'code': code,
'phone_home': phone_home,
'phone_cell': phone_cell,
'phone_bus': phone_bus,
'email': email,
'dob': JsonConverters.toJson(dob,'DateTime',context!),
'citizenship': citizenship,
'citizenship_other': citizenship_other,
'permanent_resident': permanent_resident,
'denomination': denomination,
'occupation': occupation,
'ethnicity': ethnicity,
'gender': gender,
'marital_status': marital_status,
'deceased_date': JsonConverters.toJson(deceased_date,'DateTime',context!),
'do_not_queue_for_crm': do_not_queue_for_crm,
'authorizing_uuid': authorizing_uuid
};
getTypeName() => "PersonCreateRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'data.regent_college.edu', types: <String, TypeInfo> {
'PersonCreateResponse': TypeInfo(TypeOf.Class, create:() => PersonCreateResponse()),
'PersonCreateRequest': TypeInfo(TypeOf.Class, create:() => PersonCreateRequest()),
});
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 /person/create HTTP/1.1
Host: data.regent-college.edu
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
first_name: String,
middle_name: String,
last_name: String,
preferred_name: String,
birth_name: String,
prefix: String,
addr1: String,
addr2: String,
country: String,
state: String,
city: String,
code: String,
phone_home: String,
phone_cell: String,
phone_bus: String,
email: String,
dob: 0001-01-01,
citizenship: String,
citizenship_other: String,
permanent_resident: String,
denomination: String,
occupation: String,
ethnicity: String,
gender: String,
marital_status: String,
deceased_date: 0001-01-01,
do_not_queue_for_crm: False,
authorizing_uuid: String
}
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 } }, regent_id: 0, uuid: String }