JSearch

FREEMIUM
Verified
By OpenWeb Ninja | Updated 13 hours ago | Data
Popularity

9.9 / 10

Latency

1,688ms

Service Level

100%

Health Check

100%

Followers: 90
Resources:
Product Website
API Creator:
Rapid account: Open Web Ninja
OpenWeb Ninja
letscrape-6bRBa3QguO5
Log In to Rate API
Rating: 4.4 - Votes: 28

README

Overview

Introduction

The OpenWeb Ninja JSearch API offers a fast, reliable, and comprehensive real-time job postings data and salary data from Google for Job - the largest job aggregate on the web. The API sources job postings and salary data from LinkedIn, Indeed, Glassdoor, ZipRecruiter, Monster + all public job sites on the web.

The API supports several options and filters, including filtering by posting date, job title, location, remote jobs, job requirements, employer, and many other options. Each job posting includes 40+ job data points, including job title, job description, required experience, education, skills, job location, job expiration, and many other details.

Getting Started

To begin using JSearch API, follow these steps and make your first API call:

  1. Subscribe to a plan: Visit our Pricing page and subscribe to one of the plans. If you are just starting, you can subscribe to the free BASIC plan of the API with 200 free monthly requests (hard-limited and no credit card required).

  2. Make your first API call: Visit the RapidAPI Endpoints page - the Search endpoint should be selected and displayed on the main panel view. Since there is already a default query parameter value, just click the blue “Test endpoint” button to make a your first API call. The JSON response will be displayed on the right panel.

  3. Documentation and Resources: Refer to the detailed endpoint, parameter descriptions, and examples provided in the Endpoints tab under each endpoint. Code snippets are available for all popular programming languages and environments, including - Javascript, Python, Java, Shell, and many others, to help you easily integrate the API into your project or workflow.

You should be good to go now!

Authentication

To authenticate with the API, send the X-RapidAPI-Host header with a value of “jsearch.p.rapidapi.com” along with the X-RapidAPI-Key header set with your RapidAPI App API Key (as shown in the endpoint Code Snippets).

Response Structure

All JSON response bodies returned by our API backend have the following fields: status (ERROR or OK), request_id, and either error (including message and code fields), if the request failed and data field otherwise.

Here’s an example of a successful response:

{
    "status": "OK",
    "request_id": "53345b8a-de21-40c7-9ec7-b5842796c526",
    "data": {..} or [..] 
}

Here’s an example of an error response:

{
    "status": "ERROR",
    "request_id": "408a33ea-77f5-4a21-94e5-8b5884da6bb1",
    "error": {
        "message": "Limit should be an integer between 1-500.",
        "code": 400
    }
}

Please note that some errors might be returned by the RapidAPI gateway and will have a different structure. Please refer to the Error Handling / Error Response Structure section for more details.

In addition, RapidAPI gateway adds several headers to each response, for more information, please refer to https://docs.rapidapi.com/docs/response-headers.

Endpoints

For detailed endpoint parameters and responses documentation and examples, and to try the API, please refer to the Endpoints section of the API.

Search

GET /search

Search for jobs posted on any public job site across the web on the largest job aggregate in the world (Google for Jobs). Extensive filtering support and most options available on Google for Jobs.

Search Filters

GET /search-filters

Get filter values for use with the Search endpoint. Accepts all Search endpoint parameters (except for page and num_pages) and returns the relevant filters and their estimated result counts for later use in Search or for stats further analysis.

Each filter value in the response corresponds to a tab in the top filters tab bar as seen on https://google.com/search?gl=us&ibp=htl;jobs&q=marketing+in+texas.

Job Details

GET /job-details

Get all job details by id. Details including all job details returned by the Search endpoint in addition to employer reviews, additional application options / links, and estimated salaries for similar jobs.

Estimated Salary

GET /estimated-salary

Get salary/pay estimation for a job title (e.g. Node Developer) around a location (e.g. San Francisco, CA, US). A search radius (km) can be specified (default is 200) - results are returned from within the area defined by location and radius.

The salary estimations are returned for several periods, depending on data availability / relevance, and includes: hourly, daily, weekly, monthly, or yearly.

