# H1B Jobs API reference Use this as compact context for the live bluedoor H1B Jobs API. Primary URLs: - API base URL: https://api.bluedoor.sh/h1b-jobs/v1 - OpenAPI JSON: https://bluedoor.sh/apis/h1b-jobs/docs/openapi.json - Upstream raw OpenAPI JSON: https://api.bluedoor.sh/h1b-jobs/v1/openapi.json - Docs: https://bluedoor.sh/apis/h1b-jobs/docs - Landing page: https://bluedoor.sh/apis/h1b-jobs Shape: - Public beta over DOL OFLC LCA disclosure rows and USCIS H-1B Employer Data Hub summaries. - Loaded LCA coverage is fiscal years 2016 through 2026 Q2; USCIS sponsor archive coverage is fiscal years 2009 through 2023. - LCA records are labor-condition applications, not active job postings and not USCIS petition approvals. - Anonymous reads are allowed with low limits. API keys raise limits. - Responses include meta.generated_at, data endpoint/status fields, source_ids/evidence where relevant, and x-ratelimit-* headers. - Broad scans can return HTTP 200 with data.status such as requires_filter, unsupported_query_shape, or requires_bounded_filter. System routes: - /health - /v1 - /v1/openapi.json Data routes: - /v1/companies - /v1/roles - /v1/wages - /v1/trends - /v1/markets Auth and key routes: - POST /v1/auth/otp - POST /v1/auth/verify - GET /v1/auth/keys - POST /v1/auth/keys - PATCH /v1/auth/keys/{key_id} - DELETE /v1/auth/keys/{key_id} - POST /v1/auth/limits/requests Examples: ```bash curl "https://api.bluedoor.sh/h1b-jobs/v1/companies?q=anthropic&limit=1" curl "https://api.bluedoor.sh/h1b-jobs/v1/roles?company=anthropic&postal_code=98109&state=WA&from_fiscal_year=2025&to_fiscal_year=2026&limit=2" curl "https://api.bluedoor.sh/h1b-jobs/v1/wages?postal_code=98109&state=WA&wage_type=offer&min_wage=300000&limit=2&sort=wage_desc" curl "https://api.bluedoor.sh/h1b-jobs/v1/trends?state=WA&postal_code=98109&metric=lca_count&from_fiscal_year=2023&to_fiscal_year=2026" curl "https://api.bluedoor.sh/h1b-jobs/v1/markets?postal_code=98109&state=WA" ```