MyApp

<back to all web services

CreateJob

Talent
Requires Authentication
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    @ValidateRequest(Validator="IsAuthenticated")
    public static class CreateJob implements ICreateDb<Job>
    {
        public String title = null;
        @Validate(Validator="GreaterThan(0)")
        public Integer salaryRangeLower = null;

        @Validate(Validator="GreaterThan(0)")
        public Integer salaryRangeUpper = null;

        public String description = null;
        public EmploymentType employmentType = null;
        public String company = null;
        public String location = null;
        public Date closing = null;
        
        public String getTitle() { return title; }
        public CreateJob setTitle(String value) { this.title = value; return this; }
        public Integer getSalaryRangeLower() { return salaryRangeLower; }
        public CreateJob setSalaryRangeLower(Integer value) { this.salaryRangeLower = value; return this; }
        public Integer getSalaryRangeUpper() { return salaryRangeUpper; }
        public CreateJob setSalaryRangeUpper(Integer value) { this.salaryRangeUpper = value; return this; }
        public String getDescription() { return description; }
        public CreateJob setDescription(String value) { this.description = value; return this; }
        public EmploymentType getEmploymentType() { return employmentType; }
        public CreateJob setEmploymentType(EmploymentType value) { this.employmentType = value; return this; }
        public String getCompany() { return company; }
        public CreateJob setCompany(String value) { this.company = value; return this; }
        public String getLocation() { return location; }
        public CreateJob setLocation(String value) { this.location = value; return this; }
        public Date getClosing() { return closing; }
        public CreateJob setClosing(Date value) { this.closing = value; return this; }
    }

    public static enum EmploymentType
    {
        FullTime,
        PartTime,
        Casual,
        Contract;
    }

    public static class Job extends AuditBase
    {
        public Integer id = null;
        public String title = null;
        public EmploymentType employmentType = null;
        public String company = null;
        public String location = null;
        public Integer salaryRangeLower = null;
        public Integer salaryRangeUpper = null;
        public String description = null;
        public ArrayList<JobApplication> applications = new ArrayList<JobApplication>();
        public Date closing = null;
        
        public Integer getId() { return id; }
        public Job setId(Integer value) { this.id = value; return this; }
        public String getTitle() { return title; }
        public Job setTitle(String value) { this.title = value; return this; }
        public EmploymentType getEmploymentType() { return employmentType; }
        public Job setEmploymentType(EmploymentType value) { this.employmentType = value; return this; }
        public String getCompany() { return company; }
        public Job setCompany(String value) { this.company = value; return this; }
        public String getLocation() { return location; }
        public Job setLocation(String value) { this.location = value; return this; }
        public Integer getSalaryRangeLower() { return salaryRangeLower; }
        public Job setSalaryRangeLower(Integer value) { this.salaryRangeLower = value; return this; }
        public Integer getSalaryRangeUpper() { return salaryRangeUpper; }
        public Job setSalaryRangeUpper(Integer value) { this.salaryRangeUpper = value; return this; }
        public String getDescription() { return description; }
        public Job setDescription(String value) { this.description = value; return this; }
        public ArrayList<JobApplication> getApplications() { return applications; }
        public Job setApplications(ArrayList<JobApplication> value) { this.applications = value; return this; }
        public Date getClosing() { return closing; }
        public Job setClosing(Date value) { this.closing = value; return this; }
    }

    @DataContract
    public static class AuditBase
    {
        @DataMember(Order=1)
        public Date createdDate = null;

        @DataMember(Order=2)
        @Required()
        public String createdBy = null;

        @DataMember(Order=3)
        public Date modifiedDate = null;

        @DataMember(Order=4)
        @Required()
        public String modifiedBy = null;

        @DataMember(Order=5)
        public Date deletedDate = null;

        @DataMember(Order=6)
        public String deletedBy = null;
        
        public Date getCreatedDate() { return createdDate; }
        public AuditBase setCreatedDate(Date value) { this.createdDate = value; return this; }
        public String getCreatedBy() { return createdBy; }
        public AuditBase setCreatedBy(String value) { this.createdBy = value; return this; }
        public Date getModifiedDate() { return modifiedDate; }
        public AuditBase setModifiedDate(Date value) { this.modifiedDate = value; return this; }
        public String getModifiedBy() { return modifiedBy; }
        public AuditBase setModifiedBy(String value) { this.modifiedBy = value; return this; }
        public Date getDeletedDate() { return deletedDate; }
        public AuditBase setDeletedDate(Date value) { this.deletedDate = value; return this; }
        public String getDeletedBy() { return deletedBy; }
        public AuditBase setDeletedBy(String value) { this.deletedBy = value; return this; }
    }

    public static class JobApplication
    {
        public Integer id = null;
        @References(Type=Job.class)
        public Integer jobId = null;

        @References(Type=Contact.class)
        public Integer contactId = null;

        public Job position = null;
        public Contact applicant = null;
        public ArrayList<JobApplicationComment> comments = new ArrayList<JobApplicationComment>();
        public Date appliedDate = null;
        public JobApplicationStatus applicationStatus = null;
        public ArrayList<JobApplicationAttachment> attachments = new ArrayList<JobApplicationAttachment>();
        public ArrayList<JobApplicationEvent> events = new ArrayList<JobApplicationEvent>();
        public PhoneScreen phoneScreen = null;
        public Interview interview = null;
        public JobOffer jobOffer = null;
        
        public Integer getId() { return id; }
        public JobApplication setId(Integer value) { this.id = value; return this; }
        public Integer getJobId() { return jobId; }
        public JobApplication setJobId(Integer value) { this.jobId = value; return this; }
        public Integer getContactId() { return contactId; }
        public JobApplication setContactId(Integer value) { this.contactId = value; return this; }
        public Job getPosition() { return position; }
        public JobApplication setPosition(Job value) { this.position = value; return this; }
        public Contact getApplicant() { return applicant; }
        public JobApplication setApplicant(Contact value) { this.applicant = value; return this; }
        public ArrayList<JobApplicationComment> getComments() { return comments; }
        public JobApplication setComments(ArrayList<JobApplicationComment> value) { this.comments = value; return this; }
        public Date getAppliedDate() { return appliedDate; }
        public JobApplication setAppliedDate(Date value) { this.appliedDate = value; return this; }
        public JobApplicationStatus getApplicationStatus() { return applicationStatus; }
        public JobApplication setApplicationStatus(JobApplicationStatus value) { this.applicationStatus = value; return this; }
        public ArrayList<JobApplicationAttachment> getAttachments() { return attachments; }
        public JobApplication setAttachments(ArrayList<JobApplicationAttachment> value) { this.attachments = value; return this; }
        public ArrayList<JobApplicationEvent> getEvents() { return events; }
        public JobApplication setEvents(ArrayList<JobApplicationEvent> value) { this.events = value; return this; }
        public PhoneScreen getPhoneScreen() { return phoneScreen; }
        public JobApplication setPhoneScreen(PhoneScreen value) { this.phoneScreen = value; return this; }
        public Interview getInterview() { return interview; }
        public JobApplication setInterview(Interview value) { this.interview = value; return this; }
        public JobOffer getJobOffer() { return jobOffer; }
        public JobApplication setJobOffer(JobOffer value) { this.jobOffer = value; return this; }
    }

    public static class Contact
    {
        public Integer id = null;
        @Computed()
        public String displayName = null;

        public String profileUrl = null;
        public String firstName = null;
        public String lastName = null;
        public Integer salaryExpectation = null;
        public String jobType = null;
        public Integer availabilityWeeks = null;
        public EmploymentType preferredWorkType = null;
        public String preferredLocation = null;
        public String email = null;
        public String phone = null;
        public ArrayList<String> skills = null;
        public String about = null;
        public ArrayList<JobApplication> applications = new ArrayList<JobApplication>();
        
        public Integer getId() { return id; }
        public Contact setId(Integer value) { this.id = value; return this; }
        public String getDisplayName() { return displayName; }
        public Contact setDisplayName(String value) { this.displayName = value; return this; }
        public String getProfileUrl() { return profileUrl; }
        public Contact setProfileUrl(String value) { this.profileUrl = value; return this; }
        public String getFirstName() { return firstName; }
        public Contact setFirstName(String value) { this.firstName = value; return this; }
        public String getLastName() { return lastName; }
        public Contact setLastName(String value) { this.lastName = value; return this; }
        public Integer getSalaryExpectation() { return salaryExpectation; }
        public Contact setSalaryExpectation(Integer value) { this.salaryExpectation = value; return this; }
        public String getJobType() { return jobType; }
        public Contact setJobType(String value) { this.jobType = value; return this; }
        public Integer getAvailabilityWeeks() { return availabilityWeeks; }
        public Contact setAvailabilityWeeks(Integer value) { this.availabilityWeeks = value; return this; }
        public EmploymentType getPreferredWorkType() { return preferredWorkType; }
        public Contact setPreferredWorkType(EmploymentType value) { this.preferredWorkType = value; return this; }
        public String getPreferredLocation() { return preferredLocation; }
        public Contact setPreferredLocation(String value) { this.preferredLocation = value; return this; }
        public String getEmail() { return email; }
        public Contact setEmail(String value) { this.email = value; return this; }
        public String getPhone() { return phone; }
        public Contact setPhone(String value) { this.phone = value; return this; }
        public ArrayList<String> getSkills() { return skills; }
        public Contact setSkills(ArrayList<String> value) { this.skills = value; return this; }
        public String getAbout() { return about; }
        public Contact setAbout(String value) { this.about = value; return this; }
        public ArrayList<JobApplication> getApplications() { return applications; }
        public Contact setApplications(ArrayList<JobApplication> value) { this.applications = value; return this; }
    }

    public static class JobApplicationComment extends AuditBase
    {
        public Integer id = null;
        @References(Type=AppUser.class)
        public String appUserId = null;

        public AppUser appUser = null;
        @References(Type=JobApplication.class)
        public Integer jobApplicationId = null;

        public String comment = null;
        
        public Integer getId() { return id; }
        public JobApplicationComment setId(Integer value) { this.id = value; return this; }
        public String getAppUserId() { return appUserId; }
        public JobApplicationComment setAppUserId(String value) { this.appUserId = value; return this; }
        public AppUser getAppUser() { return appUser; }
        public JobApplicationComment setAppUser(AppUser value) { this.appUser = value; return this; }
        public Integer getJobApplicationId() { return jobApplicationId; }
        public JobApplicationComment setJobApplicationId(Integer value) { this.jobApplicationId = value; return this; }
        public String getComment() { return comment; }
        public JobApplicationComment setComment(String value) { this.comment = value; return this; }
    }

    public static class AppUser
    {
        public String id = null;
        public String firstName = null;
        public String lastName = null;
        public String displayName = null;
        public String profileUrl = null;
        
        public String getId() { return id; }
        public AppUser setId(String value) { this.id = value; return this; }
        public String getFirstName() { return firstName; }
        public AppUser setFirstName(String value) { this.firstName = value; return this; }
        public String getLastName() { return lastName; }
        public AppUser setLastName(String value) { this.lastName = value; return this; }
        public String getDisplayName() { return displayName; }
        public AppUser setDisplayName(String value) { this.displayName = value; return this; }
        public String getProfileUrl() { return profileUrl; }
        public AppUser setProfileUrl(String value) { this.profileUrl = value; return this; }
    }

    public static enum JobApplicationStatus
    {
        Applied,
        PhoneScreening,
        PhoneScreeningCompleted,
        Interview,
        InterviewCompleted,
        Offer,
        Disqualified;
    }

    public static class JobApplicationAttachment
    {
        public Integer id = null;
        @References(Type=JobApplication.class)
        public Integer jobApplicationId = null;

        public String fileName = null;
        public String filePath = null;
        public String contentType = null;
        public Long contentLength = null;
        
        public Integer getId() { return id; }
        public JobApplicationAttachment setId(Integer value) { this.id = value; return this; }
        public Integer getJobApplicationId() { return jobApplicationId; }
        public JobApplicationAttachment setJobApplicationId(Integer value) { this.jobApplicationId = value; return this; }
        public String getFileName() { return fileName; }
        public JobApplicationAttachment setFileName(String value) { this.fileName = value; return this; }
        public String getFilePath() { return filePath; }
        public JobApplicationAttachment setFilePath(String value) { this.filePath = value; return this; }
        public String getContentType() { return contentType; }
        public JobApplicationAttachment setContentType(String value) { this.contentType = value; return this; }
        public Long getContentLength() { return contentLength; }
        public JobApplicationAttachment setContentLength(Long value) { this.contentLength = value; return this; }
    }

    public static class JobApplicationEvent extends AuditBase
    {
        public Integer id = null;
        @References(Type=JobApplication.class)
        public Integer jobApplicationId = null;

        @References(Type=AppUser.class)
        public String appUserId = null;

        public AppUser appUser = null;
        public String description = null;
        public JobApplicationStatus status = null;
        public Date eventDate = null;
        
        public Integer getId() { return id; }
        public JobApplicationEvent setId(Integer value) { this.id = value; return this; }
        public Integer getJobApplicationId() { return jobApplicationId; }
        public JobApplicationEvent setJobApplicationId(Integer value) { this.jobApplicationId = value; return this; }
        public String getAppUserId() { return appUserId; }
        public JobApplicationEvent setAppUserId(String value) { this.appUserId = value; return this; }
        public AppUser getAppUser() { return appUser; }
        public JobApplicationEvent setAppUser(AppUser value) { this.appUser = value; return this; }
        public String getDescription() { return description; }
        public JobApplicationEvent setDescription(String value) { this.description = value; return this; }
        public JobApplicationStatus getStatus() { return status; }
        public JobApplicationEvent setStatus(JobApplicationStatus value) { this.status = value; return this; }
        public Date getEventDate() { return eventDate; }
        public JobApplicationEvent setEventDate(Date value) { this.eventDate = value; return this; }
    }

    public static class PhoneScreen extends AuditBase
    {
        public Integer id = null;
        @References(Type=AppUser.class)
        public String appUserId = null;

        public AppUser appUser = null;
        @References(Type=JobApplication.class)
        public Integer jobApplicationId = null;

        public JobApplicationStatus applicationStatus = null;
        public String notes = null;
        
        public Integer getId() { return id; }
        public PhoneScreen setId(Integer value) { this.id = value; return this; }
        public String getAppUserId() { return appUserId; }
        public PhoneScreen setAppUserId(String value) { this.appUserId = value; return this; }
        public AppUser getAppUser() { return appUser; }
        public PhoneScreen setAppUser(AppUser value) { this.appUser = value; return this; }
        public Integer getJobApplicationId() { return jobApplicationId; }
        public PhoneScreen setJobApplicationId(Integer value) { this.jobApplicationId = value; return this; }
        public JobApplicationStatus getApplicationStatus() { return applicationStatus; }
        public PhoneScreen setApplicationStatus(JobApplicationStatus value) { this.applicationStatus = value; return this; }
        public String getNotes() { return notes; }
        public PhoneScreen setNotes(String value) { this.notes = value; return this; }
    }

    public static class Interview extends AuditBase
    {
        public Integer id = null;
        public Date bookingTime = null;
        @References(Type=JobApplication.class)
        public Integer jobApplicationId = null;

        @References(Type=AppUser.class)
        public String appUserId = null;

        public AppUser appUser = null;
        public JobApplicationStatus applicationStatus = null;
        public String notes = null;
        
        public Integer getId() { return id; }
        public Interview setId(Integer value) { this.id = value; return this; }
        public Date getBookingTime() { return bookingTime; }
        public Interview setBookingTime(Date value) { this.bookingTime = value; return this; }
        public Integer getJobApplicationId() { return jobApplicationId; }
        public Interview setJobApplicationId(Integer value) { this.jobApplicationId = value; return this; }
        public String getAppUserId() { return appUserId; }
        public Interview setAppUserId(String value) { this.appUserId = value; return this; }
        public AppUser getAppUser() { return appUser; }
        public Interview setAppUser(AppUser value) { this.appUser = value; return this; }
        public JobApplicationStatus getApplicationStatus() { return applicationStatus; }
        public Interview setApplicationStatus(JobApplicationStatus value) { this.applicationStatus = value; return this; }
        public String getNotes() { return notes; }
        public Interview setNotes(String value) { this.notes = value; return this; }
    }

    public static class JobOffer extends AuditBase
    {
        public Integer id = null;
        public Integer salaryOffer = null;
        public String currency = null;
        @References(Type=JobApplication.class)
        public Integer jobApplicationId = null;

        @References(Type=AppUser.class)
        public String appUserId = null;

        public AppUser appUser = null;
        public String notes = null;
        
        public Integer getId() { return id; }
        public JobOffer setId(Integer value) { this.id = value; return this; }
        public Integer getSalaryOffer() { return salaryOffer; }
        public JobOffer setSalaryOffer(Integer value) { this.salaryOffer = value; return this; }
        public String getCurrency() { return currency; }
        public JobOffer setCurrency(String value) { this.currency = value; return this; }
        public Integer getJobApplicationId() { return jobApplicationId; }
        public JobOffer setJobApplicationId(Integer value) { this.jobApplicationId = value; return this; }
        public String getAppUserId() { return appUserId; }
        public JobOffer setAppUserId(String value) { this.appUserId = value; return this; }
        public AppUser getAppUser() { return appUser; }
        public JobOffer setAppUser(AppUser value) { this.appUser = value; return this; }
        public String getNotes() { return notes; }
        public JobOffer setNotes(String value) { this.notes = value; return this; }
    }

}

Java 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
}