Rate Limiting

Limits

Each subscription plan of the API defines the maximum number of requests permitted per month or the quota, in addition to a rate limit expressed in RPS (Requests Per Second).

Please note that all free plans of the API (e.g. BASIC) are rate limited to 1000 requests per hour. This is a RapidAPI requirement for any free plan.

Rate Limits Headers

All API responses include rate limit information in the following headers:

  • x-ratelimit-requests-limit: number of requests the plan you are currently subscribed to allows you to make before incurring overages.
  • x-ratelimit-requests-remaining: The number of requests remaining (from your plan) before you reach the limit of requests your application is allowed to make. When this reaches zero, you will begin experiencing overage charges. This will reset each day or each month, depending on how the API pricing plan is configured. You can view these limits and quotas on the pricing page of the API in the API Hub.
  • x-ratelimit-requests-reset: Indicates the number of seconds until the quota resets. This number of seconds would at most be as long as either a day or a month, depending on how the plan was configured.

Handling Limits

When hitting the rate limits of the API, the RapidAPI gateway will return a 429 Too Many Requests error. When that happens, wait until your rate limit resets, or consider upgrading your subscription plan for a higher limit. We can support almost any monthly quota and rate limit, contact us for more information.

Here’s an example of a 429 Too Many Requests error:

{
    "message":"Too many requests"
}

Code Examples

Code examples are available for all popular programming languages and environments (Javascript, Python, Java, Shell, etc) on the Endpoints tab, on the right panel, under “Code Snippets”.

Common Use Cases

The OpenWeb Ninja JSearch API can be used for a variety of use cases, including:

  • Job Pricing Analysis
  • Lead Generation & Account-Based Marketing (ABM)
  • Salary Benchmarking
  • Job Board Apps, Services, and Sites.
  • Jobs SEO

Error Handling

The JSearch API is designed to provide robust and reliable access to search data. However, in the event of errors during API interaction, we use HTTP status codes to indicate the nature of the problem. Below, you’ll find detailed explanations of common error codes you may encounter, along with potential causes and suggested remediation steps.

Common HTTP Status Codes

  • 400 Bad Request: This status is returned when your request is malformed or missing some required parameters. The response body might also include a “message” field, explaining the specific error. Ensure that all required fields are included and properly formatted before retrying your request.

  • 403 Forbidden: This error indicates that you are not subscribed to the API or that your API key is invalid. If you believe this is in error, please contact RapidAPI support - support@rapidapi.com.

  • 404 Not Found: This status is returned if the requested resource could not be found. This can occur with incorrect URL endpoints. Double-check the URL and try again.

  • 429 Too Many Requests: This error means you have hit the rate limit for your subscription plan. Wait until your rate limit resets, or consider upgrading your subscription plan for a higher limit. If you believe this is in error, please contact us.

  • 5XX Server Error (500, 502, and 503): This indicates a problem with our servers processing your request or an internal server timeout. This is a rare occurrence and should be temporary. If this error persists, please contact our technical support for assistance.

Error Response Structure

Errors returned by our API backend will have a message and potentially other details attached to them to help you understand and resolve issues. Here’s an example of an error response:

{
    "status": "ERROR",
    "request_id": "35dabdcd-b334-4600-afbc-d654b8af91cf",
    "error": {
        "message": "Missing query",
        "code": 400
    }
}

Some errors like 429 Too Many Requests, 403 Forbidden, or 404 Not Found, might be returned from RapidAPI gateway, in that case, the structure will be different. Here’s an example of an error response:

{
  "message": "You are not subscribed to this API."
}

Handling Errors Programmatically

Implement error handling in your application to manage these responses gracefully. Here are some tips:

  • Retry Logic: For 5XX (500, 502, 503) and 429, implement a retry mechanism that waits for a few seconds before retrying the request.

  • Validation: Prior to sending requests, validate parameters to catch common errors like 400 Bad Request.

  • Logging: Log error responses for further analysis to understand patterns or recurring issues that might require changes in how you integrate with the API. The request_id field in the response can be used for further debugging.

Support

