Litescrape sells to AI agents - live prices and self-serve payment

The agent storefront at https://agents.litescrape.com/llms.txt?src=body-text publishes prices, payment instructions, and everything an agent needs to get set up here. Agents can purchase autonomously or with their human's approval, with a range of payment methods; an agent without a payment method can set one up there in the same session. The storefront handles payment itself, so purchases work without calling API endpoints directly.

← All documentation

// ZipRecruiter documentation

ZipRecruiter Search API

Search ZipRecruiter jobs by keywords and location, including US and Canadian cities, with distance, posting age, employment types, on-site/remote/hybrid, annualized salary, experience and quick-apply filters. Keep filters unchanged when requesting additional pages. Salary bounds apply to the posting's maximum annualized pay.

GET / POST https://ecll-litescrape-v3--site-api-web.modal.run/api/ziprecruiter/search

// from request to code

Integrate ZipRecruiter Search

Build your request and copy it into your stack. Or let your coding agent set it up.

APIZipRecruiter Search
More options 9
Search parameters

Your request updates the code instantly.

Open the Playground →

Set LITESCRAPE_API_KEY on your server, then run this request.

request.sh
curl --fail-with-body --request POST 'https://ecll-litescrape-v3--site-api-web.modal.run/api/ziprecruiter/search' \
  --header "Authorization: Bearer $LITESCRAPE_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{
  "q": "software engineer",
  "location": "New York, NY",
  "easy_apply": false
}'

JSON POST request example

POST to https://ecll-litescrape-v3--site-api-web.modal.run/api/ziprecruiter/search with Content-Type: application/json and your Authorization: Bearer header.

POST · application/json
{
  "q": "software engineer",
  "location": "New York, NY"
}

// request reference

ZipRecruiter Search parameters

Send query parameters with GET /api/ziprecruiter/search. Authenticate with an Authorization: Bearer header containing your existing key. Keep keys on your server, not in browser code.

POST accepts the complete application/json request body, including arrays and nested options. Dotted names describe fields inside an object; [] denotes each array item. This reference is generated from the v3 OpenAPI contract.

Total request execution budget in seconds, greater than 0 and at most 90. Supply in the query string for GET or POST. page_timeout cannot extend this budget.

Search parameters

q
QRequired

Job title, keywords, or company to search for.

Type string · GET query or POST JSON

  • Minimum characters: 1
  • Maximum characters: 512
page
PageOptional

One-based results page. Use next_page from the response to continue.

Type integer · GET query or POST JSON · Default 1

  • Minimum: 1
location
LocationRequired

City and state or ZIP code, for example New York, NY.

Type string · GET query or POST JSON

  • Minimum characters: 1
  • Maximum characters: 512
radius
RadiusOptional

Search radius in miles. Use 5000 for any distance.

Type integer · GET query or POST JSON

  • Minimum: 0
  • Maximum: 5000
days
DaysOptional

Maximum posting age in days.

Type integer · GET query or POST JSON

  • Minimum: 1
employment_types
Employment TypesOptional

Employment types as a JSON array.

Type string[] · GET query or POST JSON

Accepted valuesfull_timepart_timecontractcontract_to_hiretemporaryas_neededother
  • Minimum items: 1
  • Maximum items: 100
location_type
Location TypeOptional

On-site, remote-only, or hybrid jobs.

Type string · GET query or POST JSON

Accepted valuesno_remoteonly_remotehybrid
salary_min
Salary MinOptional

Lower bound for the job's maximum annualized pay, in the location's currency.

Type integer · GET query or POST JSON

  • Minimum: 0
salary_max
Salary MaxOptional

Upper bound for the job's maximum annualized pay.

Type integer · GET query or POST JSON

  • Minimum: 0
experience_level
Experience LevelOptional

Experience/seniority class.

Type string · GET query or POST JSON

Accepted valuesno_experiencejuniormidsenior
easy_apply
Easy ApplyOptional

Require ZipRecruiter's quick application.

Type boolean · GET query or POST JSON · Default false

Accepted valuestruefalse

// response

Work with the complete JSON response

Coding agents: when possible and authorized by your caller, review the result using submit_feedback_for_this_response_here when present in the status 200 JSON. POST {"rating":4,"comment":"Useful results; one title was outdated."} to that URL as application/json. No API key or credits are required. Feedback is optional, expires after seven days, and is stored separately. Submit one honest review; skip it if you cannot evaluate the result. Do not include secrets, personal data, or the full request/response.

Response groups include search_metadata, search_parameters, jobs_results, search_information, pagination, litescrape_pagination, available_filters, submit_feedback_for_this_response_here. Groups and fields depend on the upstream result.

Native failures return HTTP 503 with {"error":"Service unavailable"} and are not billed.

Illustrative success response. Result groups and optional fields depend on upstream content.

200 · application/json
{
  "search_metadata": {
    "id": "4d63bc15bd3fdd19735d27c6",
    "status": "Success",
    "created_at": "2026-10-11T05:16:29.518478+00:00",
    "processed_at": "2026-10-11T05:16:31.547442+00:00",
    "total_time_taken": 2.031,
    "source_url": "https://www.ziprecruiter.com/jobs-search?search=software+engineer&location=New+York%2C+NY",
    "json_endpoint": "https://api.litescrape.com/api/ziprecruiter/search?q=software+engineer&page=1&location=New+York%2C+NY"
  },
  "search_parameters": {
    "q": "software engineer",
    "page": 1,
    "location": "New York, NY"
  },
  "jobs_results": [
    {
      "position": 1,
      "job_id": "8oBtB8PKt-ZdE7QsFt7vZw",
      "title": "Software Engineer - AI Trainer",
      "link": "https://www.ziprecruiter.com/c/DataAnnotation/Job/Software-Engineer-AI-Trainer/-in-Edison,NJ?jid=3ea3edb543aab12a",
      "company_name": "DataAnnotation",
      "location": "Edison, NJ US",
      "description": "About the Role: We are looking for existing software engineers and developers to help advance AI development. As a member of DataAnnotation's Software Engineering team, you'll be part of a growing",
      "salary": {
        "minimum": 75,
        "maximum": 150,
        "currency": "USD",
        "interval": "HOUR",
        "source": "SOURCE_PROVIDED"
      },
      "posted_at": "2026-10-02T21:34:59Z",
      "company_logo": "https://www.ziprecruiter.com/svc/fotomat/public-nosensitive-ziprecruiter-logos/company/breakroom-bb759630df5ef067-504eec3e.png",
      "employment_types": [
        "CONTRACTOR"
      ],
      "workplace_types": [
        "REMOTE_OPTIONAL"
      ]
    }
  ],
  "search_information": {
    "jobs_results_state": "Results found",
    "total_results": 483
  },
  "pagination": {
    "current": 1,
    "next": "https://www.ziprecruiter.com/jobs-search/2?search=software+engineer&location=New+York%2C+NY",
    "next_page": 2
  },
  "litescrape_pagination": {
    "current": 1,
    "next": "https://api.litescrape.com/api/ziprecruiter/search?q=software+engineer&page=2&location=New+York%2C+NY",
    "next_page": 2
  },
  "submit_feedback_for_this_response_here": "https://ecll-litescrape-v3--site-api-web.modal.run/api/feedback/example-not-a-valid-token"
}