Internshala Scraper API - Internships & Jobs in India avatar

Internshala Scraper API - Internships & Jobs in India

Pricing

from $0.34 / 1,000 posting returneds

Go to Apify Store
Internshala Scraper API - Internships & Jobs in India

Internshala Scraper API - Internships & Jobs in India

Scrape Internshala, India's biggest internship and fresher-job board: role, company, city, stipend with an honesty flag (range, fixed or unpaid), duration, apply-by date, openings, exact posted date, work-from-home flag and skills. No login. At $0.34 per 1,000 postings, the lowest price on Apify.

Pricing

from $0.34 / 1,000 posting returneds

Rating

0.0

(0)

Developer

Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Internshala Scraper — internships and fresher jobs in India

Pulls live postings from Internshala, India's biggest internship and entry-level job board. No login, no cookies, no browser.

Every row comes back with the role, the company, the city, the stipend or salary with a flag saying what kind of figure it is, the duration, the apply-by date, the number of openings, the exact posted date, a work-from-home flag, the required skills, the perks and the eligibility rules.

On 2026-08-08 the site had 7,007 live internships and 8,663 live jobs. Both boards are reachable, in full, page by page.


What you get per posting

FieldExampleWhere it comes from
titleFront End Developmentlisting card
companyName, companyUrl, companyLogoSciAstra Education Private Limitedcard + posting page
locations, locationLabel, region["Pune","Mumbai","Virar"], Maharashtracard + posting page
isWorkFromHome, isHybrid, isPartTimetrue / falsecard + employmentType
stipendText₹ 12,000 - 17,000 /monthcard
stipendMin, stipendMax, stipendCurrency, stipendPeriod12000, 17000, INR, MONTHparsed
stipendTyperange, fixed, unpaid, lump-sum, performance-basedparsed
stipendIsEstimatealways false — see below
durationText, durationMonths6 Months, 6card
experienceText, experienceYears1 year(s), 1jobs board
skills["HTML","React","Node.js"]card + posting page
postedRelative, postedAt, postedAtIsExact2 days ago, 2026-08-06, trueposting page JSON-LD
applyByText, applyBy5 Sep' 26, 2026-09-05posting page
openings3posting page
startDateText, startsImmediatelyImmediately, trueposting page
perks["Certificate","Letter of recommendation","Job offer"]posting page
eligibility["are available for duration of 6 months", …]posting page
hasJobOfferAfterInternship, jobOfferTexttrue, Job offer upto ₹ 2.4LPA post internshipcard
industry, employmentTypeEngineering, INTERN, FULL_TIMEposting page JSON-LD
aboutCompany, descriptionTextfull textposting page
url, id, type, countryCodeinternship / job, IN

Three real rows, copied out of live runs:

Mobile App Testing | Shreyans Industries | Bangalore |5,000 /month (fixed)
| 1 Month | posted 2026-08-06 | apply by 2026-09-05 | 5 openings
Meta Ads Executive | EMIAC Technologies | Jaipur |2,00,000 - 2,40,000 /year (range)
| job, 1 year(s) experience | posted 2026-08-01 | apply by 2026-08-31 | 2 openings
Backend Development | Pledge India Foundation | Work from home | Unpaid (unpaid)
| 2 Weeks | posted 2026-08-07 | apply by 2026-09-06 | 20 openings

About the stipend — read this before you trust the number

Internshala mixes several kinds of pay, and a scraper that flattens them into one "stipend" column is lying to you. Every row therefore carries stipendType.

Measured on two real runs of this actor on 2026-08-08 — 1,000 internships and 300 jobs:

stipendTypeInternships (n=1,000)Jobs (n=300)
range (e.g. ₹ 12,000 - 17,000 /month)867 (86.7%)283 (94.3%)
fixed (e.g. ₹ 5,000 /month)114 (11.4%)17 (5.7%)
unpaid16 (1.6%)0
lump-sum2 (0.2%)0
performance-based1 (0.1%)0
missing / not stated00

An independent 1,050-internship / 530-job sample taken the same day landed within 0.5 points of every one of those figures, so this is the shape of the board, not a lucky page.

Two things follow from that:

  1. Every posting states its own pay. There were no blanks in either sample. That is unusual for a job board and it is the main reason this data is worth having.
  2. stipendIsEstimate is false on every row, and it always will be. Internshala publishes what the employer typed. It never invents a "salary estimate" the way some Western boards do, so there is no guessed figure hiding in this dataset. Filter on stipendType when you need only hard numbers: range and fixed together are 98.2% of internships and 100% of jobs.

Note that a range is a range. stipendMin and stipendMax differ on 87% of internship rows, so averaging stipendMin alone will understate the market.


Searching

You can drive it three ways, and mix them.

KeywordssearchQueries: ["python", "data science"]. Each one is walked separately.

Filters — category, city, work-from-home, part-time, minimum stipend, maximum duration, pre-placement offer, start date, women-only, international, early-applicant, fast-response. On the jobs board: minimum annual salary, experience band, fresher-only, and Internshala's "also show internships" toggle. They compose:

categories: ["computer science"], cities: ["bangalore","mumbai"],
workFromHome: true, maxDurationMonths: 3, minStipend: 5000