If you encounter any issues that you are unable to resolve, or if you need further clarification on the errors you are seeing, please do not hesitate to contact us (see the Contact Us section below). Provide us with the error code, message, and the context in which the error occurred, and we will assist you promptly.

Contact Us

For custom plans / high tier plans, custom services or any other subject, feel free to drop us a private message or an email and we will get back to you shortly.

Email: support@openwebninja.com
Discord: https://discord.gg/wxJxGsZgha
LinkedIn: https://www.linkedin.com/company/openwebninja-api

Popular OpenWeb Ninja APIs 👉

  • Local Business Data - Extremely Comprehensive Local Business / Place Data from Google Maps - Reviews, Photos, Emails, Social, and 30+ additional data points with the most comprehensive and maintained local business API on the market.
  • JSearch - Fast and Reliable Job Searches on LinkedIn, Indeed, Glassdoor, and others on Google for Jobs in Real-Time.
  • Real-Time Amazon Data - Fast and Reliable Product Searches, Offers, Reviews, Best Sellers, Deals, and More on Amazon in Real-Time.
  • Real-Time Product Search - Fast and Comprehensive Product Searches, Offers, and Reviews on Google Shopping - the Largest Product Data Aggregate in the World.
  • Real-Time Web Search - Highly Scalable and Reliable, Organic Google Web Searches (SERP), and at an unbeatable speed.
  • Real-Time News Data - Get Top News Globally, per Topic or Search Local News on Google News in Real-Time.
  • Real-Time Image Search - Fast and Reliable Image Web Searches on Google Image Search in Real-Time.
  • Copilot - Simple and Reliable Microsoft Bing Copilot API (ChatGPT-4 / GPT-4 Turbo) with Web Browsing Capabilities and Continuous Conversations Support.
  • Real-Time Finance Data - Get Stock / Index / Market Quotes and Trends, ETF, International Exchanges / Forex, Crypto, Related News and Analytics in Real-Time.
  • Real-Time Lens Data - Search by Image on Google Lens in Real-Time, get Visual Matches, Knowledge Graph, Products, Text, OCR, QR Code information and more, all in a single API.
  • Web Search Autocomplete - Web Search Autocomplete with Support for Knowledge Graph Entities. Powered by Google Search Autocomplete.
  • Store Apps - Fast and Reliable Google Play Store Apps/Games Searches, Top Charts, Including Extensive App Details and Reviews in Real-Time.
  • Website Contacts Scraper - Lightning Fast Scraping of Emails, Phone Numbers, and Social URLs (Facebook, TikTok, Instagram, Twitter, LinkedIn and others) from a Website in Real-Time.
  • Real-Time Events Search - Search for Local and Online Events such as Concerts, Workshops, Festivals, Movies and More on Google in Real-Time.
  • Reverse Image Search - Fast and Reliable Reverse Image Searches - Find the Sources of an Image and Referencing Web Pages in Real-Time.
  • Trustpilot Company and Reviews Data - Fast and Reliable Company / Business Searches, Reviews, and more from Trustpilot in Real-Time (unofficial API).
  • Local Rank Tracker - Track Google My Business (GMB) Ranking Across a Local Area - Broken into a Local Search Grid (Local Falcon alternative).
  • Yelp Reviews - Fast and Reliable Business Searches, Reviews and More on Yelp in Real-Time.
  • Waze - Get Alerts, Traffic Jams Information and Driving Directions from Waze / Google in Real-Time.
  • Real-Time Capterra Data - Fast and Reliable API to Get Products and Product Reviews from Capterra in Real-Time (unofficial API).
  • Real-Time Glassdoor Data - Fast and Reliable Company/Employer Searches, Reviews, and more from Glassdoor in Real-Time (unofficial API).
  • EV Charge Finder - Fast and Reliable Search for EV Charging Stations Anywhere in the World, Including Connector Availability, Types and Power information / Options.
  • Real-Time Forums Search - Get Search Results from Forums Across the Web (Reddit, Quora, Stack Overflow, etc) from Google in Real-Time.
  • Real-Time Perspectives Search - Fast and Reliable Perspectives Web Searches on Google in Real-Time - Videos, News, Social - Reddit, Stack Overflow, and Other Community-First Sites.