Jobvite APIjobs.jobvite.com ↗
Retrieve open job listings and full application form structures from any Jobvite-hosted career site. Two endpoints covering job IDs, categories, locations, and form fields.
What is the Jobvite API?
The Jobvite Jobs API exposes 2 endpoints that read job listings and application form definitions from jobs.jobvite.com career sites. The list_jobs endpoint returns every open role on a given company's career page — with job IDs, titles, categories, and locations — in a single flat array. The get_application_form endpoint returns the complete form schema for any individual listing, including all sections, field types, required flags, option lists, and consent policies.
curl -X GET 'https://api.parse.bot/scraper/2470e05e-bb4f-464b-b643-f6ad6501325d/list_jobs?company=ninjaone' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace jobs-jobvite-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Jobvite career-site SDK — list open jobs, then inspect one application form."""
from parse_apis.jobs_jobvite_com_api import Jobvite, InputNotFound
client = Jobvite()
# List open jobs on a career site, capped to 5.
for job in client.jobs.list(company="ninjaone", limit=5):
print(job.title, "|", job.category, "|", job.location)
# Drill into the first job's application form.
job = client.jobs.list(company="ninjaone", limit=1).first()
if job is not None:
try:
form = job.application_form.get()
except InputNotFound:
print("Job listing was removed before we could fetch its form.")
else:
print(form.job_title, "—", form.job_category)
print("Req ID:", form.job_req_id)
# Show consent policies the applicant must accept.
for policy in form.consent_policies:
print("Consent:", policy.name)
# Walk each form section and its fields.
for section in form.sections:
print(f"\nSection {section.step}: {section.name}")
for field in section.form_fields:
req = "*" if field.required else ""
print(f" {field.name}{req} ({field.field_type})")
for opt in field.options[:3]:
print(f" - {opt.label}")
print("\nexercised: jobs.list / application_form.get")
Returns every open job currently shown on a Jobvite career site's job list, grouped as one flat array with each job's category heading and location. One request, no pagination (the career site renders the whole list on one page). Each job carries a job_id that get_application_form accepts unchanged. An unknown career-site slug returns a not-found error.
| Param | Type | Description |
|---|---|---|
| company | string | Jobvite career-site slug, the first path segment of a jobs.jobvite.com URL (letters, digits, - or _). |
{
"type": "object",
"fields": {
"jobs": "array of open jobs, each with job_id (use with get_application_form), title, category (department heading on the site) and location text",
"total": "number of jobs returned",
"company": "career-site slug the list was read from"
},
"sample": {
"data": {
"jobs": [
{
"title": "Billing Operations Specialist",
"job_id": "okinAfwj",
"category": "Accounting & Finance",
"location": "Hybrid Remote, Manila, Philippines"
}
],
"total": 78,
"company": "ninjaone"
},
"status": "success"
}
}About the Jobvite API
Job Listings
The list_jobs endpoint accepts a company parameter — the slug that appears as the first path segment of any jobs.jobvite.com URL — and returns every open role in one response with no pagination. Each item in the jobs array includes a job_id, title, category (the department heading used on the career site), and location. The total field confirms the count of roles returned. The job_id values are the direct inputs to the second endpoint.
Application Form Structure
The get_application_form endpoint takes a job_id (the segment after /job/ in a Jobvite listing URL, or taken directly from list_jobs) and the optional company slug. It returns a fully structured form definition: sections is an ordered array where step 1 is the Personal Information section and step 2 is the pre-screening questionnaire (when one exists). Each section contains a fields array with field_id, name, field_type, required flags, and any selectable options.
Job Metadata and Consent
Alongside the form structure, get_application_form returns job_title, job_req_id (the employer's internal requisition number), and job_category. The consent_policies array lists every privacy or data-use policy the applicant must accept before submitting, each with a policy_id and name. If the listing has no pre-screening questionnaire, prescreening_form_name is null.
Coverage
Both endpoints operate against any Jobvite-hosted career site by changing the company slug. There is no filtering or search parameter on list_jobs; it returns the full open-role list for the specified company slug in one call.
The Jobvite API is a managed, monitored endpoint for jobs.jobvite.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when jobs.jobvite.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official jobs.jobvite.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Aggregate open roles across multiple Jobvite-hosted employers by iterating
list_jobswith differentcompanyslugs - Map application form fields and required inputs for job-seeker automation tools using
get_application_formfield definitions - Identify which Jobvite job listings include pre-screening questionnaires by checking
prescreening_form_name - Extract department-level hiring activity by grouping
list_jobsresults bycategory - Audit consent policy requirements across job listings using the
consent_policiesarray - Build a job alert system that detects new
job_idvalues on a company's Jobvite career page - Compare form complexity across roles by counting and typing the
fieldsentries returned for eachjob_id
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Jobvite offer an official public developer API?+
What does `get_application_form` return beyond the field list?+
sections and fields arrays, the response includes job_title, job_req_id (the employer's requisition number), job_category, prescreening_form_name (null when absent), and a consent_policies array listing every privacy or data-use policy attached to that listing.Does `list_jobs` support filtering by location, category, or keyword?+
list_jobs returns all open roles for a given company slug in one flat array; filtering by location, category, or keyword is not a supported input parameter. You can fork this API on Parse and revise it to add server-side or post-response filtering logic.Can this API retrieve closed, filled, or draft job listings?+
list_jobs only surfaces roles that are currently open and visible on the public career site. Closed, filled, or internally-drafted positions are not included. You can fork this API on Parse and revise it to add a separate endpoint if a different listing state becomes accessible.Does the API cover Jobvite career sites hosted on custom domains rather than jobs.jobvite.com?+
jobs.jobvite.com/{company} URL structure. Career sites Jobvite customers serve from their own custom domains are not currently covered. You can fork this API on Parse and revise the endpoint to target a specific custom-domain career site.