Pasted URLsstartUrls accepts any Internshala listing page (https://internshala.com/internships/work-from-home-computer-science-internships/) and any single posting (https://internshala.com/internship/detail/...). Listing URLs are walked page by page from wherever you pasted them.

Measured filter sizes on 2026-08-08, so you know what to expect:

FilterResult count
everything, internships7,007
everything, jobs8,663
work from home (internships)2,154
work from home (jobs)1,456
part time1,449
with a job offer afterwards (PPO)1,223
internships for women3,379
international internships85
fresher jobs4,179
jobs paying ≥ ₹600,000/year2,281
keywords: python262
keywords: python + Bangalore163

Speed and limits

Real runs of this actor, all at the default 1,024 MB:

RunRowsWall time
searchQueries: ["python"]55 s
categories: ["computer science"]25034 s
listing: "jobs"30047 s
listing: "both"1,000107 s
cities: ["bangalore"], details off20019 s
  • A listing page is one request and returns 40–50 postings. Measured 430 ms per page from the plain Apify container address; 60 pages in a row took 29.6 s and produced 2,400 rows with zero failures and no rate limiting.
  • With Open each posting on (the default), each posting costs one extra request, measured at 84 ms per posting at concurrency 10. That is where applyBy, openings, the exact postedAt, startDateText, perks, eligibility, region and the full description come from.
  • A single search runs out at Internshala's own last page. The unfiltered internships board ends at page 176 (7,007 rows) and returns an empty page after that — there is no hidden ceiling and no silent row clamp. To go wider, use several keywords, cities or categories.

Field coverage, measured

From the 1,000-internship run and the 300-job run, percentage of rows where the field is filled:

FieldInternshipsJobs
title, companyName, companyUrl, locationLabel, stipendText, stipendMin/Max, skills, descriptionText, url, openings, startDateText, postedAt100%100%
durationText100%12% (jobs rarely have one)
experienceText0% (internships have none)100%
applyBy100%83%
applyByText (Internshala's 5 Sep' 26 wording)100%0% — the jobs board does not print it
postedAtIsExact83%83%
region, industry, employmentType, aboutCompany83%83%
eligibility83%78%
perks78%51%
companyWebsite52%50%
jobOfferText (post-internship offer)16%0% — jobs have no PPO

What this does not do

  • No applicant counts, no employer contact details, no candidate data. Internshala hides those behind a student login and this actor never logs in.
  • Multi-city postings carry no JSON-LD. Internshala only emits structured data for single-location postings, so 17% of rows (169 of 1,000 internships, 52 of 300 jobs — always the "in multiple locations" ones) come back with postedAtIsExact: false, and with region, industry, employmentType and isPartTime null. Everything else on those rows, including applyBy and openings, is read out of the HTML and is still there.
  • companyWebsite is missing about half the time. It only exists when the employer filled it in. It is emitted when it is there and left null when it is not — never guessed.
  • No expired postings. Internshala takes a posting down once its apply-by date passes; a pasted URL for a dead posting returns an uncharged diagnostic row, not a charge.
  • India only (plus the 85 international internships Internshala itself lists).
  • Posted dates without the detail pass are approximate. With Open each posting off, the board only says "2 days ago", so postedAt is derived from that and postedAtIsExact is false on every row.

Price

$0.0005 to start a run, then $0.34 per 1,000 postings. That is the cheapest of the 13 Internshala scrapers on the Apify Store as of 2026-08-08; the next cheapest is $0.40 per 1,000 and the rest run from $1.00 to $5.00. The start fee matches the cheapest rival's exactly, so this actor is cheaper at every run size, not just at large ones.

Sample rows, diagnostic rows, failed requests and empty searches are all uncharged. One charge per genuine posting, and nothing else. A run that returns nothing costs you the start fee alone.


FAQ

Is there an Internshala API? Not a public one. Internshala paginates its own listings over XHR — internships_ajax and jobs_ajax — and that is what this actor reads. It is the same data the website shows you, in JSON, without rendering a browser.

Do I need an Internshala account or a login? No. Every request in this actor is anonymous.

Can I scrape Internshala internships by city? Yes. cities: ["bangalore","delhi"] combines cities with OR, and it composes with category, work-from-home and every other filter.

Can I get remote / work-from-home internships only? Yes — workFromHome: true. 2,154 of the 7,007 live internships were work-from-home on 2026-08-08.

Does it return the stipend? Yes, on every row, and it says what kind of figure it is. 87% of internships quote a range, 11% a fixed monthly amount, 1.5% are unpaid. Nothing is estimated.

How do I get the application deadline? applyBy (ISO date) and applyByText (Internshala's own 5 Sep' 26 wording). Both need Open each posting to be on, which it is by default.

How many results can I get from one run? As many as the search has. A 1,000-row run finished in 107 seconds. The whole internships board — 7,007 rows — is reachable in one run; maxItems is the only cap, and it goes to 20,000.

What does it cost? $0.0005 per run plus $0.34 per 1,000 postings — the cheapest Internshala scraper on the Apify Store on 2026-08-08, against a field of 13 where the next cheapest is $0.40 and most are $1 to $5.

Does it work outside India? Yes. The actor runs from Apify's own network and Internshala serves the same board regardless. An Indian residential exit and a US datacenter address were compared side by side and returned the same 40 postings, in the same order, with the same 7,007 total.

What is the difference between the internships board and the jobs board? Internships are short placements with a monthly stipend and a duration. Jobs are full-time fresher/early-career roles with an annual salary and an experience requirement. Set listing: "both" to walk both; every row carries a type field.