MyApp

<back to all web services

CreateJob

Talent
Requires Authentication
const std = @import("std");

pub const EmploymentType = enum {
    FullTime,
    PartTime,
    Casual,
    Contract,
};

pub const Contact = struct {
    id: i32 = 0,
    // @Computed()
    displayName: ?[]const u8 = null,

    profileUrl: ?[]const u8 = null,
    firstName: ?[]const u8 = null,
    lastName: ?[]const u8 = null,
    salaryExpectation: ?i32 = null,
    jobType: ?[]const u8 = null,
    availabilityWeeks: i32 = 0,
    preferredWorkType: ?EmploymentType = null,
    preferredLocation: ?[]const u8 = null,
    email: ?[]const u8 = null,
    phone: ?[]const u8 = null,
    skills: ?[][]const u8 = null,
    about: ?[]const u8 = null,
    applications: []JobApplication = &.{},
};

pub const AppUser = struct {
    id: ?[]const u8 = null,
    firstName: ?[]const u8 = null,
    lastName: ?[]const u8 = null,
    displayName: ?[]const u8 = null,
    profileUrl: ?[]const u8 = null,
};

pub const JobApplicationComment = struct {
    // @DataMember(Order=1)
    createdDate: ?[]const u8 = null,

    // @DataMember(Order=2)
    // @Required()
    createdBy: ?[]const u8 = null,

    // @DataMember(Order=3)
    modifiedDate: ?[]const u8 = null,

    // @DataMember(Order=4)
    // @Required()
    modifiedBy: ?[]const u8 = null,

    // @DataMember(Order=5)
    deletedDate: ?[]const u8 = null,

    // @DataMember(Order=6)
    deletedBy: ?[]const u8 = null,
    id: i32 = 0,
    // @References(typeof(AppUser))
    appUserId: ?[]const u8 = null,

    appUser: ?AppUser = null,
    // @References(typeof(JobApplication))
    jobApplicationId: i32 = 0,

    comment: ?[]const u8 = null,
};

pub const JobApplicationStatus = enum {
    Applied,
    PhoneScreening,
    PhoneScreeningCompleted,
    Interview,
    InterviewCompleted,
    Offer,
    Disqualified,
};

pub const JobApplicationAttachment = struct {
    id: i32 = 0,
    // @References(typeof(JobApplication))
    jobApplicationId: i32 = 0,

    fileName: ?[]const u8 = null,
    filePath: ?[]const u8 = null,
    contentType: ?[]const u8 = null,
    contentLength: i64 = 0,
};

pub const JobApplicationEvent = struct {
    // @DataMember(Order=1)
    createdDate: ?[]const u8 = null,

    // @DataMember(Order=2)
    // @Required()
    createdBy: ?[]const u8 = null,

    // @DataMember(Order=3)
    modifiedDate: ?[]const u8 = null,

    // @DataMember(Order=4)
    // @Required()
    modifiedBy: ?[]const u8 = null,

    // @DataMember(Order=5)
    deletedDate: ?[]const u8 = null,

    // @DataMember(Order=6)
    deletedBy: ?[]const u8 = null,
    id: i32 = 0,
    // @References(typeof(JobApplication))
    jobApplicationId: i32 = 0,

    // @References(typeof(AppUser))
    appUserId: ?[]const u8 = null,

    appUser: ?AppUser = null,
    description: ?[]const u8 = null,
    status: ?JobApplicationStatus = null,
    eventDate: ?[]const u8 = null,
};

pub const PhoneScreen = struct {
    // @DataMember(Order=1)
    createdDate: ?[]const u8 = null,

    // @DataMember(Order=2)
    // @Required()
    createdBy: ?[]const u8 = null,

    // @DataMember(Order=3)
    modifiedDate: ?[]const u8 = null,

    // @DataMember(Order=4)
    // @Required()
    modifiedBy: ?[]const u8 = null,

    // @DataMember(Order=5)
    deletedDate: ?[]const u8 = null,

    // @DataMember(Order=6)
    deletedBy: ?[]const u8 = null,
    id: i32 = 0,
    // @References(typeof(AppUser))
    appUserId: ?[]const u8 = null,

    appUser: ?AppUser = null,
    // @References(typeof(JobApplication))
    jobApplicationId: i32 = 0,

    applicationStatus: ?JobApplicationStatus = null,
    notes: ?[]const u8 = null,
};

