There is no public Internshala API. The data lives on the page and nowhere else. Anyone who needs that data in bulk has to write a scraper, maintain it, and watch for breakage.
Here is what our Internshala Actor returns, what it costs, and where its limits are.
Start a run and wait for the dataset with one call:
curl -X POST "https://api.apify.com/v2/acts/blackfalcondata~internshala-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"listingType": "..."}'
The Python version looks like this:
from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("blackfalcondata~internshala-scraper").call(run_input={"listingType": "..."})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
Each record contains 65 fields, split across several groups:
Here is a real record from a run, trimmed to its first fields:
{
"jobId": "59db134543d36eebaa2ece379f79dd87c4462de58167ea8c452b8a60f53dbfdc",
"jobKey": "3232934",
"listingType": "internship",
"title": "Front End Development",
"company": "Synergy Labs",
"companyLogo": "/static/images/search/placeholder_logo.svg",
"companyUrl": null,
"location": "Panipat, Panipat Sub-District",
"isWorkFromHome": false,
"isPartTime": false,
"workMode": "onsite",
"inOfficeDaysPerWeek": null,
"category": null,
"skills": [
"HTML",
"CSS",
"JavaScript",
"... +2"
]
}
The input accepts 40 options, including listingType, query, category, location, workFromHome, partTime, durationMonths, withJobOffer, fastResponse, earlyApplicant, and more. Filters run server-side. You pay for the records you requested instead of fetching everything and filtering afterwards.
Coverage is India. The country field takes IN and defaults to IN. Each run is limited to one market before any records are produced, so data outside that market is neither fetched nor billed.
Pricing is per event, with no subscription:
These figures come from a measured run, not an estimate:
Internshala does not offer an official public API for this data. It publishes the data on its pages, so every option here involves reading those pages.
Authenticate with an Apify API token, either through ?token= or an Authorization: Bearer header. The token belongs to you, not us. It is the only credential involved, and no separate account on the source site is required.
The measured run returned 80 records in 7.7 seconds. run-sync-get-dataset-items keeps the connection open for the entire run. For larger runs, start the run and poll the dataset instead.
Runs use maxResults rather than paginated responses: request a number of records and receive one dataset. If you want to read that dataset in chunks, its endpoint accepts offset and limit.
Results come back as JSON by default. The dataset endpoint can also serve CSV, XLSX and JSONL from the same run by changing the format parameter. No separate export step is needed.
our hosted Internshala API runs on Apify. The endpoint above is the entire integration. New accounts receive $5 of free platform credit each month, enough to cover a real run of this size several times over.
Disclosure: we build and maintain this Actor, and the link above is an affiliate link.