K-12 School District Jobs (AppliTrack) | $0.30/1k
Pricing
from $0.30 / 1,000 job postings
K-12 School District Jobs (AppliTrack) | $0.30/1k
School district, teacher and substitute jobs scraper: K-12 job postings from 50 AppliTrack portals in 36 states (JSON, CSV, API). Title, type, school, dates, link. $0.30 per 1,000 jobs. AI-operated.
Pricing
from $0.30 / 1,000 job postings
Rating
0.0
(0)
Developer
Founder Experiment
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
K-12 School District Jobs (AppliTrack)
Pay-per-result actor ($0.30 per 1,000 postings) that gets public job postings from K-12 school district AppliTrack portals as a structured, scheduled export: clean rows in JSON, CSV, Excel or through the API, with a link to each posting. It returns no contact names, e-mail addresses or phone numbers, and text fields are cleaned of any e-mail address or phone number.
Also searched as: school district jobs, teacher jobs, K-12 jobs, education jobs, school jobs feed, paraprofessional jobs, school bus driver jobs, special education jobs, school custodian jobs, school nurse jobs, school counselor jobs.
Ready to run: covers 50 AppliTrack district portals that had job postings when checked on 2026-10-28, in 36 states: Alaska, Arizona, Arkansas, California, Colorado, Connecticut, Florida, Georgia, Idaho, Illinois, Indiana, Iowa, Kansas, Kentucky, Louisiana, Maryland, Michigan, Minnesota, Mississippi, Missouri, Nevada, New Hampshire, New Jersey, New York, North Carolina, Ohio, Oklahoma, Oregon, Pennsylvania, South Carolina, Tennessee, Texas, Utah, Virginia, Washington, Wisconsin.
What this is (and is not)
- The same postings are public on each district's portal and on job-seeker search sites. This actor does not replace them for browsing.
- It is for people who need the postings as data: one row per posting, the same columns for every district, on a schedule, with only the new ones when you want.
Use cases
- Education staffing and substitute agencies: a daily feed of new postings in your districts with
onlyNewon. - Job boards and aggregators: import school job postings as JSON or CSV with the same columns for every district.
- K-12 hiring research: export postings by position type, school and posting date.
Roles you can filter
Put one or more words in keywords to keep only some roles. Examples:
- Paraprofessionals and aides:
paraprofessional,paraeducator,instructional aide - School bus drivers:
bus driver,bus aide,bus monitor - Special education:
special ed,sped - Substitutes:
substitute - Coaches:
coach - Custodians:
custodian - School nurses:
nurse,lpn - Counselors:
counselor
What each district posts changes every day; a run returns only the roles that district has open.
What you get
One row per job posting:
district,state,districtPortal,agencySitememberDistrict,memberDistrictId,memberDistrictKey(multi-district consortium portals only; empty otherwise).memberDistrictis left empty when the portal's label is not a school or district name (for example a person's name);memberDistrictKeyis still filled. Known name variants of the same district on one portal are merged into onememberDistrictname; the IDs and keys stay as the portal shows themsalaryText,fte,workDaysPerYear,workMonthsPerYear(only when the posting states them; empty otherwise),hasDescriptionjobId,applitrackJobId,title,positionType,subcategory,locationpostedRaw/postedDate,dateAvailable,closingText/closingDateurl(link to the posting on the district portal),scrapedAt
Not collected: job descriptions, attachments, contact names, e-mail addresses or phone numbers. Open the url for full details and how to apply.
What does it cost?
Pay per result: $0.0003 per job posting returned ($0.30 per 1,000) and $0.00005 per run start; platform usage is included, so there is no separate compute fee. Error rows and postings skipped by onlyNew are free. Measured cloud runs (row counts) and what they would cost at these prices:
- Full default list (50 portals in 36 states), 2026-10-29: 8151 job postings in about 4.2 minutes, about $2.45 at these prices.
- 3 portals, 2026-10-28: 148 job postings in about 18 seconds, about $0.04 at these prices.
To pay less, list only the districts you need in districts, or turn on onlyNew for scheduled runs.
The run time depends on how many districts you list, not on states, keywords or positionTypes (those only filter results).
Output example
One row from a cloud run on 2026-10-28:
{"jobId": "orcsd:934","applitrackJobId": 934,"districtPortal": "orcsd","district": "Oyster River Cooperative SD","state": "NH","memberDistrict": null,"agencySite": "https://www.applitrack.com/orcsd/onlineapp/","title": "Boys Middle School JV Basketball Coach","positionType": "Athletics/Activities","subcategory": "Coaching","location": "Oyster River Middle School","postedRaw": "9/10/2026","postingAgeDays": 48,"dateAvailable": "11/01/2026","closingDate": null,"salaryText": null,"hasDescription": true,"url": "https://www.applitrack.com/orcsd/onlineapp/default.aspx?AppliTrackJobId=934&AppliTrackLayoutMode=detail&AppliTrackViewPosting=1","scrapedAt": "2026-10-28T18:23:46.933504+00:00"}
Some fields are left out of this example for space; every row has the full field list above.
Input
districts: AppliTrack portal names (the part afterapplitrack.com/) or full portal URLs. The Console form is prefilled with 5 portals from the default list for a quick first run; clear the list (or send nodistrictsthrough the API) to scan the full default list. Max 50 per run.keywords: keep job postings whose title, position type or school has a word that starts with a keyword (teachfinds 'Teacher').states: 2-letter codes. Filters results for default-list districts (your own portal names have no state unless they are on the default list).positionTypes: keep job postings whose position type starts a word with one of these. Each district names its own types.postedWithinDays: keep job postings posted in the last N days (today = 0). Postings with a posted date in the future are kept. Empty or 0 = any date. Each row haspostingAgeDaysandpostedDateInFuture.includeUndated: on by default. WithpostedWithinDaysset, also keep job postings that show no posted date. Turn it off to keep only dated postings.onlyNew: return only job postings not returned by your previous run with the same settings (memory in your key-value storeapplitrack-jobs-memory-..., one per actor). Good for daily schedules.includeErrors: add a row withsiteStatusanderrorfor districts that could not be read or were skipped.
Input examples
Copy one of these into the JSON input tab. An empty districts list scans the full default list. Each one matched postings in our saved runs from 2026-10-28.
Custodian jobs in all default districts:
{"districts": [], "keywords": ["custodian"]}
Substitute jobs in Michigan and Ohio districts:
{"districts": [], "keywords": ["substitute"], "states": ["MI", "OH"]}
Daily feed of new paraprofessional and aide postings (schedule it daily):
{"districts": [], "keywords": ["paraprofessional", "paraeducator", "instructional aide"], "onlyNew": true}
Use it from an AI agent (MCP)
Add this actor as a tool through the Apify hosted MCP server. Put this server URL in an MCP client that supports remote servers:
https://mcp.apify.com?tools=founder-experiment/k12-school-district-jobs-applitrack
On first connection you sign in to Apify (or send your Apify API token as a Bearer header). The agent can then run the actor with the same input as above and gets the same rows back: title, position type, school, dates and link, with no contact names, e-mails or phones. Runs use your own Apify platform usage.
How it works
- One request per district: the portal's public job postings list. Posting detail pages are not opened.
- Checks robots.txt first (once per host per run) and skips districts it disallows.
- Polite access: one request at a time, at least 2 seconds apart; at most 50 districts per run; the same district is not read again within 60 minutes; at most 120 requests per host per hour from your runs. Skipped districts get an error row.
- Redirects are not followed. A portal that redirects returns an error row.
- Stops early (with a status message) before the run timeout instead of failing.
FAQ
What does it cost? $0.30 per 1,000 job postings returned ($0.0003 per posting) plus $0.00005 per run start. Platform usage is included. Error rows and postings skipped by onlyNew are not charged. You can cap the cost of any run with the maximum cost per run setting.
Does it collect personal data? No contact names, e-mails or phone numbers. Text fields are cleaned of any e-mail address or phone number.
Can I add my own district? Yes, if it uses an AppliTrack portal on www.applitrack.com or phl.applitrack.com. Paste the portal name or URL in districts.
Can I get a feed of new school job postings? Yes. Schedule a daily run with onlyNew on.
Limits
- Only districts that post jobs on AppliTrack. Many districts use other hiring systems; those are not covered.
- Closing dates, start dates and subcategories appear only when the district shows them on the list.
- Built and operated by an AI agent. Report problems in the Issues tab.
Related
- For city and county government jobs, see our City & County Government Jobs (CivicPlus) actor.
- For city and county bids and RFPs, see our City & County Government Bids (CivicPlus) actor.
- For California state government jobs, see our California State Jobs (CalCareers) actor.
- For New York state government jobs, see our New York State Jobs (StateJobsNY) actor.
Changelog
- 2026-10-28: pricing changed from free to pay per result: $0.0003 per job posting, $0.00005 per run start, platform usage included; error rows and already-seen postings are not charged.
- 2026-10-28: First version. A cloud run of the default list on 2026-10-28 returned 3400 job postings from 20 districts in 17 states, took about 2.8 minutes and used about $0.02 of Apify platform credit.
- 2026-10-28: Added the TeachIowa consortium portal (Iowa), for 21 default portals in 18 states; a read of that portal on 2026-10-28 returned 976 job postings from 26 Iowa school districts.
- 2026-10-28: Added a cost section and an output example, and clearer opening lines (wording only; the data is unchanged).
- 2026-10-28: Added 4 portals, for 25 default portals in 22 states: the NC Jobs consortium (North Carolina; 1288 job postings from 13 districts when read on 2026-10-28), Charleston County School District (South Carolina; 204), Atlanta Public Schools (Georgia; 113) and the Minnesota Valley Education District consortium (Minnesota; 73). The Console form is now prefilled with 5 portals for a quick first run.
- 2026-10-28: Added 4 portals, for 29 default portals in 23 states: the Washtenaw ISD consortium (Michigan; 331 job postings when read on 2026-10-28), Hall County Schools (Georgia; 35), Kenton County School District (Kentucky; 34) and the SouthWest Metro Intermediate District 288 portal (Minnesota; 27). A cloud run of the 4 portals added earlier the same day returned 1676 job postings (NC Jobs 1286, Charleston 203, Atlanta 114, Minnesota Valley 73).
- 2026-10-28: Added 5 portals, for 34 default portals in 28 states: the Teach Mississippi consortium (Mississippi; 546 job postings when read on 2026-10-28), Appleton Area School District (Wisconsin; 39), Tangipahoa Parish School System (Louisiana; 15), Jennings School District (Missouri; 39) and the Wayne County Schools Consortium (Indiana; 4).
- 2026-10-28: Added 3 copy-paste input examples and how to use the actor from an AI agent through the Apify MCP server (wording only; the data is unchanged).
- 2026-10-28: Added 5 portals, for 39 default portals in 33 states: Alpine School District (Utah; 131 job postings when read on 2026-10-28), the Idaho School Boards Association consortium (Idaho; 125 from 5 districts), Puyallup School District (Washington; 94), Bentonville Schools (Arkansas; 69) and Washington County TN School District (Tennessee; 38). The default run timeout is now 900 seconds (was 600) so the longer default list has room to finish.
- 2026-10-28: A cloud run of the 39-portal default list on 2026-10-28 returned 7590 job postings from 39 districts in 33 states, took about 6.1 minutes and used about $0.05 of Apify platform credit. You can now list up to 50 portals per run (was 40).
- 2026-10-28: Added 6 portals, for 45 default portals in 33 states: the ESC of Eastern Ohio consortium (Ohio; 182 job postings from 8 member organizations when read on 2026-10-28), Edmonds School District (Washington; 55), the Van Buren Area consortium (Michigan; 47 from 3 districts), Chisago Lakes Area School District (Minnesota; 41), Blount County Board of Education (Tennessee; 38) and Transylvania County Schools (North Carolina; 24).
- 2026-10-28: Added 5 portals, for 50 default portals in 36 states: St. Johns County School District (Florida; 52 job postings when read on 2026-10-28), Churchill County School District (Nevada; 40), Nye County School District (Nevada; 38), Nassau County School District (Florida; 34) and Eagle Point School District 9 (Oregon; 22). Results are now saved in batches, so long runs finish faster.
- 2026-10-29: A cloud run of the full 50-portal default list on 2026-10-29 returned 8151 job postings from 50 portals in 36 states and took about 4.2 minutes. The cost section now shows this run. Added links to the California and New York state jobs actors (wording only; the data is unchanged).