Discover/Shine API
live

Shine APIshine.com

Access Shine.com job listings, details, categories, and locations via API. Search by keyword, location, experience, salary, and industry across India's job market.

Endpoint health
verified 23h ago
search_jobs
get_job_details
get_job_categories
get_locations_list
get_top_searches
5/5 passing latest checkself-healing
Endpoints
5
Updated
26d ago

What is the Shine API?

The Shine.com API exposes 5 endpoints covering job search, full job details, industry categories, location data, and trending searches from one of India's largest job portals. Use search_jobs to query across keyword, location, experience, salary, and industry filters, then call get_job_details with a job slug to retrieve the complete listing including skills, description, and salary range.

Try it
Page number for pagination.
Search keyword (e.g. 'Python Developer', 'data analyst'). Converted to URL slug format internally.
Minimum salary ID filter.
Company name to filter by (e.g. 'Capgemini'). Overrides query when provided.
Industry ID from get_job_categories (e.g. '18' for IT Services & Consulting, '6' for BFSI).
Location name to filter by (e.g. 'Bangalore', 'Delhi', 'Hyderabad'). Values from get_locations_list.
Minimum experience in years as a numeric string (e.g. '2', '4').
api.parse.bot/scraper/708d58be-f465-47b4-be6b-7f4bd198d190/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/708d58be-f465-47b4-be6b-7f4bd198d190/search_jobs?page=1&query=Python+Developer&location=Delhi' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 shine-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.

from parse_apis.shine.com_job_search_api import Shine, Job, JobDetail, Category, Location, TopSearch, JobNotFound

shine = Shine()

# Search for Python Developer jobs in Bangalore
for job in shine.jobs.search(query="Python Developer", location="Bangalore"):
    print(job.title, job.company, job.salary)
    # Get full details for this job
    detail = job.details()
    print(detail.description, detail.industry, detail.skills)
    break

# List all available categories
for category in shine.categories.list():
    print(category.id, category.name, category.count)

# List available locations
for location in shine.locations.list():
    print(location.id, location.name, location.count)

# Get trending searches
for search in shine.topsearches.list():
    print(search.name, search.url, search.visibility)
All endpoints · 5 totalmissing one? ·

Search for job listings on Shine.com by keyword, location, experience, salary, industry, or company. Returns paginated results with 20 jobs per page. When no filters are provided, returns all available jobs. The company parameter overrides query when provided.

Input
ParamTypeDescription
pageintegerPage number for pagination.
querystringSearch keyword (e.g. 'Python Developer', 'data analyst'). Converted to URL slug format internally.
salarystringMinimum salary ID filter.
companystringCompany name to filter by (e.g. 'Capgemini'). Overrides query when provided.
industrystringIndustry ID from get_job_categories (e.g. '18' for IT Services & Consulting, '6' for BFSI).
locationstringLocation name to filter by (e.g. 'Bangalore', 'Delhi', 'Hyderabad'). Values from get_locations_list.
experiencestringMinimum experience in years as a numeric string (e.g. '2', '4').
Response
{
  "type": "object",
  "fields": {
    "jobs": "array of job listing objects with job_id, title, company, location, experience, salary, posted_date, slug, job_url, snippet",
    "total_count": "integer total number of matching jobs",
    "total_pages": "integer total pages available",
    "current_page": "integer current page number"
  },
  "sample": {
    "data": {
      "jobs": [
        {
          "slug": "python-developers-based-at-poland-in-europe/vvinayak-associates/19076914",
          "title": "Python Developers, based at POLAND in Europe",
          "job_id": "19076914",
          "salary": "Rs 4.0  - 8 Lakh/Yr",
          "company": "Vvinayak Associates",
          "job_url": "https://www.shine.com/jobs/python-developers-based-at-poland-in-europe/vvinayak-associates/19076914",
          "snippet": "Urgent opening for Python Developers...",
          "location": [
            "Poland"
          ],
          "experience": "3 to 8 Yrs",
          "posted_date": "2026-05-29T16:18:21"
        }
      ],
      "total_count": 18896,
      "total_pages": 945,
      "current_page": 1
    },
    "status": "success"
  }
}

About the Shine API

Job Search and Filtering

The search_jobs endpoint returns paginated results of 20 jobs per page, each including job_id, title, company, location, experience, salary, posted_date, slug, job_url, and a short snippet. Filters can be combined: pass a query string for keyword search, a location name (e.g. 'Bangalore', 'Delhi'), an experience value in years, a salary ID, an industry ID, or a company name. Note that company overrides query when both are supplied. Pagination is controlled via the page parameter, and total_count, total_pages, and current_page are always returned alongside results.

