MyApp

<back to all web services

QueryContacts

Talent
namespace MyApp.ServiceModel

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    type EmploymentType =
        | FullTime = 0
        | PartTime = 1
        | Casual = 2
        | Contract = 3

    [<DataContract>]
    [<AllowNullLiteral>]
    type AuditBase() = 
        [<DataMember(Order=1)>]
        member val CreatedDate:DateTime = new DateTime() with get,set

        [<DataMember(Order=2)>]
        [<Required>]
        member val CreatedBy:String = null with get,set

        [<DataMember(Order=3)>]
        member val ModifiedDate:DateTime = new DateTime() with get,set

        [<DataMember(Order=4)>]
        [<Required>]
        member val ModifiedBy:String = null with get,set

        [<DataMember(Order=5)>]
        member val DeletedDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember(Order=6)>]
        member val DeletedBy:String = null with get,set

    [<AllowNullLiteral>]
    type Job() = 
        inherit AuditBase()
        member val Id:Int32 = new Int32() with get,set
        member val Title:String = null with get,set
        member val EmploymentType:EmploymentType = new EmploymentType() with get,set
        member val Company:String = null with get,set
        member val Location:String = null with get,set
        member val SalaryRangeLower:Int32 = new Int32() with get,set
        member val SalaryRangeUpper:Int32 = new Int32() with get,set
        member val Description:String = null with get,set
        member val Applications:ResizeArray<JobApplication> = new ResizeArray<JobApplication>() with get,set
        member val Closing:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type AppUser() = 
        member val Id:String = null with get,set
        member val FirstName:String = null with get,set
        member val LastName:String = null with get,set
        member val DisplayName:String = null with get,set
        member val ProfileUrl:String = null with get,set

    [<AllowNullLiteral>]
    type JobApplicationComment() = 
        inherit AuditBase()
        member val Id:Int32 = new Int32() with get,set
        [<References(typeof<AppUser>)>]
        member val AppUserId:String = null with get,set

        member val AppUser:AppUser = null with get,set
        [<References(typeof<JobApplication>)>]
        member val JobApplicationId:Int32 = new Int32() with get,set

        member val Comment:String = null with get,set

    type JobApplicationStatus =
        | Applied = 0
        | PhoneScreening = 1
        | PhoneScreeningCompleted = 2
        | Interview = 3
        | InterviewCompleted = 4
        | Offer = 5
        | Disqualified = 6

    [<AllowNullLiteral>]
    type JobApplicationAttachment() = 
        member val Id:Int32 = new Int32() with get,set
        [<References(typeof<JobApplication>)>]
        member val JobApplicationId:Int32 = new Int32() with get,set

        member val FileName:String = null with get,set
        member val FilePath:String = null with get,set
        member val ContentType:String = null with get,set
        member val ContentLength:Int64 = new Int64() with get,set

    [<AllowNullLiteral>]
    type JobApplicationEvent() = 
        inherit AuditBase()
        member val Id:Int32 = new Int32() with get,set
        [<References(typeof<JobApplication>)>]
        member val JobApplicationId:Int32 = new Int32() with get,set

        [<References(typeof<AppUser>)>]
        member val AppUserId:String = null with get,set

        member val AppUser:AppUser = null with get,set
        member val Description:String = null with get,set
        member val Status:Nullable<JobApplicationStatus> = new Nullable<JobApplicationStatus>() with get,set
        member val EventDate:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type PhoneScreen() = 
        inherit AuditBase()
        member val Id:Int32 = new Int32() with get,set
        [<References(typeof<AppUser>)>]
        member val AppUserId:String = null with get,set

        member val AppUser:AppUser = null with get,set
        [<References(typeof<JobApplication>)>]
        member val JobApplicationId:Int32 = new Int32() with get,set

        member val ApplicationStatus:Nullable<JobApplicationStatus> = new Nullable<JobApplicationStatus>() with get,set
        member val Notes:String = null with get,set

    [<AllowNullLiteral>]
    type Interview() = 
        inherit AuditBase()
        member val Id:Int32 = new Int32() with get,set
        member val BookingTime:DateTime = new DateTime() with get,set
        [<References(typeof<JobApplication>)>]
        member val JobApplicationId:Int32 = new Int32() with get,set

        [<References(typeof<AppUser>)>]
        member val AppUserId:String = null with get,set

        member val AppUser:AppUser = null with get,set
        member val ApplicationStatus:Nullable<JobApplicationStatus> = new Nullable<JobApplicationStatus>() with get,set
        member val Notes:String = null with get,set

    [<AllowNullLiteral>]
    type JobOffer() = 
        inherit AuditBase()
        member val Id:Int32 = new Int32() with get,set
        member val SalaryOffer:Int32 = new Int32() with get,set
        member val Currency:String = null with get,set
        [<References(typeof<JobApplication>)>]
        member val JobApplicationId:Int32 = new Int32() with get,set

        [<References(typeof<AppUser>)>]
        member val AppUserId:String = null with get,set

        member val AppUser:AppUser = null with get,set
        member val Notes:String = null with get,set

    [<AllowNullLiteral>]
    type JobApplication() = 
        member val Id:Int32 = new Int32() with get,set
        [<References(typeof<Job>)>]
        member val JobId:Int32 = new Int32() with get,set

        [<References(typeof<Contact>)>]
        member val ContactId:Int32 = new Int32() with get,set

        member val Position:Job = null with get,set
        member val Applicant:Contact = null with get,set
        member val Comments:ResizeArray<JobApplicationComment> = new ResizeArray<JobApplicationComment>() with get,set
        member val AppliedDate:DateTime = new DateTime() with get,set
        member val ApplicationStatus:JobApplicationStatus = new JobApplicationStatus() with get,set
        member val Attachments:ResizeArray<JobApplicationAttachment> = new ResizeArray<JobApplicationAttachment>() with get,set
        member val Events:ResizeArray<JobApplicationEvent> = new ResizeArray<JobApplicationEvent>() with get,set
        member val PhoneScreen:PhoneScreen = null with get,set
        member val Interview:Interview = null with get,set
        member val JobOffer:JobOffer = null with get,set

    [<AllowNullLiteral>]
    type Contact() = 
        member val Id:Int32 = new Int32() with get,set
        [<Computed>]
        member val DisplayName:String = null with get,set

        member val ProfileUrl:String = null with get,set
        member val FirstName:String = null with get,set
        member val LastName:String = null with get,set
        member val SalaryExpectation:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val JobType:String = null with get,set
        member val AvailabilityWeeks:Int32 = new Int32() with get,set
        member val PreferredWorkType:EmploymentType = new EmploymentType() with get,set
        member val PreferredLocation:String = null with get,set
        member val Email:String = null with get,set
        member val Phone:String = null with get,set
        member val Skills:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val About:String = null with get,set
        member val Applications:ResizeArray<JobApplication> = new ResizeArray<JobApplication>() with get,set

    [<AllowNullLiteral>]
    type QueryContacts() = 
        inherit QueryDb<Contact>()
        member val Id:Nullable<Int32> = new Nullable<Int32>() with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type QueryBase() = 
        [<DataMember(Order=1)>]
        member val Skip:Nullable<Int32> = new Nullable<Int32>() with get,set

        [<DataMember(Order=2)>]
        member val Take:Nullable<Int32> = new Nullable<Int32>() with get,set

        [<DataMember(Order=3)>]
        member val OrderBy:String = null with get,set

        [<DataMember(Order=4)>]
        member val OrderByDesc:String = null with get,set

        [<DataMember(Order=5)>]
        member val Include:String = null with get,set

        [<DataMember(Order=6)>]
        member val Fields:String = null with get,set

        [<DataMember(Order=7)>]
        member val Meta:Dictionary<String, String> = new Dictionary<String, String>() with get,set

    [<AllowNullLiteral>]
    type QueryDb<T>() = 
        inherit QueryBase()

    [<AllowNullLiteral>]
    type Todo() = 
        member val Id:Int64 = new Int64() with get,set
        member val Text:String = null with get,set
        member val IsFinished:Boolean = new Boolean() with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type QueryResponse<Todo>() = 
        [<DataMember(Order=1)>]
        member val Offset:Int32 = new Int32() with get,set

        [<DataMember(Order=2)>]
        member val Total:Int32 = new Int32() with get,set

        [<DataMember(Order=3)>]
        member val Results:ResizeArray<Todo> = new ResizeArray<Todo>() with get,set

        [<DataMember(Order=4)>]
        member val Meta:Dictionary<String, String> = new Dictionary<String, String>() with get,set

        [<DataMember(Order=5)>]
        member val ResponseStatus:ResponseStatus = null with get,set

