All Physician Jobs API v2.0

Manage Jobs

The jobs endpoint is used to fetch, post, update and delete jobs on All Physician Jobs.

Fetch Jobs

GET
/api/v2.0/jobs.jsonxml

Parameters

Parameters should be appended to the endpoint URL as a standard query string.

Name Format/Values Required Description
state USPS 2-letter abbreviation No Fetch only jobs in the specified state
license One of the following values:
  • MD
  • DO
  • PA
  • NP
  • CRNA
No Fetch only jobs of the specified license type
specialty One of the following values:
  • Addiction Medicine
  • Administration
  • Allergy and Immunology
  • Anesthesiology
  • Cardiology
  • Cardiothoracic Surgery
  • Child and Adolescent Psychiatry
  • Colorectal Surgery
  • Critical Care
  • Dermatology
  • Emergency Medicine
  • Endocrinology
  • Family Practice
  • Gastroenterology
  • General Practice
  • General Surgery
  • Genetics
  • Geriatrics
  • Hematology and Oncology
  • Hospitalist
  • Infectious Disease
  • Internal Medicine
  • Interventional Radiology
  • Maternal-Fetal Medicine
  • Neonatal
  • Nephrology
  • Neurology
  • Neurosurgery
  • Nurse Practitioner
  • Obstetrics and Gynecology
  • Occupational Medicine
  • Oncology
  • Ophthalmology
  • Orthopedic Surgery
  • Osteopathic
  • Other
  • Otolaryngology
  • Palliative Medicine
  • Pathology
  • Pediatric Surgery
  • Pediatrics
  • Perinatology
  • Physical Medicine
  • Psychiatry
  • Psychology
  • Pulmonology
  • Radiation Oncology
  • Radiology
  • Rheumatology
  • Trauma Surgery
  • Urgent Care
  • Urology
  • Vascular Surgery
No Fetch only jobs of the specified specialty
sort One of the following values:
  • id
  • title
  • state
  • license
  • specialty
  • posted
No Sort by the specified field. Defaults to ascending order; for descending order, put a - (hyphen) in front of the field name.

For example: -posted would sort the jobs in descending order based on the date they were posted.

Sample Request

To show only jobs in Kentucky seeking MDs, sorted by title, your request would look like this:

GET
/api/v2.0/jobs.jsonxml?state=KY&license=MD&sort=title

Sample Response

[
	{
		"id":"12346",
		"title":"Travel Nephrology Assignment in Lexington, KY",
		"license":"MD",
		"specialty":"Nephrology",
		"city":"Lexington",
		"state":"KY",
		"zip":null,
		"shift":"D\/N rotating",
		"payrate":null,
		"duration":"Part-Time",
		"startdate":"2015-04-16T00:00:00-04:00",
		"description":"Travel Nephrology assignment in Lexington, KY",
		"requirements":null,
		"benefits":null,
		"posted":"2015-04-16T17:00:04-04:00",
		"referencenumber":"abcd1234"
	},
	{
		"id":"12345",
		"title":"Travel OB Physician Needed in Elizabethtown, KY",
		"license":"MD",
		"specialty":"Obstetrics and Gynecology",
		"city":"Elizabethtown",
		"state":"KY",
		"zip":null,
		"shift":"nights",
		"payrate":null,
		"duration":"Part-Time",
		"startdate":"2015-04-16T00:00:00-04:00",
		"description":"Travel OB Physician Needed in Elizabethtown, KY",
		"requirements":null,
		"benefits":null,
		"posted":"2015-04-16T17:00:04-04:00",
		"referencenumber":"abcd5678"
	}
]
<jobs>
	<job>
		<id>12346</id>
		<title><![CDATA[Travel Nephrology Assignment in Lexington, KY]]></title>
		<license>MD</license>
		<specialty>Nephrology</specialty>
		<city>Lexington</city>
		<state>KY</state>
		<zip></zip>
		<shift><![CDATA[D/N rotating]]></shift>
		<payrate><![CDATA[]]></payrate>
		<duration>Part-Time</duration>
		<startdate>2015-04-16T00:00:00-04:00</startdate>
		<description><![CDATA[Travel Nephrology assignment in Lexington, KY]]></description>
		<requirements><![CDATA[]]></requirements>
		<benefits><![CDATA[]]></benefits>
		<posted>2015-04-16T17:00:04-04:00</posted>
		<referencenumber><![CDATA[abcd1234]]></referencenumber>
	</job>
	<job>
		<id>12345</id>
		<title><![CDATA[Travel OB Physician Needed in Elizabethtown, KY]]></title>
		<license>MD</license>
		<specialty>Obstetrics and Gynecology</specialty>
		<city>Elizabethtown</city>
		<state>KY</state>
		<zip></zip>
		<shift><![CDATA[nights]]></shift>
		<payrate><![CDATA[]]></payrate>
		<duration>Part-Time</duration>
		<startdate>2015-04-16T00:00:00-04:00</startdate>
		<description><![CDATA[Travel OB Physician Needed in Elizabethtown, KY]]></description>
		<requirements><![CDATA[]]></requirements>
		<benefits><![CDATA[]]></benefits>
		<posted>2015-04-16T17:00:04-04:00</posted>
		<referencenumber><![CDATA[abcd5678]]></referencenumber>
	</job>