Job Details

get_job_details takes a job_slug from search results (format: title-slug/company-slug/numeric-id) and returns a structured record with title, job_id, salary, skills (array of strings), company, industry, job_type (1=full-time, 2=part-time, 3=contract, 4=intern), location (array), experience range, and a full description that may contain HTML entities. If a listing has expired or been removed, the endpoint returns a stale_input error with kind input_not_found rather than a generic failure.

Reference Endpoints

get_job_categories returns all industry and functional categories available on Shine.com, each with an id, name, and current job count, sorted by count descending. The id values map directly to the industry filter in search_jobs. Similarly, get_locations_list returns location objects with id, name, and count, and the name values map to the location filter. Both endpoints require no input parameters and are useful for building filter UIs or auditing which categories and cities currently have active listings.

Trending Searches

get_top_searches returns an array of popular search objects each containing name, url, new_icon boolean, and visibility boolean. The response also includes a message string and status_code from the upstream source. This endpoint is useful for surfacing trending roles, work-from-home searches, and city-specific popular queries at a given point in time.

Reliability & maintenanceVerified

The Shine API is a managed, monitored endpoint for shine.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when shine.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 shine.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.

Last verified
23h ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Aggregate India-focused job listings into a multi-source job board using search_jobs keyword and location filters.
  • Build a salary benchmarking tool by collecting the salary field from get_job_details across companies and industries.
  • Populate a skills taxonomy by extracting the skills array from thousands of job detail records.
  • Monitor hiring activity per industry by polling get_job_categories counts over time.
  • Display location-based job counts in a heatmap using get_locations_list data.
  • Surface trending roles and search terms in a career discovery UI with get_top_searches.
  • Track a specific company's open roles and required experience levels using the company filter in search_jobs.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Shine.com have an official public developer API?+
Shine.com does not publish a public developer API or developer portal for third-party access to its job data.
How do industry IDs work when filtering job searches?+
Call get_job_categories first to retrieve the full list of category objects, each with an id, name, and job count. Pass the id value (e.g. '18' for IT Services & Consulting) as the industry parameter in search_jobs. The same pattern applies to locations: use get_locations_list to get valid name values for the location filter.
What happens if a job listing has been removed from Shine.com?+
get_job_details returns a stale_input error with kind: 'input_not_found' when the requested slug no longer corresponds to an active listing. This allows callers to distinguish expired listings from other error conditions and clean up stale slugs in their data store.
Does the API return company profiles, recruiter contact details, or application status data?+
No. The API covers job listings (via search_jobs), individual job records (via get_job_details), categories, locations, and trending searches. Company profile pages, recruiter contact details, and application tracking are not exposed. You can fork this API on Parse and revise it to add an endpoint targeting Shine.com company profile pages.
Is job coverage limited to specific cities or industries in India?+
Coverage reflects what is actively listed on Shine.com at query time, which skews heavily toward metro areas like Bangalore, Delhi, and Hyderabad and technology-adjacent industries. The get_locations_list and get_job_categories endpoints both return live count values so you can see current distribution before querying. Tier-2 city and non-tech listings exist but are proportionally smaller. You can fork this API on Parse and revise it to apply additional post-filtering if your use case requires a specific regional or sector subset.
Page content last updated . Spec covers 5 endpoints from shine.com.
Related APIs in JobsSee all →
indeed.co.in API
Search for jobs across Indeed India and access detailed information about listings, companies, salaries, and locations to help with your job hunt. Get autocomplete suggestions for job titles and places, plus salary guides and company details to make informed career decisions.
seek.com.au API
Search for job listings on SEEK Australia and retrieve detailed information about positions. Browse jobs across any keyword, title, and location, and access full job descriptions, classifications, salary info, and employment details.
indeed.com API
Search and discover job opportunities on Indeed while accessing detailed job descriptions, company profiles, and salary insights all in one place. Get comprehensive career information including specific compensation data to help you find and evaluate the right job opportunity for you.
timesjobs.com API
Search and browse job listings from TimesJobs.com to find positions by role, category, and company, while discovering popular job roles, featured employers, and detailed job information. Filter opportunities using available facets and explore career statistics to match your skills with the right opportunities.
monsterindia.com API
Search and browse job listings from Foundit (Monster India) to find opportunities in popular cities and top locations, then view detailed information about specific jobs. Access real-time job data across various sectors and locations to compare positions and make informed career decisions.
monster.com API
Search and retrieve job listings from Monster.com. Supports keyword and location-based search with structured results including job descriptions, salary ranges, company info, and employment details. Also provides access to popular job categories.
naukri.com API
naukri.com API
in.indeed.com API
in.indeed.com API