pub const Interview = struct {
    // @DataMember(Order=1)
    createdDate: ?[]const u8 = null,

    // @DataMember(Order=2)
    // @Required()
    createdBy: ?[]const u8 = null,

    // @DataMember(Order=3)
    modifiedDate: ?[]const u8 = null,

    // @DataMember(Order=4)
    // @Required()
    modifiedBy: ?[]const u8 = null,

    // @DataMember(Order=5)
    deletedDate: ?[]const u8 = null,

    // @DataMember(Order=6)
    deletedBy: ?[]const u8 = null,
    id: i32 = 0,
    bookingTime: ?[]const u8 = null,
    // @References(typeof(JobApplication))
    jobApplicationId: i32 = 0,

    // @References(typeof(AppUser))
    appUserId: ?[]const u8 = null,

    appUser: ?AppUser = null,
    applicationStatus: ?JobApplicationStatus = null,
    notes: ?[]const u8 = null,
};

pub const JobOffer = struct {
    // @DataMember(Order=1)
    createdDate: ?[]const u8 = null,

    // @DataMember(Order=2)
    // @Required()
    createdBy: ?[]const u8 = null,

    // @DataMember(Order=3)
    modifiedDate: ?[]const u8 = null,

    // @DataMember(Order=4)
    // @Required()
    modifiedBy: ?[]const u8 = null,

    // @DataMember(Order=5)
    deletedDate: ?[]const u8 = null,

    // @DataMember(Order=6)
    deletedBy: ?[]const u8 = null,
    id: i32 = 0,
    salaryOffer: i32 = 0,
    currency: ?[]const u8 = null,
    // @References(typeof(JobApplication))
    jobApplicationId: i32 = 0,

    // @References(typeof(AppUser))
    appUserId: ?[]const u8 = null,

    appUser: ?AppUser = null,
    notes: ?[]const u8 = null,
};

pub const JobApplication = struct {
    id: i32 = 0,
    // @References(typeof(Job))
    jobId: i32 = 0,

    // @References(typeof(Contact))
    contactId: i32 = 0,

    position: ?Job = null,
    applicant: ?Contact = null,
    comments: []JobApplicationComment = &.{},
    appliedDate: ?[]const u8 = null,
    applicationStatus: ?JobApplicationStatus = null,
    attachments: []JobApplicationAttachment = &.{},
    events: []JobApplicationEvent = &.{},
    phoneScreen: ?PhoneScreen = null,
    interview: ?Interview = null,
    jobOffer: ?JobOffer = null,
};

pub const Job = struct {
    // @DataMember(Order=1)
    createdDate: ?[]const u8 = null,

    // @DataMember(Order=2)
    // @Required()
    createdBy: ?[]const u8 = null,

    // @DataMember(Order=3)
    modifiedDate: ?[]const u8 = null,

    // @DataMember(Order=4)
    // @Required()
    modifiedBy: ?[]const u8 = null,

    // @DataMember(Order=5)
    deletedDate: ?[]const u8 = null,

    // @DataMember(Order=6)
    deletedBy: ?[]const u8 = null,
    id: i32 = 0,
    title: ?[]const u8 = null,
    employmentType: ?EmploymentType = null,
    company: ?[]const u8 = null,
    location: ?[]const u8 = null,
    salaryRangeLower: i32 = 0,
    salaryRangeUpper: i32 = 0,
    description: ?[]const u8 = null,
    applications: []JobApplication = &.{},
    closing: ?[]const u8 = null,
};

// @ValidateRequest(Validator="IsAuthenticated")
pub const CreateJob = struct {
    title: ?[]const u8 = null,
    // @Validate(Validator="GreaterThan(0)")
    salaryRangeLower: i32 = 0,

    // @Validate(Validator="GreaterThan(0)")
    salaryRangeUpper: i32 = 0,

    description: ?[]const u8 = null,
    employmentType: ?EmploymentType = null,
    company: ?[]const u8 = null,
    location: ?[]const u8 = null,
    closing: ?[]const u8 = null,
};

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

{
	title: String,
	salaryRangeLower: 0,
	salaryRangeUpper: 0,
	description: String,
	employmentType: FullTime,
	company: String,
	location: String,
	closing: 0001-01-01
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	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,
							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
									},
									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
						}
					}
				]
			},
			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
}