</jobs>

Fetch a Single Job

GET
/api/v2.0/jobs.jsonxml/{id}

Parameters

Field Format/Values Required Description
id Integer Yes The ID number of the job you want to fetch. Note: This parameter is passed as part of the endpoint URL and not in a query string.

Sample Request

GET
/api/v2.0/jobs.jsonxml/12345

Sample Response

{
	"id":"12345",
	"title":"Travel OB Physician Needed in Elizabethtown, KY",
	"license":"MD",
	"specialty":"Obstetrics and Gynecology",
	"city":"Elizabethtown",
	"state":"KY",
	"zip":null,
	"shift":"nights",
	"payrate":null,
	"duration":"Part-Time",
	"startdate":"2015-04-16T00:00:00-04:00",
	"description":"Travel OB Physician Needed in Elizabethtown, KY",
	"requirements":null,
	"benefits":null,
	"posted":"2015-04-16T17:00:04-04:00",
	"referencenumber":"abcd5678"
}
<job>
	<id>12345</id>
	<title><![CDATA[Travel OB Physician Needed in Elizabethtown, KY]]></title>
	<license>MD</license>
	<specialty>Obstetrics and Gynecology</specialty>
	<city>Elizabethtown</city>
	<state>KY</state>
	<zip></zip>
	<shift><![CDATA[nights]]></shift>
	<payrate><![CDATA[]]></payrate>
	<duration>Part-Time</duration>
	<startdate>2015-04-16T00:00:00-04:00</startdate>
	<description><![CDATA[Travel OB Physician Needed in Elizabethtown, KY]]></description>
	<requirements><![CDATA[]]></requirements>
	<benefits><![CDATA[]]></benefits>
	<posted>2015-04-16T17:00:04-04:00</posted>
	<referencenumber><![CDATA[abcd5678]]></referencenumber>
</job>

Post Jobs

This method is also used to update existing jobs, and does not require you to keep track of which jobs are already on our website.

POST
/api/v2.0/jobs.jsonxml

Parameters

These parameters must be sent in a properly structured request payload.

Field Format/Values Required Description
referencenumber Alphanumeric Yes Can be any combination of letters and numbers. Must be unique for each job and remain unchanged throughout the lifespan of the job.

This number is used to identify if our website already has a copy of this job. If it exists, we will update the existing job with any new information provided in your request. If not, the job will be added as a new job.
title String Yes The title of your job posting. Make sure to wrap in <![CDATA[ ]]>
city String No The city where your job posting is located
state USPS 2-letter abbreviation Yes The state where your job posting is located
zip USPS 5-digit zip code No The zip code where your job posting is located
license One of the following values:
  • MD
  • DO
  • PA
  • NP
  • CRNA
  • MD/DO*
  • NP/PA*
Yes What type of license a physician applying to your job post needs to have. We use this to appropriately categorize your job.

*Jobs passed in with these combinations of licenses will be split into two jobs, one with the first license and the other with the second license.
specialty One of the following values:
  • Addiction Medicine
  • Administration
  • Allergy and Immunology
  • Anesthesiology
  • Cardiology
  • Cardiothoracic Surgery
  • Child and Adolescent Psychiatry
  • Colorectal Surgery
  • Critical Care
  • Dermatology
  • Emergency Medicine
  • Endocrinology
  • Family Practice
  • Gastroenterology
  • General Practice
  • General Surgery
  • Genetics
  • Geriatrics
  • Hematology and Oncology
  • Hospitalist
  • Infectious Disease
  • Internal Medicine
  • Interventional Radiology
  • Maternal-Fetal Medicine
  • Neonatal
  • Nephrology
  • Neurology
  • Neurosurgery
  • Nurse Practitioner
  • Obstetrics and Gynecology
  • Occupational Medicine
  • Oncology
  • Ophthalmology
  • Orthopedic Surgery
  • Osteopathic
  • Other
  • Otolaryngology
  • Palliative Medicine
  • Pathology
  • Pediatric Surgery
  • Pediatrics
  • Perinatology
  • Physical Medicine
  • Psychiatry
  • Psychology
  • Pulmonology
  • Radiation Oncology
  • Radiology
  • Rheumatology
  • Trauma Surgery
  • Urgent Care
  • Urology
  • Vascular Surgery