F# QueryContacts 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 /jsv/reply/QueryContacts HTTP/1.1 
Host: blazor-gallery.servicestack.net 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	skip: 0,
	take: 0,
	orderBy: String,
	orderByDesc: String,
	include: String,
	fields: String,
	meta: 
	{
		String: String
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	offset: 0,
	total: 0,
	results: 
	[
		{
			id: 0,
			displayName: String String,
			profileUrl: String,
			firstName: String,
			lastName: String,
			salaryExpectation: 0,
			jobType: String,
			availabilityWeeks: 0,
			preferredWorkType: FullTime,
			preferredLocation: String,
			email: String,
			phone: String,
			skills: 
			[
				String
			],
			about: String,
			applications: 
			[
				{
					id: 0,
					jobId: 0,
					contactId: 0,
					position: 
					{
						id: 0,
						title: String,
						employmentType: FullTime,
						company: String,
						location: String,
						salaryRangeLower: 0,
						salaryRangeUpper: 0,
						description: String,
						applications: 
						[
							{
								id: 0,
								jobId: 0,
								contactId: 0,
								position: 
								{
									id: 0,
									title: String,
									employmentType: FullTime,
									company: String,
									location: String,
									salaryRangeLower: 0,
									salaryRangeUpper: 0,
									description: String,
									applications: 
									[
										{
											id: 0,
											jobId: 0,
											contactId: 0,
											position: 
											{
												id: 0,
												title: String,
												employmentType: FullTime,
												company: String,
												location: String,
												salaryRangeLower: 0,
												salaryRangeUpper: 0,
												description: String,
												closing: 0001-01-01,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											applicant: 
											{
												id: 0,
												displayName: String String,
												profileUrl: String,
												firstName: String,
												lastName: String,
												salaryExpectation: 0,
												jobType: String,
												availabilityWeeks: 0,
												preferredWorkType: FullTime,
												preferredLocation: String,
												email: String,
												phone: String,
												skills: 
												[
													String
												],
												about: String
											},
											comments: 
											[
												{
													id: 0,
													appUserId: String,
													appUser: 
													{
														id: String,
														firstName: String,
														lastName: String,
														displayName: String,
														profileUrl: String
													},
													jobApplicationId: 0,
													comment: String,
													createdDate: 0001-01-01,
													createdBy: String,
													modifiedDate: 0001-01-01,
													modifiedBy: String,
													deletedDate: 0001-01-01,
													deletedBy: String
												}
											],
											appliedDate: 0001-01-01,
											applicationStatus: Applied,
											attachments: 
											[
												{
													id: 0,
													jobApplicationId: 0,
													fileName: String,
													filePath: String,
													contentType: String,
													contentLength: 0
												}
											],
											events: 
											[
												{
													id: 0,
													jobApplicationId: 0,
													appUserId: String,
													appUser: 
													{
														id: String,
														firstName: String,
														lastName: String,
														displayName: String,
														profileUrl: String
													},
													description: String,
													status: Applied,
													eventDate: 0001-01-01,
													createdDate: 0001-01-01,
													createdBy: String,
													modifiedDate: 0001-01-01,
													modifiedBy: String,
													deletedDate: 0001-01-01,
													deletedBy: String
												}
											],
											phoneScreen: 
											{
												id: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												jobApplicationId: 0,
												applicationStatus: Applied,
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											interview: 
											{
												id: 0,
												bookingTime: 0001-01-01,
												jobApplicationId: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												applicationStatus: Applied,
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											jobOffer: 
											{
												id: 0,
												salaryOffer: 0,
												currency: String,
												jobApplicationId: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											}
										}
									],
									closing: 0001-01-01,
									createdDate: 0001-01-01,
									createdBy: String,
									modifiedDate: 0001-01-01,
									modifiedBy: String,
									deletedDate: 0001-01-01,
									deletedBy: String
								},
								applicant: 
								{
									id: 0,
									displayName: String String,
									profileUrl: String,
									firstName: String,
									lastName: String,
									salaryExpectation: 0,
									jobType: String,
									availabilityWeeks: 0,
									preferredWorkType: FullTime,
									preferredLocation: String,
									email: String,
									phone: String,
									skills: 
									[
										String
									],
									about: String,
									applications: 
									[
										{
											id: 0,
											jobId: 0,
											contactId: 0,
											position: 
											{
												id: 0,
												title: String,
												employmentType: FullTime,
												company: String,
												location: String,
												salaryRangeLower: 0,
												salaryRangeUpper: 0,
												description: String,
												closing: 0001-01-01,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											applicant: 
											{
												id: 0,
												displayName: String String,
												profileUrl: String,
												firstName: String,
												lastName: String,
												salaryExpectation: 0,
												jobType: String,
												availabilityWeeks: 0,
												preferredWorkType: FullTime,
												preferredLocation: String,
												email: String,
												phone: String,
												skills: 
												[
													String
												],
												about: String
											},
											comments: 
											[
												{
													id: 0,
													appUserId: String,
													appUser: 
													{
														id: String,
														firstName: String,
														lastName: String,
														displayName: String,
														profileUrl: String
													},
													jobApplicationId: 0,
													comment: String,
													createdDate: 0001-01-01,
													createdBy: String,
													modifiedDate: 0001-01-01,
													modifiedBy: String,
													deletedDate: 0001-01-01,
													deletedBy: String
												}
											],
											appliedDate: 0001-01-01,
											applicationStatus: Applied,
											attachments: 
											[
												{
													id: 0,
													jobApplicationId: 0,
													fileName: String,
													filePath: String,
													contentType: String,
													contentLength: 0
												}
											],
											events: 
											[
												{
													id: 0,
													jobApplicationId: 0,
													appUserId: String,
													appUser: 
													{
														id: String,
														firstName: String,
														lastName: String,
														displayName: String,
														profileUrl: String
													},
													description: String,
													status: Applied,
													eventDate: 0001-01-01,
													createdDate: 0001-01-01,
													createdBy: String,
													modifiedDate: 0001-01-01,
													modifiedBy: String,
													deletedDate: 0001-01-01,
													deletedBy: String
												}
											],
											phoneScreen: 
											{
												id: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												jobApplicationId: 0,
												applicationStatus: Applied,
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											interview: 
											{
												id: 0,
												bookingTime: 0001-01-01,
												jobApplicationId: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												applicationStatus: Applied,
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											jobOffer: 
											{
												id: 0,
												salaryOffer: 0,
												currency: String,
												jobApplicationId: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											}
										}
									]
								},
								comments: 
								[
									{
										id: 0,
										appUserId: String,
										appUser: 
										{
											id: String,
											firstName: String,
											lastName: String,
											displayName: String,
											profileUrl: String
										},
										jobApplicationId: 0,
										comment: String,
										createdDate: 0001-01-01,
										createdBy: String,
										modifiedDate: 0001-01-01,
										modifiedBy: String,
										deletedDate: 0001-01-01,
										deletedBy: String
									}
								],
								appliedDate: 0001-01-01,
								applicationStatus: Applied,
								attachments: 
								[
									{
										id: 0,
										jobApplicationId: 0,
										fileName: String,
										filePath: String,
										contentType: String,
										contentLength: 0
									}
								],
								events: 
								[
									{
										id: 0,
										jobApplicationId: 0,
										appUserId: String,
										appUser: 
										{
											id: String,
											firstName: String,
											lastName: String,
											displayName: String,
											profileUrl: String
										},
										description: String,
										status: Applied,
										eventDate: 0001-01-01,
										createdDate: 0001-01-01,
										createdBy: String,
										modifiedDate: 0001-01-01,
										modifiedBy: String,
										deletedDate: 0001-01-01,
										deletedBy: String
									}
								],
								phoneScreen: 
								{
									id: 0,
									appUserId: String,
									appUser: 
									{
										id: String,
										firstName: String,
										lastName: String,
										displayName: String,
										profileUrl: String
									},
									jobApplicationId: 0,
									applicationStatus: Applied,
									notes: String,
									createdDate: 0001-01-01,
									createdBy: String,
									modifiedDate: 0001-01-01,
									modifiedBy: String,
									deletedDate: 0001-01-01,
									deletedBy: String
								},
								interview: 
								{
									id: 0,
									bookingTime: 0001-01-01,
									jobApplicationId: 0,
									appUserId: String,
									appUser: 
									{
										id: String,
										firstName: String,
										lastName: String,
										displayName: String,
										profileUrl: String
									},
									applicationStatus: Applied,
									notes: String,
									createdDate: 0001-01-01,
									createdBy: String,
									modifiedDate: 0001-01-01,
									modifiedBy: String,
									deletedDate: 0001-01-01,
									deletedBy: String
								},
								jobOffer: 
								{
									id: 0,
									salaryOffer: 0,
									currency: String,
									jobApplicationId: 0,
									appUserId: String,
									appUser: 
									{
										id: String,
										firstName: String,
										lastName: String,
										displayName: String,
										profileUrl: String
									},
									notes: String,
									createdDate: 0001-01-01,
									createdBy: String,
									modifiedDate: 0001-01-01,
									modifiedBy: String,
									deletedDate: 0001-01-01,
									deletedBy: String
								}
							}
						],
						closing: 0001-01-01,
						createdDate: 0001-01-01,
						createdBy: String,
						modifiedDate: 0001-01-01,
						modifiedBy: String,
						deletedDate: 0001-01-01,
						deletedBy: String
					},
					applicant: 
					{
						id: 0,
						displayName: String String,
						profileUrl: String,
						firstName: String,
						lastName: String,
						salaryExpectation: 0,
						jobType: String,
						availabilityWeeks: 0,
						preferredWorkType: FullTime,
						preferredLocation: String,
						email: String,
						phone: String,
						skills: 
						[
							String
						],
						about: String,
						applications: 
						[
							{
								id: 0,
								jobId: 0,
								contactId: 0,
								position: 
								{
									id: 0,
									title: String,
									employmentType: FullTime,
									company: String,
									location: String,
									salaryRangeLower: 0,
									salaryRangeUpper: 0,
									description: String,
									applications: 
									[
										{
											id: 0,
											jobId: 0,
											contactId: 0,
											position: 
											{
												id: 0,
												title: String,
												employmentType: FullTime,
												company: String,
												location: String,
												salaryRangeLower: 0,
												salaryRangeUpper: 0,
												description: String,
												closing: 0001-01-01,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											applicant: 
											{
												id: 0,
												displayName: String String,
												profileUrl: String,
												firstName: String,
												lastName: String,
												salaryExpectation: 0,
												jobType: String,
												availabilityWeeks: 0,
												preferredWorkType: FullTime,
												preferredLocation: String,
												email: String,
												phone: String,
												skills: 
												[
													String
												],
												about: String
											},
											comments: 
											[
												{
													id: 0,
													appUserId: String,
													appUser: 
													{
														id: String,
														firstName: String,
														lastName: String,
														displayName: String,
														profileUrl: String
													},
													jobApplicationId: 0,
													comment: String,
													createdDate: 0001-01-01,
													createdBy: String,
													modifiedDate: 0001-01-01,
													modifiedBy: String,
													deletedDate: 0001-01-01,
													deletedBy: String
												}
											],
											appliedDate: 0001-01-01,
											applicationStatus: Applied,
											attachments: 
											[
												{
													id: 0,
													jobApplicationId: 0,
													fileName: String,
													filePath: String,
													contentType: String,
													contentLength: 0
												}
											],
											events: 
											[
												{
													id: 0,
													jobApplicationId: 0,
													appUserId: String,
													appUser: 
													{
														id: String,
														firstName: String,
														lastName: String,
														displayName: String,
														profileUrl: String
													},
													description: String,
													status: Applied,
													eventDate: 0001-01-01,
													createdDate: 0001-01-01,
													createdBy: String,
													modifiedDate: 0001-01-01,
													modifiedBy: String,
													deletedDate: 0001-01-01,
													deletedBy: String
												}
											],
											phoneScreen: 
											{
												id: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												jobApplicationId: 0,
												applicationStatus: Applied,
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											interview: 
											{
												id: 0,
												bookingTime: 0001-01-01,
												jobApplicationId: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												applicationStatus: Applied,
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											jobOffer: 
											{
												id: 0,
												salaryOffer: 0,
												currency: String,
												jobApplicationId: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											}
										}
									],
									closing: 0001-01-01,
									createdDate: 0001-01-01,
									createdBy: String,
									modifiedDate: 0001-01-01,
									modifiedBy: String,
									deletedDate: 0001-01-01,
									deletedBy: String
								},
								applicant: 
								{
									id: 0,
									displayName: String String,
									profileUrl: String,
									firstName: String,
									lastName: String,
									salaryExpectation: 0,
									jobType: String,
									availabilityWeeks: 0,
									preferredWorkType: FullTime,
									preferredLocation: String,
									email: String,
									phone: String,
									skills: 
									[
										String
									],
									about: String,
									applications: 
									[
										{
											id: 0,
											jobId: 0,
											contactId: 0,
											position: 
											{
												id: 0,
												title: String,
												employmentType: FullTime,
												company: String,
												location: String,
												salaryRangeLower: 0,
												salaryRangeUpper: 0,
												description: String,
												closing: 0001-01-01,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											comments: 
											[
												{
													id: 0,
													appUserId: String,
													appUser: 
													{
														id: String,
														firstName: String,
														lastName: String,
														displayName: String,
														profileUrl: String
													},
													jobApplicationId: 0,
													comment: String,
													createdDate: 0001-01-01,
													createdBy: String,
													modifiedDate: 0001-01-01,
													modifiedBy: String,
													deletedDate: 0001-01-01,
													deletedBy: String
												}
											],
											appliedDate: 0001-01-01,
											applicationStatus: Applied,
											attachments: 
											[
												{
													id: 0,
													jobApplicationId: 0,
													fileName: String,
													filePath: String,
													contentType: String,
													contentLength: 0
												}
											],
											events: 
											[
												{
													id: 0,
													jobApplicationId: 0,
													appUserId: String,
													appUser: 
													{
														id: String,
														firstName: String,
														lastName: String,
														displayName: String,
														profileUrl: String
													},
													description: String,
													status: Applied,
													eventDate: 0001-01-01,
													createdDate: 0001-01-01,
													createdBy: String,
													modifiedDate: 0001-01-01,
													modifiedBy: String,
													deletedDate: 0001-01-01,
													deletedBy: String
												}
											],
											phoneScreen: 
											{
												id: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												jobApplicationId: 0,
												applicationStatus: Applied,
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											interview: 
											{
												id: 0,
												bookingTime: 0001-01-01,
												jobApplicationId: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												applicationStatus: Applied,
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											},
											jobOffer: 
											{
												id: 0,
												salaryOffer: 0,
												currency: String,
												jobApplicationId: 0,
												appUserId: String,
												appUser: 
												{
													id: String,
													firstName: String,
													lastName: String,
													displayName: String,
													profileUrl: String
												},
												notes: String,
												createdDate: 0001-01-01,
												createdBy: String,
												modifiedDate: 0001-01-01,
												modifiedBy: String,
												deletedDate: 0001-01-01,
												deletedBy: String
											}
										}
									]
								},
								comments: 
								[
									{
										id: 0,
										appUserId: String,
										appUser: 
										{
											id: String,
											firstName: String,
											lastName: String,
											displayName: String,
											profileUrl: String
										},
										jobApplicationId: 0,
										comment: String,
										createdDate: 0001-01-01,
										createdBy: String,
										modifiedDate: 0001-01-01,
										modifiedBy: String,
										deletedDate: 0001-01-01,
										deletedBy: String
									}
								],
								appliedDate: 0001-01-01,
								applicationStatus: Applied,
								attachments: 
								[
									{
										id: 0,
										jobApplicationId: 0,
										fileName: String,
										filePath: String,
										contentType: String,
										contentLength: 0
									}
								],
								events: 
								[
									{
										id: 0,
										jobApplicationId: 0,
										appUserId: String,
										appUser: 
										{
											id: String,
											firstName: String,
											lastName: String,
											displayName: String,
											profileUrl: String
										},
										description: String,
										status: Applied,
										eventDate: 0001-01-01,
										createdDate: 0001-01-01,
										createdBy: String,
										modifiedDate: 0001-01-01,
										modifiedBy: String,
										deletedDate: 0001-01-01,
										deletedBy: String
									}
								],
								phoneScreen: 
								{
									id: 0,
									appUserId: String,
									appUser: 
									{
										id: String,
										firstName: String,
										lastName: String,
										displayName: String,
										profileUrl: String
									},
									jobApplicationId: 0,
									applicationStatus: Applied,
									notes: String,
									createdDate: 0001-01-01,
									createdBy: String,
									modifiedDate: 0001-01-01,
									modifiedBy: String,
									deletedDate: 0001-01-01,
									deletedBy: String
								},
								interview: 
								{
									id: 0,
									bookingTime: 0001-01-01,
									jobApplicationId: 0,
									appUserId: String,
									appUser: 
									{
										id: String,
										firstName: String,
										lastName: String,
										displayName: String,
										profileUrl: String
									},
									applicationStatus: Applied,
									notes: String,
									createdDate: 0001-01-01,
									createdBy: String,
									modifiedDate: 0001-01-01,
									modifiedBy: String,
									deletedDate: 0001-01-01,
									deletedBy: String
								},
								jobOffer: 
								{
									id: 0,
									salaryOffer: 0,
									currency: String,
									jobApplicationId: 0,
									appUserId: String,
									appUser: 
									{
										id: String,
										firstName: String,
										lastName: String,
										displayName: String,
										profileUrl: String
									},
									notes: String,
									createdDate: 0001-01-01,
									createdBy: String,
									modifiedDate: 0001-01-01,
									modifiedBy: String,
									deletedDate: 0001-01-01,
									deletedBy: String
								}
							}
						]
					},
					comments: 
					[
						{
							id: 0,
							appUserId: String,
							appUser: 
							{
								id: String,
								firstName: String,
								lastName: String,
								displayName: String,
								profileUrl: String
							},
							jobApplicationId: 0,
							comment: String,
							createdDate: 0001-01-01,
							createdBy: String,
							modifiedDate: 0001-01-01,
							modifiedBy: String,
							deletedDate: 0001-01-01,
							deletedBy: String
						}
					],
					appliedDate: 0001-01-01,
					applicationStatus: Applied,
					attachments: 
					[
						{
							id: 0,
							jobApplicationId: 0,
							fileName: String,
							filePath: String,
							contentType: String,
							contentLength: 0
						}
					],
					events: 
					[
						{
							id: 0,
							jobApplicationId: 0,
							appUserId: String,
							appUser: 
							{
								id: String,
								firstName: String,
								lastName: String,
								displayName: String,
								profileUrl: String
							},
							description: String,
							status: Applied,
							eventDate: 0001-01-01,
							createdDate: 0001-01-01,
							createdBy: String,
							modifiedDate: 0001-01-01,
							modifiedBy: String,
							deletedDate: 0001-01-01,
							deletedBy: String
						}
					],
					phoneScreen: 
					{
						id: 0,
						appUserId: String,
						appUser: 
						{
							id: String,
							firstName: String,
							lastName: String,
							displayName: String,
							profileUrl: String
						},
						jobApplicationId: 0,
						applicationStatus: Applied,
						notes: String,
						createdDate: 0001-01-01,
						createdBy: String,
						modifiedDate: 0001-01-01,
						modifiedBy: String,
						deletedDate: 0001-01-01,
						deletedBy: String
					},
					interview: 
					{
						id: 0,
						bookingTime: 0001-01-01,
						jobApplicationId: 0,
						appUserId: String,
						appUser: 
						{
							id: String,
							firstName: String,
							lastName: String,
							displayName: String,
							profileUrl: String
						},
						applicationStatus: Applied,
						notes: String,
						createdDate: 0001-01-01,
						createdBy: String,
						modifiedDate: 0001-01-01,
						modifiedBy: String,
						deletedDate: 0001-01-01,
						deletedBy: String
					},
					jobOffer: 
					{
						id: 0,
						salaryOffer: 0,
						currency: String,
						jobApplicationId: 0,
						appUserId: String,
						appUser: 
						{
							id: String,
							firstName: String,
							lastName: String,
							displayName: String,
							profileUrl: String
						},
						notes: String,
						createdDate: 0001-01-01,
						createdBy: String,
						modifiedDate: 0001-01-01,
						modifiedBy: String,
						deletedDate: 0001-01-01,
						deletedBy: String
					}
				}
			]
		}
	],
	meta: 
	{
		String: String
	},
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}