# Real-Time Bing Jobs Data - Bing Job Search & Full Job Details > Fast and Reliable Job Searches on Public Job Sites: LinkedIn, ZipRecruiter, Monster, and Others in Real-Time from Microsoft Bing Jobs Search. ## Overview Real-Time Bing Jobs Data is a fast and reliable API for job postings from Bing's jobs vertical, fetched live at request time. It returns structured JSON via REST. Who is this API for: developers building job boards and aggregators, recruiting and talent-sourcing tools, labor-market and hiring-trend research, skills-demand analysis, and job board coverage analysis. What it returns: free-form job search with filters for date posted, employment type, remote-only, radius and publisher exclusion; and full job details for up to 20 job ids per request. Bing aggregates postings from many job boards, including LinkedIn, ZipRecruiter, CareerBuilder, Glassdoor and Monster, and every job names each board carrying it. Each job carries the title, employer name, location, the full description, the apply link and every board's apply option, the employment type, the posting and expiration dates as both a label and a timestamp, a remote flag and a normalized title, with employer logos and benefit chips wherever Bing shows them. Job details adds AI-extracted salary figures, seniority, years of experience, education, required and preferred technologies, industry, job function, extended benefits and soft skills. Every job object is a superset of the 35-key JSearch job contract, with the same keys on every job. Need help integrating? Contact support@openwebninja.com. For high volume / large scale plans, please contact support@openwebninja.com. ## Endpoints ### GET /search - Search Jobs Search Bing's jobs vertical, with `date_posted`, `employment_types`, `work_from_home`, `radius` and `exclude_job_publishers` filters. Parameters: - **query** (string, required, e.g. `developer jobs in new york`): Free-form job search query. Include the job title and location, for example `developer jobs in new york`: Bing's jobs vertical is keyed off natural language, and a bare keyword drifts toward unrelated postings. Exactly one `query` is accepted; a second one is a 400. - location (string): Free-text location, for example `New York, NY`. Appended to the `query` text, since Bing builds its own location filter from coordinates. Putting the location inside `query` works the same way. - page (integer, default: `1`): Page to return (each page includes up to 10 results). `page` + `num_pages` must stay within page 50. Every request walks Bing's results from the start, so deeper pages take longer. **Default:** `1` **Allowed values:** `1-50` - num_pages (integer, default: `1`): Number of pages to return, starting from `page`, merged and de-duplicated by `job_id`. `page` + `num_pages` must stay within page 50. Each page of up to 10 results returned consumes one request credit. **Default:** `1` **Allowed values:** `1-20` - country (string, default: `us`): Country code of the country from which to return job postings, see ISO 3166-1 alpha-2. It selects Bing's national job index, so to search for developer jobs in Berlin, send `country=de`. **Default:** `us` - language (string): Language code for Bing's interface language, see ISO 639-1. Leave empty to use the primary language of `country`. With `en`, the word *jobs* is appended to a query that does not already contain *job*. - date_posted (string, default: `all`, allowed: all | today | 3days | week | month): Find jobs posted within the time you specify. `today`, `3days` and `week` are Bing's own date filter. `month` has no Bing equivalent, since Bing's widest window is 7 days, so it is sent unfiltered and returns a superset. **Default:** `all` **Allowed values:** `all`, `today`, `3days`, `week`, `month` - employment_types (string, allowed: FULLTIME | CONTRACTOR | PARTTIME | INTERN): Find jobs of particular employment types, specified as a comma delimited list. `FULLTIME`, `CONTRACTOR` and `PARTTIME` are filtered by Bing. `INTERN` has no Bing filter and is enforced locally on the type Bing states. An unknown value is a 400. **Allowed values:** `FULLTIME`, `CONTRACTOR`, `PARTTIME`, `INTERN` - work_from_home (boolean, default: `false`): Only return work from home / remote jobs. Applied by Bing's own remote filter. **Default:** `false` - radius (number): Return jobs within a certain distance from the location in `query` or `location`, in km. Bing honours only a 10 / 20 / 30 / 40 mile menu, so the value is converted to miles and snapped to the nearest: 32 km becomes 20 miles. - exclude_job_publishers (string): Exclude jobs published by specific publishers, as a comma separated list, for example `LinkedIn,Indeed`. Bing has no publisher filter, so this is applied after fetching, case-insensitively and as a substring match against `job_publisher` and every `job_publishers` entry. A page can then return fewer than 10 jobs. - include_descriptions (boolean, default: `true`): Whether to include the full job description and apply links. Bing search results carry neither, so each job's detail page is fetched in parallel, capped at 100 jobs per request. Set to `false` for a faster listing-only response. The detail fetches are not billed. **Default:** `true` - fields (string): Comma-separated projection over the job object, for example `job_title,employer_name,job_apply_link`. `job_id` and `job_title` are always included. Every field this endpoint returns can be selected, including `job_location`, `job_posted_at`, `job_publishers`, `job_employment_types`, `job_benefits_strings`, `job_normalized_title` and `job_position`. An unknown field name is a 400. Full URL: `https://api.openwebninja.com/realtime-bing-jobs-data/search` ### GET /job-details - Job Details Full details for up to 20 Bing job postings in one call, fetched concurrently, including the complete job description and the decoded apply links of every board carrying the posting. Parameters: - **job_id** (string, required, e.g. `YmluZzotNDYyNDU5MzAzLlJldHJv`): Job Id of the job for which to get details. Batching of up to 20 Job Ids is supported by separating multiple Job Ids by comma (,). The raw `job_uid` is also accepted. Each Job Id in a batch counts as one request. - country (string, default: `us`): Country code of the country the job was searched in, see ISO 3166-1 alpha-2. It is the fallback for `job_country` when the job location names no country. **Default:** `us` - language (string): Language code sent to Bing with the request, see ISO 639-1. Leave empty to use the primary language of `country`. - fields (string): Comma-separated projection over the job object, for example `job_title,job_description,job_apply_link`. `job_id` and `job_title` are always included, and every returned field can be selected. The search-only keys (`job_position`, `job_bing_company_id`, `job_bing_title_id`) are accepted and ignored, so one field list works on both endpoints. An unknown field name is a 400. Full URL: `https://api.openwebninja.com/realtime-bing-jobs-data/job-details` ## Base URL and Authentication - Base URL: `https://api.openwebninja.com/realtime-bing-jobs-data` - Auth: API key in the `x-api-key` header. Get a key by subscribing (free tier available) at https://app.openwebninja.com/api/realtime-bing-jobs-data ## Topics bing jobs api, bing job search api, job postings api, job details api, job search api, recruiting api, talent sourcing api, job boards api, jobs data api, hiring trends api ## Links - API page: https://www.openwebninja.com/api/real-time-bing-jobs-data - Get an API key / subscribe: https://app.openwebninja.com/api/realtime-bing-jobs-data - Pricing & plans: https://app.openwebninja.com/api/realtime-bing-jobs-data/pricing - Website: https://www.openwebninja.com - OpenAPI spec: https://openwebninja.s3.us-east-1.amazonaws.com/portal/openapi/realtime_bing_jobs_data.yaml - Support: support@openwebninja.com _Last updated: 2026-09-23_