Yes What specialty most accurately describes your job post. We use this to appropriately categorize your job.

If you have used our Specialty Mapping Tool, you may use any mapped term in addition to the ones on the left.
shift String No What shift your job posting is for. Make sure to wrap in <![CDATA[ ]]>
payrate String No How much this position pays. Make sure to wrap in <![CDATA[ ]]>
duration One of the following values:
  • Full-Time
  • Part-Time
  • Locum
  • Full-Time/Locum*
Yes The duration of this job.

*Jobs passed in with these combinations of durations will be split into two jobs, one with the first duration and the other with the second duration.
startdate mm/dd/yy No The date your position starts.
description String Yes The description of your job posting. Basic HTML tags are allowed. Make sure to wrap in <![CDATA[ ]]>
requirements String No The minimum requirements a candidate applying to your job posting must meet. Basic HTML tags are allowed. Make sure to wrap in <![CDATA[ ]]>
benefits String No The benefits offered by this position. Basic HTML tags are allowed. Make sure to wrap in <![CDATA[ ]]>

Sample Request Payload

[
	{
		"referencenumber":"abcd1234",
		"title":"Travel Oncologist Needed in Danville, PA",
		"city":"Danville",
		"state":"PA",
		"zip":17821,
		"license":"MD",
		"specialty":"Oncology",
		"shift":"8 Hour Afternoon Shift (3pm-11:30pm)",
		"payrate":"$90/hr",
		"duration":"Part-Time",
		"startdate":"2015-04-17T00:00:00-04:00",
		"description":"A qualified candidate for this job would be a licensed physician who has a minimum of 2 years of relevant experience. The individual would be flexible and comfortable working in a fast-paced facility. This physician would be a team player who works well with others while providing excellent patient care.",
		"requirements":"<ul><li>Valid license in good standing</li><li>All current certifications</li></ul>",
		"benefits":"<ul><li>Fabulous pay</li><li>Free housing or housing stipend</li><li>Daily meals and incidentals stipend</li><li>Travel expense reimbursement</li></ul>"
	},
	{
		"referencenumber":"abcd5678",
		"title":"Locum Tenens CRNA Job in Alabama",
		"city":null,
		"state":"AL",
		"zip":null,
		"license":"CRNA",
		"specialty":"Anesthesiology",
		"shift":null,
		"payrate":null,
		"duration":"Locum",
		"startdate":"2015-11-01T00:00:00-04:00",
		"description":"Locum tenens opportunity in Alabama for a CRNA who is available to assist with a call coverage need in the month of November. The locum CRNA will be providing 24 hour call coverage on sporadic dates throughout the month. The chosen candidate must be ACLS certified and be comfortable with labor epidurals.",
		"requirements":"<ul><li>ACLS certification</li></ul>",
		"benefits":"<ul><li>Competitive compensation</li><li>Travel-related expenses covered</li><li>A-rated medical malpractice insurance provided</li><li>New license assistance program available</li><li>Industry leading licensing and credentialing support</li></ul>"
	}
]
<jobs>
	<job>
		<referencenumber>abcd1234</referencenumber>
		<title><![CDATA[Travel Oncologist Needed in Danville, PA]]></title>
		<city>Danville</city>
		<state>PA</state>
		<zip>17821</zip>
		<license>MD</license>
		<specialty>Oncology</specialty>
		<shift><![CDATA[8 Hour Afternoon Shift (3pm-11:30pm)]]></shift>
		<payrate><![CDATA[$90/hr]]></payrate>
		<duration>Part-Time</duration>
		<startdate>2015-04-17T00:00:00-04:00</startdate>
		<description><![CDATA[A qualified candidate for this job would be a licensed physician who has a minimum of 2 years of relevant experience. The individual would be flexible and comfortable working in a fast-paced facility. This physician would be a team player who works well with others while providing excellent patient care.]]></description>
		<requirements><![CDATA[<ul><li>Valid license in good standing</li><li>All current certifications</li></ul>]]></requirements>
		<benefits><![CDATA[<ul><li>Fabulous pay</li><li>Free housing or housing stipend</li><li>Daily meals and incidentals stipend</li><li>Travel expense reimbursement</li></ul>]]></benefits>
	</job>
	<job>
		<referencenumber>abcd5678</referencenumber>
		<title><![CDATA[Locum Tenens CRNA Job in Alabama]]></title>
		<city></city>
		<state>AL</state>
		<zip></zip>
		<license>CRNA</license>
		<specialty>Anesthesiology</specialty>
		<shift><![CDATA[]]></shift>
		<payrate><![CDATA[]]></payrate>
		<duration>Locum</duration>
		<startdate>2015-03-11T00:00:00-04:00</startdate>
		<description><![CDATA[Locum tenens opportunity in Alabama for a CRNA who is available to assist with a call coverage need in the month of November. The locum CRNA will be providing 24 hour call coverage on sporadic dates throughout the month. The chosen candidate must be ACLS certified and be comfortable with labor epidurals.]]></description>
		<requirements><![CDATA[<ul><li>ACLS certification</li></ul>]]></requirements>
		<benefits><![CDATA[<ul><li>Competitive compensation</li><li>Travel-related expenses covered</li><li>A-rated medical malpractice insurance provided</li><li>New license assistance program available</li><li>Industry leading licensing and credentialing support</li></ul>]]></benefits>
	</job>
</jobs>

Sample Responses

In this example, one of the jobs in the request already existed, and the job details in the API request matched what was already in the job, which is why it was counted as "unchanged". If there had been a new description, for example, the existing job would be counted as "updated" instead.

{
	"unchanged":1,
	"updated":0,
	"added":1,
	"errors":[]
}
<?xml version="1.0" encoding="utf-8"?>
<results>
	<unchanged>1</unchanged>
	<updated>0</updated>
	<added>1</added>
	<errors></errors>
</results>

In this example, the jobs in the request payload were modified to throw errors:

{
	"unchanged":0,
	"updated":0,
	"added":0,
	"errors":[
		{
			"reference":"abcd1234",
			"details":[
				"Title is required"
			]
		},
		{
			"reference":"abcd5678",
			"details":[
				"License is invalid or missing. Value passed was: RN",
				"Specialty is invalid or missing. Value passed was: Internal"
			]
		}
	]
}
<results>
	<unchanged>0</unchanged>
	<updated>0</updated>
	<added>0</added>
	<errors>
		<error>
			<reference>abcd1234</reference>
			<details>
				<message>Title is required</message>
			</details>
		</error>
		<error>
			<reference>abcd5678</reference>
			<details>
				<message>License is invalid or missing. Value passed was: RN</message>
				<message>Specialty is invalid or missing. Value passed was: Internal</message>
			</details>
		</error>
	</errors>
</results>

Delete Jobs

DELETE
/api/v2.0/jobs.jsonxml

Parameters

If provided, these parameters must be sent in a properly structured request payload.

Field Format/Values Required Description
referencenumbers Array No An array of alphanumeric referencenumber field values. If present, only the specified jobs will be deleted.

Sample Request Payload

[
	"abcd1234",
	"abcd5678"
]
<referencenumbers>
	<referencenumber>abcd1234</referencenumber>
	<referencenumber>abcd5678</referencenumber>
</referencenumbers>

Sample Response

{
	"deleted":2
}
<results>
	<deleted>2</deleted>
</results>

Delete a Single Job

DELETE
/api/v2.0/jobs.jsonxml/{id}

Parameters

These parameters must be sent in a properly structured request payload.

Field Format/Values Required Description
id Integer Yes The ID number of the job you want to delete. Note: This parameter is passed as part of the endpoint URL and not in a query string.

Sample Request

DELETE
/api/v2.0/jobs.jsonxml/12345

Sample Response

{
	"deleted":1
}
<results>
	<deleted>1</deleted>
</results>

Delete a Single Job with Reference Number

DELETE
/api/v2.0/jobs.jsonxml/reference/{id}

Parameters

These parameters must be sent in a properly structured request payload.

Field Format/Values Required Description
id Integer Yes The reference number of the job you want to delete. Note: This parameter is passed as part of the endpoint URL and not in a query string.

Sample Request

DELETE
/api/v2.0/jobs.jsonxml/reference/12345

Sample Response

{
	"deleted":1
}
<results>
	<deleted>1</deleted>
</results>