# Luranta API documentation > Current, rights-cleared job and company data for server-side applications and agents. Canonical documentation: https://docs.luranta.com API origin: https://api.luranta.com Canonical OpenAPI: https://api.luranta.com/openapi.json ## Documentation - [Overview](https://docs.luranta.com/) - [Developer guidelines](https://docs.luranta.com/documentation/developer-guidelines) - [What to build](https://docs.luranta.com/documentation/what-to-build) - [Make your first request](https://docs.luranta.com/documentation/make-your-first-request) - [Pricing](https://docs.luranta.com/documentation/pricing) - [Overview](https://docs.luranta.com/documentation/tools-and-libraries) - [TypeScript SDK](https://docs.luranta.com/documentation/typescript-sdk) - [Python SDK](https://docs.luranta.com/documentation/python-sdk) - [Agent resources](https://docs.luranta.com/documentation/agent-resources) - [Authentication](https://docs.luranta.com/documentation/authentication) - [Filtering](https://docs.luranta.com/documentation/filtering) - [Pagination](https://docs.luranta.com/documentation/pagination) - [Errors](https://docs.luranta.com/documentation/errors) - [Rate limits](https://docs.luranta.com/documentation/rate-limits) - [Versioning](https://docs.luranta.com/documentation/versioning) - [Security](https://docs.luranta.com/documentation/security) - [Overview](https://docs.luranta.com/documentation/integrations) - [Webhooks](https://docs.luranta.com/documentation/webhooks) - [Slack](https://docs.luranta.com/documentation/slack) - [Microsoft Teams](https://docs.luranta.com/documentation/microsoft-teams) ## API reference - [API reference overview](https://docs.luranta.com/reference) - [List jobs](https://docs.luranta.com/reference/listJobs) - [Retrieve a job](https://docs.luranta.com/reference/retrieveJob) - [List companies](https://docs.luranta.com/reference/listCompanies) - [Retrieve a company](https://docs.luranta.com/reference/retrieveCompany) - [List locations](https://docs.luranta.com/reference/listLocations) - [Retrieve a location](https://docs.luranta.com/reference/retrieveLocation) - [Get industry taxonomy](https://docs.luranta.com/reference/getIndustryTaxonomy) - [Get industry taxonomy version](https://docs.luranta.com/reference/getIndustryTaxonomyVersion) - [Get role taxonomy](https://docs.luranta.com/reference/getRoleTaxonomy) - [Get role taxonomy version](https://docs.luranta.com/reference/getRoleTaxonomyVersion) - [List tools](https://docs.luranta.com/reference/listTools) - [Retrieve a tool](https://docs.luranta.com/reference/retrieveTool) - [Shared schemas](https://docs.luranta.com/reference/schemas) - [Problem Details](https://docs.luranta.com/reference/problem-details) ## Changelog - [Changelog](https://docs.luranta.com/changelog) ## Machine-readable alternatives - Append `.md` to any guide or API-reference URL for raw Markdown. - Send `Accept: text/markdown` to a guide or reference URL. - Use `https://docs.luranta.com/llms-full.txt` for the complete guide and reference corpus. --- # Overview Build server-side products and agents with current, rights-cleared job and company data. ## Explore the API - [Jobs](/reference/listJobs): Search current jobs or retrieve a known listing. - [Companies](/reference/listCompanies): Find employers and retrieve compact company profiles. - [Taxonomies and catalogues](/reference/getRoleTaxonomy): Resolve versioned taxonomies plus bounded tool and location resources. ## Choose your integration - [TypeScript SDK](/documentation/typescript-sdk): Typed resources, safe retries and cursor iterators for server runtimes. - [Python SDK](/documentation/python-sdk): Typed models and the same predictable resource interface. - [Agent resources](/documentation/agent-resources): Markdown documentation, llms files and the gated MCP surface. > **Start with one request:** Create an organisation API key, keep it on your server and list three jobs. The quickstart takes less than five minutes. --- # Developer guidelines Build predictable, secure clients against the published contract. ## Client rules | Rule | Required behaviour | | --- | --- | | Credentials | Keep API keys in trusted server-side memory. | | Contract | Generate from canonical OpenAPI 3.1.2 and pin SDK versions. | | Identifiers | Treat UUIDv7 identifiers and cursors as opaque. | | Diagnostics | Record X-Request-Id with failures and billing questions. | | Retries | Retry only explicit non-billable retryable responses. | ## Before production - Validate your query before sending it. - Bound pagination and concurrency. - Honour `Retry-After`. - Handle unknown response enum values. - Never depend on undocumented fields or implied ordering. --- # What to build Use a small set of stable resources to create focused job-data products. - [Search and discovery](/reference/listJobs): Job search, alerts, matching and curated feeds. - [Employer intelligence](/reference/listCompanies): Company profiles, enrichment and open-role monitoring. - [AI and agents](/documentation/agent-resources): Read-only retrieval grounded in current job records. > **Server-side only:** The API is not a customer-browser data feed, bulk download service or raw redistribution licence. --- # Make your first request Create an API key, export it locally and request three current jobs. ## 1. Create a key Open the [Developer Console](https://luranta.com/developers), select a workspace and create a key with the `jobs:read` scope. The secret is shown once. ## 2. Set the environment variable Store the key in your server-side secret manager. For a local shell: ```shell export LURANTA_API_KEY="lur_..." ``` ## 3. List jobs ### cURL ```shell curl "https://api.luranta.com/v0/jobs?roles=software-engineering&limit=3" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts import { Luranta } from "@luranta/sdk" const luranta = new Luranta({ apiKey: process.env.LURANTA_API_KEY!, }) const page = await luranta.jobs.list({ roles: ["software-engineering"], limit: 3, }) for (const job of page.data) { console.log(job.title) } ``` ### Python ```python import os from luranta import Luranta luranta = Luranta(api_key=os.environ["LURANTA_API_KEY"]) page = luranta.jobs.list({ "roles": ["software-engineering"], "limit": 3, }) for job in page.data: print(job.title) ``` ## What to check | Signal | Expected value | | --- | --- | | Status | 200 | | Body | object: list and data array | | Request identity | X-Request-Id response header | | Pagination | has_more and next_cursor | | Billing | Resource count, cost and balance headers | --- # Pricing Pay only for returned resources from a prepaid USD wallet. > **Preview access:** Top-ups remain disabled until Luranta reaches the paid-beta commercial stage. Preview requests are invite-only and non-billable. > **Paid launch availability:** Self-serve purchases launch only for billing addresses in the United Kingdom (GB) and United States (US). Every other billing country is rejected before a purchase is created. ## Resource pricing A successful billable operation consumes credit for the resources returned. | Resource | Billable quantity | Unit price | When charged | | --- | --- | --- | --- | | Job | Each job returned | Current workspace rate card | Successful list or retrieve response | | Company | Each company returned | Current workspace rate card | Successful list or retrieve response | | Catalogues | Each catalogue resource returned | $0 | Never | > **Current rates:** Your workspace billing page shows the provider-backed rate card that applies to your account. Static documentation does not copy monetary rates; each successful response reports its exact cost in Luranta-Cost-USD. ## Charging rules - Empty lists, validation failures, authentication failures, rate limits, credit failures and server errors cost **$0**. - Cache hits and deliberate repeated reads are charged normally. - A zero balance does not revoke API keys or block free catalogue routes. ## Exports Exports use a fixed, rights-cleared snapshot and the same workspace rate card as API resources. | Export | Charged quantity | Unit price | Artifact | | --- | --- | --- | --- | | Job results | Distinct jobs materialized | Current workspace rate card | CSV and XLSX · 24 hours | | Company results | Distinct companies materialized | Current workspace rate card | CSV and XLSX · 24 hours | | Signals results | Distinct contributing jobs | Current workspace rate card | CSV and XLSX · 24 hours | ## Export snapshots - A quote fixes the reference time, filters, rights release, row count and maximum cost. - Confirmation reserves the maximum cost; settlement charges only rows actually materialized and releases the remainder. - Quotes must be refreshed after expiry or any rights, projection or row-count change. - Each export is limited to 25,000 rows and 50 MiB uncompressed. - Confirmation generates both CSV and XLSX from the same rows. Re-downloading either format or delivering the same live export through a configured integration is not charged again. Refreshing the snapshot creates a new purchase. - Files expire after 24 hours and require current organisation membership for every download. ## Self-serve access | Access | Credit | Expiry | API contract | | --- | --- | --- | --- | | Free | $1 once for an eligible verified user | 30 days | Same routes, scopes and limits | | Pay as you go | From $5 | Never | Same routes, scopes and limits | | Enterprise | Custom agreement | Contract-defined | Same public API; negotiated operations | ## Purchase controls | Control | Default or limit | | --- | --- | | Minimum top-up | $5 | | Maximum top-up | $1,000 | | Rolling 24-hour cap | $5,000 | | Auto-recharge | Off by default · $5 threshold · $20 target | | Default monthly auto-recharge cap | $100 | ## Response headers Successful billable responses include: - `Luranta-Resources-Returned` - `Luranta-Cost-USD` - `Luranta-Credit-Balance-USD` Treat the headers as the receipt for that request. Store `X-Request-Id` with any billing investigation. --- # Overview Use an official SDK or generate directly from the canonical OpenAPI document. - [TypeScript](/documentation/typescript-sdk) — Official: Bun, Node.js and standards-based fetch runtimes. - [Python](/documentation/python-sdk) — Official: Python 3.10–3.14 with typed Pydantic models. - [OpenAPI](/openapi.json) — OpenAPI 3.1.2: The canonical machine-readable public contract. ## Shared behaviour | Capability | TypeScript | Python | | --- | --- | --- | | Jobs and companies | list · retrieve · iterate | list · retrieve · iterate | | Taxonomies and catalogues | Typed methods | Typed methods | | Problem Details | Typed APIError | Typed APIError | | Ambiguous network failures | TransportError | TransportError | | Raw response access | withRawResponse | with_raw_response | --- # TypeScript SDK Use the official TypeScript client from trusted server-side JavaScript runtimes. - [Source on GitHub](https://github.com/luranta/sdk-typescript): Inspect the stable runtime and disposable generated models. - [npm package](https://www.npmjs.com/package/@luranta/sdk): Install the provenance-backed public release when enabled. ## Installation ### npm ```shell npm install @luranta/sdk ``` ### Yarn ```shell yarn add @luranta/sdk ``` ### pnpm ```shell pnpm add @luranta/sdk ``` ### Bun ```shell bun add @luranta/sdk ``` ## Quick start ### TypeScript ```ts import { Luranta } from "@luranta/sdk" const luranta = new Luranta({ apiKey: process.env.LURANTA_API_KEY!, }) const page = await luranta.jobs.list({ roles: ["software-engineering"], limit: 3, }) for (const job of page.data) { console.log(job.title) } ``` ## Key features | Feature | Behaviour | | --- | --- | | Resources | jobs, companies and reference collections | | Pagination | Async cursor iterators stop on repeated or malformed cursors | | Retries | Only explicit non-billable 408, 429 and selected 5xx responses | | Raw responses | Request ID and billing headers remain available | | Runtime | Bun, Node.js and browser-compatible fetch for trusted edge code | > **Authentication:** Pass the key from a server-side environment variable. Never put it in browser-delivered JavaScript, storage, analytics or URLs. --- # Python SDK Use the official Python client with typed resources and bounded cursor iteration. - [Source on GitHub](https://github.com/luranta/sdk-python): Inspect the stable runtime and generated model boundary. - [PyPI package](https://pypi.org/project/luranta/): Install the trusted public release when enabled. ## Installation ### pip ```shell pip install luranta ``` ### uv ```shell uv add luranta ``` ### Poetry ```shell poetry add luranta ``` ## Quick start ### Python ```python import os from luranta import Luranta luranta = Luranta(api_key=os.environ["LURANTA_API_KEY"]) page = luranta.jobs.list({ "roles": ["software-engineering"], "limit": 3, }) for job in page.data: print(job.title) ``` ## Key features | Feature | Behaviour | | --- | --- | | Models | Typed Pydantic response models | | Pagination | Synchronous cursor iterators with loop protection | | Retries | Only explicit non-billable retryable responses | | Raw responses | Request ID and billing headers remain available | | Runtime | Python 3.10 through 3.14 | > **Authentication:** Read the key from a server-side secret or environment variable. Never commit it or send it in support messages. --- # Agent resources Give coding agents compact, canonical context without copying the API contract. ## Machine-readable resources | Resource | Use | | --- | --- | | [/llms.txt](/llms.txt) | Compact documentation index | | [/llms-full.txt](/llms-full.txt) | Complete guide and reference corpus | | Any page + .md | Raw Markdown for one page | | Accept: text/markdown | Content negotiation at the HTML URL | | [/openapi.json](/openapi.json) | Canonical API contract | > **MCP is gated separately:** The planned remote MCP endpoint stays disabled until OAuth refresh-family replay handling and connector conformance tests pass. It is not part of the initial REST release gate. --- # Authentication Authenticate server-side requests with a scoped organisation API key. ## Authorization header ### HTTP ```http GET /v0/jobs?limit=3 HTTP/1.1 Host: api.luranta.com Authorization: Bearer lur_... Accept: application/json ``` ### cURL ```shell curl "https://api.luranta.com/v0/jobs?roles=software-engineering&limit=3" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ## Scopes | Scope | Allows | | --- | --- | | jobs:read | List and retrieve jobs | | companies:read | List and retrieve companies | | catalogues:read | Read taxonomies and bounded catalogues | ## Key lifecycle - Name every key for its workload. - Grant only required scopes. - Rotate before expiry. - Revoke immediately after suspected exposure. - Never use API keys as browser sessions. --- # Filtering Compose strict scalar and repeated-array filters without changing their meaning. ## Query encoding | Kind | Examples | Rule | | --- | --- | --- | | Scalar | query, sort, direction, limit | Send at most once | | Repeated array | roles, locations, tools | Repeat the query key | | Range | experience_min, compensation_min | Minimum must not exceed maximum | | Location selector | country:GB, region:EMEA | Use the documented prefix | | Cursor | cursor | Opaque and bound to the filters | ## Repeated filters ### cURL ```shell curl "https://api.luranta.com/v0/jobs?roles=software-engineering&roles=data-engineering&locations=country%3AGB" \ --header "Authorization: Bearer $LURANTA_API_KEY" ``` ### TypeScript ```ts await luranta.jobs.list({ roles: ["software-engineering", "data-engineering"], locations: ["country:GB"], }) ``` ### Python ```python luranta.jobs.list({ "roles": ["software-engineering", "data-engineering"], "locations": ["country:GB"], }) ``` > **Validation is strict:** Unknown parameters, duplicate scalars, invalid values, conflicting ranges and oversized arrays return 400 Problem Details. --- # Pagination Traverse stable result sets with opaque, signed keyset cursors. ## Cursor contract | Property | Behaviour | | --- | --- | | Default page size | 20 resources | | Maximum page size | 100 resources | | Lifetime | 24 hours | | Filter changes | Rejected explicitly | | Page-size changes | Allowed | | Tampering | Rejected explicitly | ## Pagination loop 1. Send the initial filters and `limit`. 2. Read `has_more` and `next_cursor`. 3. Send the same filters with that cursor. 4. Stop when `has_more` is false. Official SDK iterators enforce the same loop and stop on a repeated cursor. > **Treat cursors as opaque:** Do not decode, persist beyond their lifetime, modify or reuse them with another operation or channel. --- # Errors Handle RFC 9457 Problem Details by stable code and retryability. ## Common responses | Status | Meaning | Retry | | --- | --- | --- | | 400 | Invalid request or cursor | No | | 401 | Invalid or revoked API key | No | | 403 | Insufficient scope | No | | 402 | Insufficient credit | After top-up | | 404 | Resource unavailable | No | | 429 | Organisation rate limit | After Retry-After | | 503 | Service or usage accounting unavailable | Only when retryable | ## Problem Details ### JSON ```json { "type": "https://docs.luranta.com/problems/invalid-request", "title": "Invalid request", "status": 400, "detail": "The limit must be between 1 and 100.", "instance": "/v0/jobs", "code": "invalid_request", "request_id": "019c...", "retryable": false, "param": "limit" } ``` > **Network failures are ambiguous:** Do not automatically retry an interrupted billable response. Official SDKs surface TransportError so your application can reconcile deliberately. --- # Rate limits Free and Pay-as-you-go share one exact organisation-level request limit. ## Limits Free and Pay-as-you-go share one organisation-level request budget. | Scope | Routes | Limit | Window | | --- | --- | --- | --- | | Organisation | Jobs, companies and reference data | 60 | 1 minute | | API key | No separate allowance | Uses organisation budget | 1 minute | | Catalogues | Authenticated and free | Uses organisation budget | 1 minute | > **429 responses are not billable:** Wait for Retry-After before retrying. Add bounded exponential backoff with jitter and avoid synchronised retries across workers. ## Production guidance - Share one limiter across every key in an organisation. - Keep concurrency bounded. - Cache catalogue responses in your own service where permitted. - Do not retry validation, authentication or insufficient-credit errors. --- # Versioning Luranta has one pre-release v0 contract while the paid beta is prepared. ## Current versions | Surface | Version | Status | | --- | --- | --- | | REST API | /v0 | latest | | TypeScript SDK | 0.0.0 | unpublished | | Python SDK | 0.0.0 | unpublished | | OpenAPI | 3.1.2 | canonical contract | ## Before launch - The unreleased v0 contract may be hard-cut without compatibility aliases. - All preview changes stay in the single v0 changelog. - SDK packages publish once as `0.1.0` when paid beta launches. - Treat identifiers and cursors as opaque and tolerate unknown response enum values. --- # Security Keep credentials, requests and listing content inside explicit trust boundaries. - [Protect keys](/documentation/authentication): Use server-side secret storage and the narrowest scopes. - [Log safely](/documentation/errors): Record request IDs, never credentials or raw personal data. - [Report a vulnerability](https://luranta.com/legal/security): Use the published security contact and disclosure policy. ## Minimum controls | Area | Control | | --- | --- | | Credentials | No URLs, browser storage, analytics, screenshots or support messages | | Transport | HTTPS only; validate the API hostname | | Content | Treat job descriptions and source text as untrusted data | | Access | Review organisation membership and revoke stale keys | | Diagnostics | Redact secrets before logging or sharing a request | --- # Overview Deliver monitored hiring signals to the tools your organisation already uses. - [Webhooks](/documentation/webhooks): Receive signed, retryable HTTPS event deliveries in your own service. - [Slack](/documentation/slack): Send concise monitor updates to a channel where Luranta is invited. - [Microsoft Teams](/documentation/microsoft-teams): Send monitor updates to an explicitly selected team and channel. ## Shared delivery behaviour | Property | Behaviour | | --- | --- | | Ownership | Destinations belong to one organisation. | | Configuration | Owners and admins install, test, pause, rotate or remove destinations. | | Billing | A monitor charges only for concrete job or company resources delivered. | | Retries | Each destination retries independently with stable event and delivery IDs. | | Access | Links require a current Luranta session and organisation membership. | ## Configure a destination - [Open Signals destinations](https://luranta.com/signals/destinations): Install a provider, select a target and send a test delivery. --- # Webhooks Receive signed Signals events at an organisation-owned public HTTPS endpoint. > **Store the secret once:** The signing secret is displayed only when the destination is created or rotated. Keep it in a server-side secret store and never log it. ## Event types | Event type | When it is sent | | --- | --- | | signals.monitor.delivery | When a configured monitor has new paid resources to deliver. | | integration.test | When an owner or admin sends a test delivery. | ## Envelope Every body is canonical JSON using schema version 1. | Field | Type | Required | | --- | --- | --- | | schema_version | 1 | Yes | | event_id | UUIDv7 | Yes | | delivery_id | UUIDv7 | Yes | | event_type | event type | Yes | | occurred_at | RFC 3339 timestamp | Yes | | data | event payload | Yes | ## Delivery headers | Header | Purpose | | --- | --- | | X-Luranta-Delivery-Id | Unique delivery attempt identity. Use it when investigating delivery state. | | X-Luranta-Event-Id | Stable event identity. Use it as the primary idempotency key. | | X-Luranta-Event-Type | The event discriminator for routing and payload handling. | | X-Luranta-Signature | The v0 HMAC-SHA256 signature. | | X-Luranta-Timestamp | Unix time in seconds included in the signed input. | ## Verify before processing Read the request body as raw bytes. Reject timestamps more than 5 minutes from your clock. Compute HMAC-SHA256 over `v0..` using the destination secret, encode it as lowercase hexadecimal, prefix it with `v0=`, then compare in constant time. Only parse or enqueue the body after verification succeeds. Deduplicate business processing by `event_id`; retain `delivery_id` for per-attempt diagnostics. ## Receive and verify ### cURL ```shell body='{"data":{"action_url":"https://luranta.com/signals/monitors","resource_ids":[],"schema_version":1,"summary":"A monitored hiring signal changed.","title":"Hiring signal update"},"delivery_id":"019c0000-0000-7000-8000-000000000201","event_id":"019c0000-0000-7000-8000-000000000202","event_type":"integration.test","occurred_at":"2026-08-02T12:00:00.000Z","schema_version":1}' timestamp=$(date +%s) signature=$(printf '%s' "v0.$timestamp.$body" \ | openssl dgst -sha256 -hmac "$LURANTA_WEBHOOK_SECRET" -hex \ | awk '{print $NF}') curl --request POST "http://localhost:8787/luranta-webhook" \ --header "Content-Type: application/json" \ --header "X-Luranta-Event-Id: 019c0000-0000-7000-8000-000000000202" \ --header "X-Luranta-Delivery-Id: 019c0000-0000-7000-8000-000000000201" \ --header "X-Luranta-Event-Type: integration.test" \ --header "X-Luranta-Timestamp: $timestamp" \ --header "X-Luranta-Signature: v0=$signature" \ --data-binary "$body" ``` ### TypeScript ```ts const encoder = new TextEncoder() function hexBytes(value: string): Uint8Array { if (!/^[0-9a-f]{64}$/.test(value)) throw new Error("Invalid signature") return Uint8Array.from(value.match(/.{2}/g)!, (byte) => Number.parseInt(byte, 16)) } export async function verifyLurantaWebhook(request: Request, secret: string) { const timestamp = request.headers.get("X-Luranta-Timestamp") const signature = request.headers.get("X-Luranta-Signature") if (!timestamp || !signature?.startsWith("v0=")) return false const age = Math.abs(Math.floor(Date.now() / 1000) - Number(timestamp)) if (!Number.isSafeInteger(Number(timestamp)) || age > 300) return false const rawBody = await request.text() const key = await crypto.subtle.importKey( "raw", encoder.encode(secret), { name: "HMAC", hash: "SHA-256" }, false, ["verify"], ) return crypto.subtle.verify( "HMAC", key, hexBytes(signature.slice(3)), encoder.encode(`v0.${timestamp}.${rawBody}`), ) } ``` ### Python ```python import hashlib import hmac import time def verify_luranta_webhook(raw_body: bytes, headers, secret: str) -> bool: timestamp = headers.get("X-Luranta-Timestamp") signature = headers.get("X-Luranta-Signature") if not timestamp or not signature or not signature.startswith("v0="): return False try: if abs(int(time.time()) - int(timestamp)) > 300: return False except ValueError: return False signed = b"v0." + timestamp.encode() + b"." + raw_body expected = "v0=" + hmac.new(secret.encode(), signed, hashlib.sha256).hexdigest() return hmac.compare_digest(expected, signature) ``` ## Acknowledgement and retries | Receiver result | Luranta behaviour | | --- | --- | | Any 2xx | Marks that destination delivery as complete. | | 408, 409, 425, 429 or 5xx | Retries with bounded backoff, up to 12 attempts. | | Other non-2xx | Treats the delivery as terminal. | | Repeated terminal deliveries | Pauses the destination after 5 consecutive failures. | | Redirect | Does not follow it; the delivery fails. | ## Endpoint requirements - Use a public HTTPS hostname on port 443. - Do not use credentials in the URL. - Luranta rejects loopback, private, link-local, metadata and non-public DNS answers before every attempt. - The maximum body size is 64 KiB and the request timeout is 10 seconds. - Return a 2xx as soon as the verified event is durably queued; process it asynchronously. ## Rotate or troubleshoot Create a new secret from Signals → Destinations, update your receiver, then send a test event before resuming production delivery. Delivery receipts show the destination, event, attempt count and terminal failure code without exposing the secret or payload. A paused destination must be explicitly resumed after the cause is fixed. --- # Slack Deliver concise Signals monitor updates to an invited public Slack channel. ## Slack access | Capability | Behaviour | | --- | --- | | Installation | A Luranta organisation owner or admin authorises the Slack workspace. | | Scopes | chat:write and channels:read only. | | Channels | Public channels where the Luranta app has been explicitly invited. | | Content | A concise rights-cleared summary and an authenticated Luranta link. | | Removal | Disconnecting or revoking the app disables its destinations. | ## Connect Slack 1. Open Signals → Destinations and choose Slack. 2. Select the Luranta organisation and authorise the requested workspace. 3. Invite the Luranta app to the public channel you want to use. 4. Select that channel, save the destination and send a test. ## Delivery behaviour - Each monitor can target one or more destinations. - New-job notifications are off by default to avoid noisy channels. - Delivery links re-check Luranta organisation membership; Slack never receives an R2 object URL. - Failed targets retry independently and cannot resend a destination that already succeeded. --- # Microsoft Teams Deliver Signals monitor updates to an explicitly selected Microsoft Teams channel. ## Microsoft Teams access | Capability | Behaviour | | --- | --- | | Installation | A Luranta organisation owner or admin completes Microsoft consent. | | Access | Only the permissions needed to discover selected teams/channels and send messages. | | Target | One explicitly selected team and channel per destination. | | Content | A concise rights-cleared summary and an authenticated Luranta link. | | Removal | Disconnecting the installation revokes every destination that depends on it. | ## Connect Microsoft Teams 1. Open Signals → Destinations and choose Microsoft Teams. 2. Select the Luranta organisation and complete Microsoft consent. 3. Choose a team and channel, save the destination and send a test. ## Delivery behaviour - Luranta re-checks organisation membership during installation, callback, target selection, refresh and removal. - Provider credentials stay encrypted and are never exposed to the browser after OAuth completes. - Delivery links require a current Luranta session and organisation membership. - Failed targets retry independently and surface receipts in Signals → Destinations. --- # API reference Every operation, parameter, schema, response, and example on this site comes from the canonical OpenAPI document generated by Elysia. Use an organisation API key in the `Authorization: Bearer` header. API keys must remain in server-side memory. ## Operations - [List jobs](/reference/listJobs) — `GET /v0/jobs` - [Retrieve a job](/reference/retrieveJob) — `GET /v0/jobs/{job_id}` - [List companies](/reference/listCompanies) — `GET /v0/companies` - [Retrieve a company](/reference/retrieveCompany) — `GET /v0/companies/{company_id}` - [List locations](/reference/listLocations) — `GET /v0/locations` - [Retrieve a location](/reference/retrieveLocation) — `GET /v0/locations/{id}` - [Get industry taxonomy](/reference/getIndustryTaxonomy) — `GET /v0/taxonomies/industries` - [Get industry taxonomy version](/reference/getIndustryTaxonomyVersion) — `GET /v0/taxonomies/industries/{version}` - [Get role taxonomy](/reference/getRoleTaxonomy) — `GET /v0/taxonomies/roles` - [Get role taxonomy version](/reference/getRoleTaxonomyVersion) — `GET /v0/taxonomies/roles/{version}` - [List tools](/reference/listTools) — `GET /v0/tools` - [Retrieve a tool](/reference/retrieveTool) — `GET /v0/tools/{code}` --- # Shared schemas Reusable response models from the canonical OpenAPI document. # Company - Type: `object` - Additional properties: `forbidden` - Properties: - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `industries` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `logo_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `merged_into_id` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - Type: `null` - `name` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `company` - `open_job_count` (required): - Type: `integer` - Maximum: `9007199254740991` - Minimum: `0` - `status` (required): - Type: `string` - Allowed values: `["active","inactive","merged"]` - `type` (required): - Type: `string` - Allowed values: `["company","brand","government","education","healthcare","nonprofit","partnership","agency","other"]` - `website_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` # CompanyList - Type: `object` - Additional properties: `forbidden` - Properties: - `data` (required): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `industries` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `logo_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `merged_into_id` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - Type: `null` - `name` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `company` - `open_job_count` (required): - Type: `integer` - Maximum: `9007199254740991` - Minimum: `0` - `status` (required): - Type: `string` - Allowed values: `["active","inactive","merged"]` - `type` (required): - Type: `string` - Allowed values: `["company","brand","government","education","healthcare","nonprofit","partnership","agency","other"]` - `website_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `has_more` (required): - Type: `boolean` - `next_cursor` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `1000` - Type: `null` - `object` (required): - Type: `string` - Constant: `list` # Job - Type: `object` - Additional properties: `forbidden` - Properties: - `apply_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `closed_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `company` (required): - Type: `object` - Additional properties: `forbidden` - Properties: - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `name` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `compensation` (required): - Type: `object | null` - anyOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `base_annual_maximum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `base_annual_minimum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `currency` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{3}$` - Type: `null` - `has_bonus` (required): - Type: `boolean` - `has_commission` (required): - Type: `boolean` - `has_equity` (required): - Type: `boolean` - `target_cash_annual_maximum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `target_cash_annual_minimum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - Type: `null` - `compensationPackages` (required): - Type: `object[]` - Default: `[]` - Maximum items: `20` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `baseAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `baseAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `components` (required): - Type: `object[]` - Maximum items: `20` - Minimum items: `1` - Items: - Type: `object` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `currency` (required): - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `money` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `min` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `percentage` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `unit` (required): - Type: `string` - Maximum length: `40` - Minimum length: `1` - `valueType` (required): - Type: `string` - Constant: `units` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `valueType` (required): - Type: `string` - Constant: `disclosure` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `fxObservedAt` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$` - Type: `null` - `hasBonus` (required): - Type: `boolean` - `hasCommission` (required): - Type: `boolean` - `hasEquity` (required): - Type: `boolean` - `scope` (required): - Type: `object` - Default: `{"kind":"unspecified"}` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `global` - Type: `object` - Additional properties: `forbidden` - Properties: - `countryCode` (required): - Type: `string` - Allowed values: `["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]` - `kind` (required): - Type: `string` - Constant: `country` - Type: `object` - Additional properties: `forbidden` - Properties: - `adminAreaCode` (required): - Type: `string` - Pattern: `^[A-Z]{2}\.[A-Z0-9-]{1,12}$` - `kind` (required): - Type: `string` - Constant: `admin` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `metro` - `metroId` (required): - Type: `string` - Pattern: `^metro:[A-Za-z0-9][A-Za-z0-9._:-]{0,239}$` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `place` - `placeId` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `unspecified` - `source` (required): - Type: `string` - Allowed values: `["employer_feed","greenhouse_pay_transparency","structured_data","description"]` - `targetCashAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `targetCashAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `compensationSelectionReason` (required): - Type: `string` - Allowed values: `["unique","global","location_match","location_dependent","none"]` - Default: `none` - `description_markdown` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `500000` - Type: `null` - `engagements` (required): - Type: `string[]` - Maximum items: `7` - Items: - Type: `string` - Allowed values: `["permanent","fixed-term","contract-freelance","temporary-seasonal-casual","internship","apprenticeship","volunteer"]` - `experience` (required): - Type: `object` - Additional properties: `forbidden` - Properties: - `maximum_years` (required): - Type: `integer | null` - anyOf: - Type: `integer` - Maximum: `80` - Minimum: `0` - Type: `null` - `minimum_years` (required): - Type: `integer | null` - anyOf: - Type: `integer` - Maximum: `80` - Minimum: `0` - Type: `null` - `unstated` (required): - Type: `boolean` - `first_seen_at` (required): - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `languages` (required): - Type: `string[]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `35` - Minimum length: `2` - `last_seen_at` (required): - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - `listing_language` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `35` - Minimum length: `2` - Type: `null` - `locationDisclosures` (required): - Type: `object[]` - Default: `[]` - Maximum items: `50` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `purpose` (required): - Type: `string` - Allowed values: `["workplace","applicant_eligibility","unspecified"]` - `reason` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `80` - Minimum length: `1` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["resolved","stated_unresolved","conflict"]` - `locations` (required): - Type: `object[]` - Maximum items: `50` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `180` - Minimum length: `1` - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `locationState` (required): - Type: `string` - Allowed values: `["resolved","stated_unresolved","unstated","conflict"]` - Default: `unstated` - `object` (required): - Type: `string` - Constant: `job` - `primaryCompensationPackage` (required): - Type: `object | null` - Default: `null` - anyOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `baseAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `baseAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `components` (required): - Type: `object[]` - Maximum items: `20` - Minimum items: `1` - Items: - Type: `object` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `currency` (required): - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `money` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `min` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `percentage` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `unit` (required): - Type: `string` - Maximum length: `40` - Minimum length: `1` - `valueType` (required): - Type: `string` - Constant: `units` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `valueType` (required): - Type: `string` - Constant: `disclosure` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `fxObservedAt` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$` - Type: `null` - `hasBonus` (required): - Type: `boolean` - `hasCommission` (required): - Type: `boolean` - `hasEquity` (required): - Type: `boolean` - `scope` (required): - Type: `object` - Default: `{"kind":"unspecified"}` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `global` - Type: `object` - Additional properties: `forbidden` - Properties: - `countryCode` (required): - Type: `string` - Allowed values: `["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]` - `kind` (required): - Type: `string` - Constant: `country` - Type: `object` - Additional properties: `forbidden` - Properties: - `adminAreaCode` (required): - Type: `string` - Pattern: `^[A-Z]{2}\.[A-Z0-9-]{1,12}$` - `kind` (required): - Type: `string` - Constant: `admin` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `metro` - `metroId` (required): - Type: `string` - Pattern: `^metro:[A-Za-z0-9][A-Za-z0-9._:-]{0,239}$` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `place` - `placeId` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `unspecified` - `source` (required): - Type: `string` - Allowed values: `["employer_feed","greenhouse_pay_transparency","structured_data","description"]` - `targetCashAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `targetCashAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - Type: `null` - `published_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `roles` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `schedules` (required): - Type: `string[]` - Maximum items: `2` - Items: - Type: `string` - Allowed values: `["full-time","part-time"]` - `source_updated_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `source_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["open","closed"]` - `title` (required): - Type: `string` - Maximum length: `300` - Minimum length: `1` - `tools` (required): - Type: `string[]` - Maximum items: `100` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `valid_through` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `visa_sponsorship` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["available","unavailable"]` - Type: `null` - `work_arrangements` (required): - Type: `string[]` - Maximum items: `3` - Items: - Type: `string` - Allowed values: `["on_site","hybrid","remote"]` # JobList - Type: `object` - Additional properties: `forbidden` - Properties: - `data` (required): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `apply_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `closed_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `company` (required): - Type: `object` - Additional properties: `forbidden` - Properties: - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `name` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `compensation` (required): - Type: `object | null` - anyOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `base_annual_maximum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `base_annual_minimum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `currency` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{3}$` - Type: `null` - `has_bonus` (required): - Type: `boolean` - `has_commission` (required): - Type: `boolean` - `has_equity` (required): - Type: `boolean` - `target_cash_annual_maximum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `target_cash_annual_minimum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - Type: `null` - `compensationPackages` (required): - Type: `object[]` - Default: `[]` - Maximum items: `20` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `baseAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `baseAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `components` (required): - Type: `object[]` - Maximum items: `20` - Minimum items: `1` - Items: - Type: `object` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `currency` (required): - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `money` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `min` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `percentage` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `unit` (required): - Type: `string` - Maximum length: `40` - Minimum length: `1` - `valueType` (required): - Type: `string` - Constant: `units` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `valueType` (required): - Type: `string` - Constant: `disclosure` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `fxObservedAt` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$` - Type: `null` - `hasBonus` (required): - Type: `boolean` - `hasCommission` (required): - Type: `boolean` - `hasEquity` (required): - Type: `boolean` - `scope` (required): - Type: `object` - Default: `{"kind":"unspecified"}` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `global` - Type: `object` - Additional properties: `forbidden` - Properties: - `countryCode` (required): - Type: `string` - Allowed values: `["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]` - `kind` (required): - Type: `string` - Constant: `country` - Type: `object` - Additional properties: `forbidden` - Properties: - `adminAreaCode` (required): - Type: `string` - Pattern: `^[A-Z]{2}\.[A-Z0-9-]{1,12}$` - `kind` (required): - Type: `string` - Constant: `admin` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `metro` - `metroId` (required): - Type: `string` - Pattern: `^metro:[A-Za-z0-9][A-Za-z0-9._:-]{0,239}$` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `place` - `placeId` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `unspecified` - `source` (required): - Type: `string` - Allowed values: `["employer_feed","greenhouse_pay_transparency","structured_data","description"]` - `targetCashAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `targetCashAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `compensationSelectionReason` (required): - Type: `string` - Allowed values: `["unique","global","location_match","location_dependent","none"]` - Default: `none` - `engagements` (required): - Type: `string[]` - Maximum items: `7` - Items: - Type: `string` - Allowed values: `["permanent","fixed-term","contract-freelance","temporary-seasonal-casual","internship","apprenticeship","volunteer"]` - `experience` (required): - Type: `object` - Additional properties: `forbidden` - Properties: - `maximum_years` (required): - Type: `integer | null` - anyOf: - Type: `integer` - Maximum: `80` - Minimum: `0` - Type: `null` - `minimum_years` (required): - Type: `integer | null` - anyOf: - Type: `integer` - Maximum: `80` - Minimum: `0` - Type: `null` - `unstated` (required): - Type: `boolean` - `first_seen_at` (required): - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `languages` (required): - Type: `string[]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `35` - Minimum length: `2` - `last_seen_at` (required): - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - `locationDisclosures` (required): - Type: `object[]` - Default: `[]` - Maximum items: `50` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `purpose` (required): - Type: `string` - Allowed values: `["workplace","applicant_eligibility","unspecified"]` - `reason` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `80` - Minimum length: `1` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["resolved","stated_unresolved","conflict"]` - `locations` (required): - Type: `object[]` - Maximum items: `50` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `180` - Minimum length: `1` - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `locationState` (required): - Type: `string` - Allowed values: `["resolved","stated_unresolved","unstated","conflict"]` - Default: `unstated` - `object` (required): - Type: `string` - Constant: `job` - `primaryCompensationPackage` (required): - Type: `object | null` - Default: `null` - anyOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `baseAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `baseAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `components` (required): - Type: `object[]` - Maximum items: `20` - Minimum items: `1` - Items: - Type: `object` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `currency` (required): - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `money` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `min` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `percentage` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `unit` (required): - Type: `string` - Maximum length: `40` - Minimum length: `1` - `valueType` (required): - Type: `string` - Constant: `units` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `valueType` (required): - Type: `string` - Constant: `disclosure` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `fxObservedAt` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$` - Type: `null` - `hasBonus` (required): - Type: `boolean` - `hasCommission` (required): - Type: `boolean` - `hasEquity` (required): - Type: `boolean` - `scope` (required): - Type: `object` - Default: `{"kind":"unspecified"}` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `global` - Type: `object` - Additional properties: `forbidden` - Properties: - `countryCode` (required): - Type: `string` - Allowed values: `["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]` - `kind` (required): - Type: `string` - Constant: `country` - Type: `object` - Additional properties: `forbidden` - Properties: - `adminAreaCode` (required): - Type: `string` - Pattern: `^[A-Z]{2}\.[A-Z0-9-]{1,12}$` - `kind` (required): - Type: `string` - Constant: `admin` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `metro` - `metroId` (required): - Type: `string` - Pattern: `^metro:[A-Za-z0-9][A-Za-z0-9._:-]{0,239}$` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `place` - `placeId` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `unspecified` - `source` (required): - Type: `string` - Allowed values: `["employer_feed","greenhouse_pay_transparency","structured_data","description"]` - `targetCashAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `targetCashAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - Type: `null` - `published_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `roles` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `schedules` (required): - Type: `string[]` - Maximum items: `2` - Items: - Type: `string` - Allowed values: `["full-time","part-time"]` - `source_updated_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `source_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["open","closed"]` - `title` (required): - Type: `string` - Maximum length: `300` - Minimum length: `1` - `tools` (required): - Type: `string[]` - Maximum items: `100` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `visa_sponsorship` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["available","unavailable"]` - Type: `null` - `work_arrangements` (required): - Type: `string[]` - Maximum items: `3` - Items: - Type: `string` - Allowed values: `["on_site","hybrid","remote"]` - `has_more` (required): - Type: `boolean` - `next_cursor` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `1000` - Type: `null` - `object` (required): - Type: `string` - Constant: `list` # Location - Type: `object` - Additional properties: `forbidden` - Properties: - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `id` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `kind` (required): - Type: `string` - Allowed values: `["region","country","admin","metro","city"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `location` - `parent_ids` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `240` - Minimum length: `1` # LocationList - Type: `object` - Additional properties: `forbidden` - Properties: - `data` (required): - Type: `object[]` - Maximum items: `20` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `id` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `kind` (required): - Type: `string` - Allowed values: `["region","country","admin","metro","city"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `location` - `parent_ids` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `240` - Minimum length: `1` - `has_more` (required): - Type: `boolean` - `next_cursor` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `1000` - Type: `null` - `object` (required): - Type: `string` - Constant: `list` # TaxonomySnapshot - Type: `object` - Additional properties: `forbidden` - Properties: - `entries` (required): - Type: `object[]` - Maximum items: `2000` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `aliases` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `boundary_notes` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `definition` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - Type: `null` - `kind` (required): - Type: `string` - Allowed values: `["family","specialism","sector"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `labels` (required): - Type: `object` - Additional property values: - Type: `string` - Maximum length: `240` - Minimum length: `1` - `parent_code` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `replaced_by` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["active","deprecated"]` - `id` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `object` (required): - Type: `string` - Constant: `taxonomy` - `revision` (required): - Type: `string` - Pattern: `^sha256:[a-f0-9]{64}$` - `version` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` # Tool - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `tool` # ToolList - Type: `object` - Additional properties: `forbidden` - Properties: - `data` (required): - Type: `object[]` - Maximum items: `20` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `tool` - `has_more` (required): - Type: `boolean` - `next_cursor` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `1000` - Type: `null` - `object` (required): - Type: `string` - Constant: `list` --- # Problem Details RFC 9457 error bodies returned by API operations. # ProblemDetails - Type: `object` - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` --- # List jobs `GET /v0/jobs` Returns a keyset-paginated list of open, commercially cleared jobs matching the supplied filters. Filters combine with AND across dimensions and OR within each repeated dimension. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `jobs:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/jobs" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" \ --get \ --data-urlencode "query=software engineer" \ --data-urlencode "roles=software-engineering" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/jobs") url.searchParams.append("query", "software engineer") url.searchParams.append("roles", "software-engineering") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/jobs", params=[ ("query", "software engineer"), ("roles", "software-engineering"), ], headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `query` `string` · query · optional Full-text query matched against indexed job text and title similarity. Normalized to Unicode NFC with folded whitespace; 1–200 characters. - Type: `string` - Description: Full-text query matched against indexed job text and title similarity. Normalized to Unicode NFC with folded whitespace; 1–200 characters. - Examples: `["software engineer"]` - Maximum length: `200` - Minimum length: `1` Examples - example-1: `software engineer` ### `roles` `string[]` · query · optional · style `form` · explode `true` Stable role family or specialism codes from the versioned Luranta role taxonomy. Repeat the parameter to match any supplied code; maximum 50. Discover values with GET /v0/taxonomies/roles. [Browse available values](/reference/getRoleTaxonomy). - Type: `string[]` - Description: Stable role family or specialism codes from the versioned Luranta role taxonomy. Repeat the parameter to match any supplied code; maximum 50. Discover values with GET /v0/taxonomies/roles. - Default: `[]` - Examples: `[["software-engineering"]]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` Examples - example-1: `["software-engineering"]` ### `locations` `string[]` · query · optional · style `form` · explode `true` Canonical location IDs: region:EMEA, region:APAC, region:AMERICAS, country:, admin:, or city:geonames:. Metro IDs are accepted when present in the location catalogue. Repeat to match any selector; maximum 300. [Browse available values](/reference/listLocations). - Type: `string[]` - Description: Canonical location IDs: region:EMEA, region:APAC, region:AMERICAS, country:, admin:, or city:geonames:. Metro IDs are accepted when present in the location catalogue. Repeat to match any selector; maximum 300. - Default: `[]` - Examples: `[["country:GB"]]` - Maximum items: `300` - Items: - Type: `string` - Maximum length: `240` - Minimum length: `1` Examples - example-1: `["country:GB"]` ### `companies` `string[]` · query · optional · style `form` · explode `true` Company UUIDv7 identifiers. Repeat the parameter to match any supplied company; maximum 20. - Type: `string[]` - Description: Company UUIDv7 identifiers. Repeat the parameter to match any supplied company; maximum 20. - Default: `[]` - Examples: `[["019bf6e2-a668-7a1b-811d-c5845c739754"]]` - Maximum items: `20` - Items: - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` Examples - example-1: `["019bf6e2-a668-7a1b-811d-c5845c739754"]` ### `industries` `string[]` · query · optional · style `form` · explode `true` Stable industry codes assigned to the hiring company from the versioned Luranta industry taxonomy. Repeat the parameter to match any supplied code; maximum 50. Discover values with GET /v0/taxonomies/industries. [Browse available values](/reference/getIndustryTaxonomy). - Type: `string[]` - Description: Stable industry codes assigned to the hiring company from the versioned Luranta industry taxonomy. Repeat the parameter to match any supplied code; maximum 50. Discover values with GET /v0/taxonomies/industries. - Default: `[]` - Examples: `[["technology"]]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` Examples - example-1: `["technology"]` ### `tools` `string[]` · query · optional · style `form` · explode `true` Stable tool or technology codes identified for the job. Repeat the parameter to match any supplied code; discover evolving values with GET /v0/tools?query=...; maximum 50. [Browse available values](/reference/listTools). - Type: `string[]` - Description: Stable tool or technology codes identified for the job. Repeat the parameter to match any supplied code; discover evolving values with GET /v0/tools?query=...; maximum 50. - Default: `[]` - Examples: `[["typescript"]]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` Examples - example-1: `["typescript"]` ### `work_arrangements` `string[]` · query · optional · style `form` · explode `true` Work arrangements: on_site, hybrid, or remote. Repeat the parameter to match any supplied value; maximum 50. Available options: `on_site`, `hybrid`, `remote`. - Type: `string[]` - Description: Work arrangements: on_site, hybrid, or remote. Repeat the parameter to match any supplied value; maximum 50. - Default: `[]` - Examples: `[["remote"]]` - Maximum items: `50` - Items: - Type: `string` - Allowed values: `["on_site","hybrid","remote"]` Examples - example-1: `["remote"]` ### `schedules` `string[]` · query · optional · style `form` · explode `true` Employment schedules: full-time or part-time. Repeat the parameter to match any supplied value; maximum 50. Available options: `full-time`, `part-time`. - Type: `string[]` - Description: Employment schedules: full-time or part-time. Repeat the parameter to match any supplied value; maximum 50. - Default: `[]` - Examples: `[["full-time"]]` - Maximum items: `50` - Items: - Type: `string` - Allowed values: `["full-time","part-time"]` Examples - example-1: `["full-time"]` ### `engagements` `string[]` · query · optional · style `form` · explode `true` Engagement types: permanent, fixed-term, contract-freelance, temporary-seasonal-casual, internship, apprenticeship, or volunteer. Repeat to match any supplied value; maximum 50. Available options: `permanent`, `fixed-term`, `contract-freelance`, `temporary-seasonal-casual`, `internship`, `apprenticeship`, `volunteer`. - Type: `string[]` - Description: Engagement types: permanent, fixed-term, contract-freelance, temporary-seasonal-casual, internship, apprenticeship, or volunteer. Repeat to match any supplied value; maximum 50. - Default: `[]` - Examples: `[["permanent"]]` - Maximum items: `50` - Items: - Type: `string` - Allowed values: `["permanent","fixed-term","contract-freelance","temporary-seasonal-casual","internship","apprenticeship","volunteer"]` Examples - example-1: `["permanent"]` ### `experience_min` `integer` · query · optional Lower bound of the acceptable experience range in whole years, from 0 to 20. Matches a stated job range that overlaps this bound. - Type: `integer` - Description: Lower bound of the acceptable experience range in whole years, from 0 to 20. Matches a stated job range that overlaps this bound. - Examples: `[2]` - Maximum: `20` - Minimum: `0` Examples - example-1: `2` ### `experience_max` `integer` · query · optional Upper bound of the acceptable experience range in whole years, from 0 to 20; 20 includes jobs requiring 20 years or more. Matches a stated job range that overlaps this bound. - Type: `integer` - Description: Upper bound of the acceptable experience range in whole years, from 0 to 20; 20 includes jobs requiring 20 years or more. Matches a stated job range that overlaps this bound. - Examples: `[5]` - Maximum: `20` - Minimum: `0` Examples - example-1: `5` ### `include_unstated_experience` `boolean` · query · optional When an experience bound is present, include jobs without a numeric experience requirement. Defaults to true and has no effect without an experience bound. - Type: `boolean` - Description: When an experience bound is present, include jobs without a numeric experience requirement. Defaults to true and has no effect without an experience bound. - Default: `true` - Examples: `[true]` Examples - example-1: `true` ### `visa_sponsorship` `string[]` · query · optional · style `form` · explode `true` Set to available to return only jobs explicitly marked as offering visa sponsorship. Available options: `available`. - Type: `string[]` - Description: Set to available to return only jobs explicitly marked as offering visa sponsorship. - Default: `[]` - Examples: `[["available"]]` - Maximum items: `50` - Items: - Type: `string` - Constant: `available` Examples - example-1: `["available"]` ### `languages` `string[]` · query · optional · style `form` · explode `true` Canonical BCP 47 language tags. A job must use a supplied listing language and satisfy each resolved language-requirement group with a supplied language. Repeat for alternatives; maximum 50. - Type: `string[]` - Description: Canonical BCP 47 language tags. A job must use a supplied listing language and satisfy each resolved language-requirement group with a supplied language. Repeat for alternatives; maximum 50. - Default: `[]` - Examples: `[["en-GB"]]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `35` - Minimum length: `2` Examples - example-1: `["en-GB"]` ### `compensation_metric` `string` · query · optional Annual USD metric used by compensation bounds and sorting: base salary or target-cash. Defaults to base. Available options: `base`, `target-cash`. - Type: `string` - Description: Annual USD metric used by compensation bounds and sorting: base salary or target-cash. Defaults to base. - Allowed values: `["base","target-cash"]` - Default: `base` - Examples: `["base"]` Examples - example-1: `base` ### `compensation_min` `number` · query · optional Minimum annual USD threshold for the selected compensation metric. Matches a package whose upper bound, or lower bound when no upper bound exists, meets the threshold. - Type: `number` - Description: Minimum annual USD threshold for the selected compensation metric. Matches a package whose upper bound, or lower bound when no upper bound exists, meets the threshold. - Examples: `[60000]` - Minimum: `0` Examples - example-1: `60000` ### `compensation_max` `number` · query · optional Maximum annual USD threshold for the selected compensation metric. Matches a package whose lower bound, or upper bound when no lower bound exists, does not exceed the threshold. - Type: `number` - Description: Maximum annual USD threshold for the selected compensation metric. Matches a package whose lower bound, or upper bound when no lower bound exists, does not exceed the threshold. - Examples: `[90000]` - Minimum: `0` Examples - example-1: `90000` ### `bonus` `boolean` · query · optional When true, require a matching compensation package that discloses a bonus. Defaults to false, which does not filter on bonuses. - Type: `boolean` - Description: When true, require a matching compensation package that discloses a bonus. Defaults to false, which does not filter on bonuses. - Default: `false` - Examples: `[true]` Examples - example-1: `true` ### `commission` `boolean` · query · optional When true, require a matching compensation package that discloses commission. Defaults to false, which does not filter on commission. - Type: `boolean` - Description: When true, require a matching compensation package that discloses commission. Defaults to false, which does not filter on commission. - Default: `false` - Examples: `[true]` Examples - example-1: `true` ### `equity` `boolean` · query · optional When true, require a matching compensation package that offers equity. Defaults to false, which does not filter on equity. - Type: `boolean` - Description: When true, require a matching compensation package that offers equity. Defaults to false, which does not filter on equity. - Default: `false` - Examples: `[true]` Examples - example-1: `true` ### `freshness` `string` · query · optional Limits jobs by published_at, falling back to first_seen_at: any, 7-days, 30-days, 90-days, or 365-days. Defaults to any. Available options: `any`, `7-days`, `30-days`, `90-days`, `365-days`. - Type: `string` - Description: Limits jobs by published_at, falling back to first_seen_at: any, 7-days, 30-days, 90-days, or 365-days. Defaults to any. - Allowed values: `["any","7-days","30-days","90-days","365-days"]` - Default: `any` - Examples: `["30-days"]` Examples - example-1: `30-days` ### `sort` `string` · query · optional Ordering field: updated and recommended use non-personalized publication or first-seen time; compensation uses the selected metric midpoint. Defaults to updated. Available options: `recommended`, `compensation`, `updated`. - Type: `string` - Description: Ordering field: updated and recommended use non-personalized publication or first-seen time; compensation uses the selected metric midpoint. Defaults to updated. - Allowed values: `["recommended","compensation","updated"]` - Default: `updated` - Examples: `["updated"]` Examples - example-1: `updated` ### `direction` `string` · query · optional Sort direction for the selected ordering field. UUIDv7 ID breaks ties. Defaults to desc. Available options: `asc`, `desc`. - Type: `string` - Description: Sort direction for the selected ordering field. UUIDv7 ID breaks ties. Defaults to desc. - Allowed values: `["asc","desc"]` - Default: `desc` - Examples: `["desc"]` Examples - example-1: `desc` ### `cursor` `string` · query · optional Opaque keyset cursor from next_cursor. Reuse it with unchanged filters, sort, and direction; limit may change. Expires after 24 hours. - Type: `string` - Description: Opaque keyset cursor from next_cursor. Reuse it with unchanged filters, sort, and direction; limit may change. Expires after 24 hours. - Maximum length: `1000` - Minimum length: `1` ### `limit` `integer` · query · optional Maximum resources to return, from 1 to 100. Defaults to 20. - Type: `integer` - Description: Maximum resources to return, from 1 to 100. Defaults to 20. - Default: `20` - Examples: `[20]` - Maximum: `100` - Minimum: `1` Examples - example-1: `20` ## Responses ### 200 A page of matching open jobs. The list may be empty. #### Headers ##### `Luranta-Cost-USD` `string` · optional Credit consumed as a USD decimal string. Present only on successful billable responses. - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` ##### `Luranta-Credit-Balance-USD` `string` · optional Organisation credit remaining after settlement. Present only on successful billable responses. - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` ##### `Luranta-Resources-Returned` `integer` · optional Number of resources returned and charged. Present only on successful billable responses. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `JobList` - Component: [`JobList`](/reference/schemas#JobList) - Additional properties: `forbidden` - Properties: - `data` (required): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `apply_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `closed_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `company` (required): - Type: `object` - Additional properties: `forbidden` - Properties: - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `name` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `compensation` (required): - Type: `object | null` - anyOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `base_annual_maximum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `base_annual_minimum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `currency` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{3}$` - Type: `null` - `has_bonus` (required): - Type: `boolean` - `has_commission` (required): - Type: `boolean` - `has_equity` (required): - Type: `boolean` - `target_cash_annual_maximum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `target_cash_annual_minimum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - Type: `null` - `compensationPackages` (required): - Type: `object[]` - Default: `[]` - Maximum items: `20` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `baseAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `baseAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `components` (required): - Type: `object[]` - Maximum items: `20` - Minimum items: `1` - Items: - Type: `object` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `currency` (required): - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `money` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `min` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `percentage` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `unit` (required): - Type: `string` - Maximum length: `40` - Minimum length: `1` - `valueType` (required): - Type: `string` - Constant: `units` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `valueType` (required): - Type: `string` - Constant: `disclosure` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `fxObservedAt` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$` - Type: `null` - `hasBonus` (required): - Type: `boolean` - `hasCommission` (required): - Type: `boolean` - `hasEquity` (required): - Type: `boolean` - `scope` (required): - Type: `object` - Default: `{"kind":"unspecified"}` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `global` - Type: `object` - Additional properties: `forbidden` - Properties: - `countryCode` (required): - Type: `string` - Allowed values: `["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]` - `kind` (required): - Type: `string` - Constant: `country` - Type: `object` - Additional properties: `forbidden` - Properties: - `adminAreaCode` (required): - Type: `string` - Pattern: `^[A-Z]{2}\.[A-Z0-9-]{1,12}$` - `kind` (required): - Type: `string` - Constant: `admin` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `metro` - `metroId` (required): - Type: `string` - Pattern: `^metro:[A-Za-z0-9][A-Za-z0-9._:-]{0,239}$` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `place` - `placeId` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `unspecified` - `source` (required): - Type: `string` - Allowed values: `["employer_feed","greenhouse_pay_transparency","structured_data","description"]` - `targetCashAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `targetCashAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `compensationSelectionReason` (required): - Type: `string` - Allowed values: `["unique","global","location_match","location_dependent","none"]` - Default: `none` - `engagements` (required): - Type: `string[]` - Maximum items: `7` - Items: - Type: `string` - Allowed values: `["permanent","fixed-term","contract-freelance","temporary-seasonal-casual","internship","apprenticeship","volunteer"]` - `experience` (required): - Type: `object` - Additional properties: `forbidden` - Properties: - `maximum_years` (required): - Type: `integer | null` - anyOf: - Type: `integer` - Maximum: `80` - Minimum: `0` - Type: `null` - `minimum_years` (required): - Type: `integer | null` - anyOf: - Type: `integer` - Maximum: `80` - Minimum: `0` - Type: `null` - `unstated` (required): - Type: `boolean` - `first_seen_at` (required): - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `languages` (required): - Type: `string[]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `35` - Minimum length: `2` - `last_seen_at` (required): - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - `locationDisclosures` (required): - Type: `object[]` - Default: `[]` - Maximum items: `50` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `purpose` (required): - Type: `string` - Allowed values: `["workplace","applicant_eligibility","unspecified"]` - `reason` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `80` - Minimum length: `1` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["resolved","stated_unresolved","conflict"]` - `locations` (required): - Type: `object[]` - Maximum items: `50` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `180` - Minimum length: `1` - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `locationState` (required): - Type: `string` - Allowed values: `["resolved","stated_unresolved","unstated","conflict"]` - Default: `unstated` - `object` (required): - Type: `string` - Constant: `job` - `primaryCompensationPackage` (required): - Type: `object | null` - Default: `null` - anyOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `baseAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `baseAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `components` (required): - Type: `object[]` - Maximum items: `20` - Minimum items: `1` - Items: - Type: `object` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `currency` (required): - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `money` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `min` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `percentage` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `unit` (required): - Type: `string` - Maximum length: `40` - Minimum length: `1` - `valueType` (required): - Type: `string` - Constant: `units` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `valueType` (required): - Type: `string` - Constant: `disclosure` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `fxObservedAt` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$` - Type: `null` - `hasBonus` (required): - Type: `boolean` - `hasCommission` (required): - Type: `boolean` - `hasEquity` (required): - Type: `boolean` - `scope` (required): - Type: `object` - Default: `{"kind":"unspecified"}` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `global` - Type: `object` - Additional properties: `forbidden` - Properties: - `countryCode` (required): - Type: `string` - Allowed values: `["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]` - `kind` (required): - Type: `string` - Constant: `country` - Type: `object` - Additional properties: `forbidden` - Properties: - `adminAreaCode` (required): - Type: `string` - Pattern: `^[A-Z]{2}\.[A-Z0-9-]{1,12}$` - `kind` (required): - Type: `string` - Constant: `admin` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `metro` - `metroId` (required): - Type: `string` - Pattern: `^metro:[A-Za-z0-9][A-Za-z0-9._:-]{0,239}$` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `place` - `placeId` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `unspecified` - `source` (required): - Type: `string` - Allowed values: `["employer_feed","greenhouse_pay_transparency","structured_data","description"]` - `targetCashAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `targetCashAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - Type: `null` - `published_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `roles` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `schedules` (required): - Type: `string[]` - Maximum items: `2` - Items: - Type: `string` - Allowed values: `["full-time","part-time"]` - `source_updated_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `source_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["open","closed"]` - `title` (required): - Type: `string` - Maximum length: `300` - Minimum length: `1` - `tools` (required): - Type: `string[]` - Maximum items: `100` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `visa_sponsorship` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["available","unavailable"]` - Type: `null` - `work_arrangements` (required): - Type: `string[]` - Maximum items: `3` - Items: - Type: `string` - Allowed values: `["on_site","hybrid","remote"]` - `has_more` (required): - Type: `boolean` - `next_cursor` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `1000` - Type: `null` - `object` (required): - Type: `string` - Constant: `list` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ## Pagination - Allows page size change: `true` - Cursor ttl seconds: `86400` - Has more path: `has_more` - Items path: `data` - Next cursor path: `next_cursor` - Style: `keyset` ### Charging metadata - Count path: `data` - Meter: `job_resource` - Model: `returned_resource` - Resource: `job` --- # Retrieve a job `GET /v0/jobs/{job_id}` Returns one commercially cleared job by UUIDv7. A previously published closed job keeps its ID, reports closed status and lifecycle timestamps, and has no actionable apply URL. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `jobs:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/jobs/job_id" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/jobs/job_id") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/jobs/job_id", headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `job_id` `string` · path · required UUIDv7 identifier of a previously published job. - Type: `string` - Description: UUIDv7 identifier of a previously published job. - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` ## Responses ### 200 The requested job, including rights-cleared detail fields. #### Headers ##### `Luranta-Cost-USD` `string` · optional Credit consumed as a USD decimal string. Present only on successful billable responses. - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` ##### `Luranta-Credit-Balance-USD` `string` · optional Organisation credit remaining after settlement. Present only on successful billable responses. - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` ##### `Luranta-Resources-Returned` `integer` · optional Number of resources returned and charged. Present only on successful billable responses. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `Job` - Component: [`Job`](/reference/schemas#Job) - Additional properties: `forbidden` - Properties: - `apply_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `closed_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `company` (required): - Type: `object` - Additional properties: `forbidden` - Properties: - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `name` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `compensation` (required): - Type: `object | null` - anyOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `base_annual_maximum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `base_annual_minimum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `currency` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{3}$` - Type: `null` - `has_bonus` (required): - Type: `boolean` - `has_commission` (required): - Type: `boolean` - `has_equity` (required): - Type: `boolean` - `target_cash_annual_maximum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `target_cash_annual_minimum` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - Type: `null` - `compensationPackages` (required): - Type: `object[]` - Default: `[]` - Maximum items: `20` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `baseAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `baseAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `components` (required): - Type: `object[]` - Maximum items: `20` - Minimum items: `1` - Items: - Type: `object` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `currency` (required): - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `money` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `min` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `percentage` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `unit` (required): - Type: `string` - Maximum length: `40` - Minimum length: `1` - `valueType` (required): - Type: `string` - Constant: `units` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `valueType` (required): - Type: `string` - Constant: `disclosure` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `fxObservedAt` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$` - Type: `null` - `hasBonus` (required): - Type: `boolean` - `hasCommission` (required): - Type: `boolean` - `hasEquity` (required): - Type: `boolean` - `scope` (required): - Type: `object` - Default: `{"kind":"unspecified"}` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `global` - Type: `object` - Additional properties: `forbidden` - Properties: - `countryCode` (required): - Type: `string` - Allowed values: `["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]` - `kind` (required): - Type: `string` - Constant: `country` - Type: `object` - Additional properties: `forbidden` - Properties: - `adminAreaCode` (required): - Type: `string` - Pattern: `^[A-Z]{2}\.[A-Z0-9-]{1,12}$` - `kind` (required): - Type: `string` - Constant: `admin` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `metro` - `metroId` (required): - Type: `string` - Pattern: `^metro:[A-Za-z0-9][A-Za-z0-9._:-]{0,239}$` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `place` - `placeId` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `unspecified` - `source` (required): - Type: `string` - Allowed values: `["employer_feed","greenhouse_pay_transparency","structured_data","description"]` - `targetCashAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `targetCashAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `compensationSelectionReason` (required): - Type: `string` - Allowed values: `["unique","global","location_match","location_dependent","none"]` - Default: `none` - `description_markdown` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `500000` - Type: `null` - `engagements` (required): - Type: `string[]` - Maximum items: `7` - Items: - Type: `string` - Allowed values: `["permanent","fixed-term","contract-freelance","temporary-seasonal-casual","internship","apprenticeship","volunteer"]` - `experience` (required): - Type: `object` - Additional properties: `forbidden` - Properties: - `maximum_years` (required): - Type: `integer | null` - anyOf: - Type: `integer` - Maximum: `80` - Minimum: `0` - Type: `null` - `minimum_years` (required): - Type: `integer | null` - anyOf: - Type: `integer` - Maximum: `80` - Minimum: `0` - Type: `null` - `unstated` (required): - Type: `boolean` - `first_seen_at` (required): - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `languages` (required): - Type: `string[]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `35` - Minimum length: `2` - `last_seen_at` (required): - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - `listing_language` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `35` - Minimum length: `2` - Type: `null` - `locationDisclosures` (required): - Type: `object[]` - Default: `[]` - Maximum items: `50` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `purpose` (required): - Type: `string` - Allowed values: `["workplace","applicant_eligibility","unspecified"]` - `reason` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `80` - Minimum length: `1` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["resolved","stated_unresolved","conflict"]` - `locations` (required): - Type: `object[]` - Maximum items: `50` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `180` - Minimum length: `1` - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `locationState` (required): - Type: `string` - Allowed values: `["resolved","stated_unresolved","unstated","conflict"]` - Default: `unstated` - `object` (required): - Type: `string` - Constant: `job` - `primaryCompensationPackage` (required): - Type: `object | null` - Default: `null` - anyOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `baseAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `baseAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `baseAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `components` (required): - Type: `object[]` - Maximum items: `20` - Minimum items: `1` - Items: - Type: `object` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `currency` (required): - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `money` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `min` (optional): - Type: `number` - Maximum: `1000` - Minimum: `0` - `valueType` (required): - Type: `string` - Constant: `percentage` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `max` (optional): - Type: `number` - Minimum: `0` - `min` (optional): - Type: `number` - Minimum: `0` - `unit` (required): - Type: `string` - Maximum length: `40` - Minimum length: `1` - `valueType` (required): - Type: `string` - Constant: `units` - Type: `object` - Additional properties: `forbidden` - Properties: - `cadence` (required): - Type: `string` - Allowed values: `["recurring","one_time","unknown"]` - `condition` (required): - Type: `string` - Allowed values: `["target","guaranteed","discretionary","maximum_only","unspecified"]` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `interval` (required): - Type: `string` - Allowed values: `["year","month","week","day","hour","none","unknown"]` - `kind` (required): - Type: `string` - Allowed values: `["base_pay","ote","commission","cash_bonus","equity","employer_total"]` - `valueType` (required): - Type: `string` - Constant: `disclosure` - `evidence` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `fxObservedAt` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$` - Type: `null` - `hasBonus` (required): - Type: `boolean` - `hasCommission` (required): - Type: `boolean` - `hasEquity` (required): - Type: `boolean` - `scope` (required): - Type: `object` - Default: `{"kind":"unspecified"}` - oneOf: - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `global` - Type: `object` - Additional properties: `forbidden` - Properties: - `countryCode` (required): - Type: `string` - Allowed values: `["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]` - `kind` (required): - Type: `string` - Constant: `country` - Type: `object` - Additional properties: `forbidden` - Properties: - `adminAreaCode` (required): - Type: `string` - Pattern: `^[A-Z]{2}\.[A-Z0-9-]{1,12}$` - `kind` (required): - Type: `string` - Constant: `admin` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `metro` - `metroId` (required): - Type: `string` - Pattern: `^metro:[A-Za-z0-9][A-Za-z0-9._:-]{0,239}$` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `place` - `placeId` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` - Type: `object` - Additional properties: `forbidden` - Properties: - `kind` (required): - Type: `string` - Constant: `unspecified` - `source` (required): - Type: `string` - Allowed values: `["employer_feed","greenhouse_pay_transparency","structured_data","description"]` - `targetCashAnnualCurrency` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["AED","AFN","ALL","AMD","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BHD","BIF","BMD","BND","BOB","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHF","CLP","CNY","COP","CRC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SOS","SRD","SSP","STN","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","UYU","UZS","VES","VND","VUV","WST","XAF","XCD","XOF","XPF","YER","ZAR","ZMW","ZWG","BGN"]` - Type: `null` - `targetCashAnnualMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMax` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - `targetCashAnnualUsdMin` (required): - Type: `number | null` - anyOf: - Type: `number` - Minimum: `0` - Type: `null` - Type: `null` - `published_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `roles` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `schedules` (required): - Type: `string[]` - Maximum items: `2` - Items: - Type: `string` - Allowed values: `["full-time","part-time"]` - `source_updated_at` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `source_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["open","closed"]` - `title` (required): - Type: `string` - Maximum length: `300` - Minimum length: `1` - `tools` (required): - Type: `string[]` - Maximum items: `100` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `valid_through` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `date-time` - Pattern: `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$` - Type: `null` - `visa_sponsorship` (required): - Type: `string | null` - anyOf: - Type: `string` - Allowed values: `["available","unavailable"]` - Type: `null` - `work_arrangements` (required): - Type: `string[]` - Maximum items: `3` - Items: - Type: `string` - Allowed values: `["on_site","hybrid","remote"]` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### Charging metadata - Count path: `.` - Meter: `job_resource` - Model: `returned_resource` - Resource: `job` --- # List companies `GET /v0/companies` Returns a keyset-paginated list of active, commercially cleared companies with open jobs. Filters combine with AND across dimensions and OR within each repeated dimension. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `companies:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/companies" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" \ --get \ --data-urlencode "query=Acme" \ --data-urlencode "countries=GB" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/companies") url.searchParams.append("query", "Acme") url.searchParams.append("countries", "GB") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/companies", params=[ ("query", "Acme"), ("countries", "GB"), ], headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `query` `string` · query · optional Company-name query using case-insensitive substring and similarity matching. Normalized to Unicode NFC with folded whitespace; 1–200 characters. - Type: `string` - Description: Company-name query using case-insensitive substring and similarity matching. Normalized to Unicode NFC with folded whitespace; 1–200 characters. - Examples: `["Acme"]` - Maximum length: `200` - Minimum length: `1` Examples - example-1: `Acme` ### `countries` `string[]` · query · optional · style `form` · explode `true` Uppercase ISO 3166-1 alpha-2 country codes. Repeat the parameter to match any supplied country; maximum 50. - Type: `string[]` - Description: Uppercase ISO 3166-1 alpha-2 country codes. Repeat the parameter to match any supplied country; maximum 50. - Default: `[]` - Examples: `[["GB"]]` - Maximum items: `50` - Items: - Type: `string` - Pattern: `^[A-Z]{2}$` Examples - example-1: `["GB"]` ### `industries` `string[]` · query · optional · style `form` · explode `true` Stable industry codes assigned to the company from the versioned Luranta industry taxonomy. Repeat the parameter to match any supplied code; maximum 50. Discover values with GET /v0/taxonomies/industries. [Browse available values](/reference/getIndustryTaxonomy). - Type: `string[]` - Description: Stable industry codes assigned to the company from the versioned Luranta industry taxonomy. Repeat the parameter to match any supplied code; maximum 50. Discover values with GET /v0/taxonomies/industries. - Default: `[]` - Examples: `[["technology"]]` - Maximum items: `50` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` Examples - example-1: `["technology"]` ### `sort` `string` · query · optional Ordering field: name, open_jobs, or updated. Defaults to name. Available options: `name`, `open_jobs`, `updated`. - Type: `string` - Description: Ordering field: name, open_jobs, or updated. Defaults to name. - Allowed values: `["name","open_jobs","updated"]` - Default: `name` - Examples: `["name"]` Examples - example-1: `name` ### `direction` `string` · query · optional Sort direction for the selected ordering field. UUIDv7 ID breaks ties. Defaults to asc. Available options: `asc`, `desc`. - Type: `string` - Description: Sort direction for the selected ordering field. UUIDv7 ID breaks ties. Defaults to asc. - Allowed values: `["asc","desc"]` - Default: `asc` - Examples: `["asc"]` Examples - example-1: `asc` ### `cursor` `string` · query · optional Opaque keyset cursor from next_cursor. Reuse it with unchanged filters, sort, and direction; limit may change. Expires after 24 hours. - Type: `string` - Description: Opaque keyset cursor from next_cursor. Reuse it with unchanged filters, sort, and direction; limit may change. Expires after 24 hours. - Maximum length: `1000` - Minimum length: `1` ### `limit` `integer` · query · optional Maximum resources to return, from 1 to 100. Defaults to 20. - Type: `integer` - Description: Maximum resources to return, from 1 to 100. Defaults to 20. - Default: `20` - Examples: `[20]` - Maximum: `100` - Minimum: `1` Examples - example-1: `20` ## Responses ### 200 A page of matching companies. The list may be empty. #### Headers ##### `Luranta-Cost-USD` `string` · optional Credit consumed as a USD decimal string. Present only on successful billable responses. - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` ##### `Luranta-Credit-Balance-USD` `string` · optional Organisation credit remaining after settlement. Present only on successful billable responses. - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` ##### `Luranta-Resources-Returned` `integer` · optional Number of resources returned and charged. Present only on successful billable responses. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `CompanyList` - Component: [`CompanyList`](/reference/schemas#CompanyList) - Additional properties: `forbidden` - Properties: - `data` (required): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `industries` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `logo_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `merged_into_id` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - Type: `null` - `name` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `company` - `open_job_count` (required): - Type: `integer` - Maximum: `9007199254740991` - Minimum: `0` - `status` (required): - Type: `string` - Allowed values: `["active","inactive","merged"]` - `type` (required): - Type: `string` - Allowed values: `["company","brand","government","education","healthcare","nonprofit","partnership","agency","other"]` - `website_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `has_more` (required): - Type: `boolean` - `next_cursor` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `1000` - Type: `null` - `object` (required): - Type: `string` - Constant: `list` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ## Pagination - Allows page size change: `true` - Cursor ttl seconds: `86400` - Has more path: `has_more` - Items path: `data` - Next cursor path: `next_cursor` - Style: `keyset` ### Charging metadata - Count path: `data` - Meter: `company_resource` - Model: `returned_resource` - Resource: `company` --- # Retrieve a company `GET /v0/companies/{company_id}` Returns one commercially cleared company by UUIDv7, including inactive or merged lifecycle state when that company was previously published. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `companies:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/companies/company_id" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/companies/company_id") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/companies/company_id", headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `company_id` `string` · path · required UUIDv7 identifier of a commercially cleared company. - Type: `string` - Description: UUIDv7 identifier of a commercially cleared company. - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` ## Responses ### 200 The requested company. #### Headers ##### `Luranta-Cost-USD` `string` · optional Credit consumed as a USD decimal string. Present only on successful billable responses. - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` ##### `Luranta-Credit-Balance-USD` `string` · optional Organisation credit remaining after settlement. Present only on successful billable responses. - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` ##### `Luranta-Resources-Returned` `integer` · optional Number of resources returned and charged. Present only on successful billable responses. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `Company` - Component: [`Company`](/reference/schemas#Company) - Additional properties: `forbidden` - Properties: - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `industries` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `logo_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` - `merged_into_id` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - Type: `null` - `name` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `company` - `open_job_count` (required): - Type: `integer` - Maximum: `9007199254740991` - Minimum: `0` - `status` (required): - Type: `string` - Allowed values: `["active","inactive","merged"]` - `type` (required): - Type: `string` - Allowed values: `["company","brand","government","education","healthcare","nonprofit","partnership","agency","other"]` - `website_url` (required): - Type: `string | null` - anyOf: - Type: `string` - Format: `uri` - Maximum length: `2048` - Type: `null` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### Charging metadata - Count path: `.` - Meter: `company_resource` - Model: `returned_resource` - Resource: `company` --- # List locations `GET /v0/locations` Returns bounded location typeahead results. Empty catalogue requests are rejected; use a canonical location ID for exact retrieval. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/locations" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" \ --get \ --data-urlencode "query=london" \ --data-urlencode "limit=20" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/locations") url.searchParams.append("query", "london") url.searchParams.append("limit", "20") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/locations", params=[ ("query", "london"), ("limit", "20"), ], headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `query` `string` · query · required Case-insensitive typeahead text. At least 2 characters are required; empty catalogue dumps are not supported. - Type: `string` - Description: Case-insensitive typeahead text. At least 2 characters are required; empty catalogue dumps are not supported. - Examples: `["london"]` - Maximum length: `100` - Minimum length: `2` Examples - example-1: `london` ### `cursor` `string` · query · optional Opaque pagination cursor. - Type: `string` - Description: Opaque pagination cursor. - Maximum length: `1000` - Minimum length: `1` ### `limit` `integer` · query · optional Maximum resources to return, from 1 to 20. Defaults to 20. - Type: `integer` - Description: Maximum resources to return, from 1 to 20. Defaults to 20. - Default: `20` - Maximum: `20` - Minimum: `1` ### `type` `string` · query · optional Restrict results to one canonical location resource kind. - Type: `string` - Description: Restrict results to one canonical location resource kind. - Allowed values: `["region","country","admin","metro","city"]` - Examples: `["metro"]` Examples - example-1: `metro` ### `parent` `string` · query · optional Restrict results to locations contained by this canonical parent ID, such as country:GB or metro:oecd:GB:london. - Type: `string` - Description: Restrict results to locations contained by this canonical parent ID, such as country:GB or metro:oecd:GB:london. - Examples: `["country:GB"]` - Maximum length: `240` - Minimum length: `1` Examples - example-1: `country:GB` ## Responses ### 200 The requested catalogue resource. #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `LocationList` - Component: [`LocationList`](/reference/schemas#LocationList) - Additional properties: `forbidden` - Properties: - `data` (required): - Type: `object[]` - Maximum items: `20` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `id` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `kind` (required): - Type: `string` - Allowed values: `["region","country","admin","metro","city"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `location` - `parent_ids` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `240` - Minimum length: `1` - `has_more` (required): - Type: `boolean` - `next_cursor` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `1000` - Type: `null` - `object` (required): - Type: `string` - Constant: `list` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ## Pagination - Allows page size change: `true` - Cursor ttl seconds: `86400` - Has more path: `has_more` - Items path: `data` - Next cursor path: `next_cursor` - Style: `keyset` --- # Retrieve a location `GET /v0/locations/{id}` Returns one location resource by its canonical ID. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/locations/id" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/locations/id") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/locations/id", headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `id` `string` · path · required Canonical location resource ID. - Type: `string` - Description: Canonical location resource ID. - Maximum length: `240` - Minimum length: `1` ## Responses ### 200 The requested catalogue resource. #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `Location` - Component: [`Location`](/reference/schemas#Location) - Additional properties: `forbidden` - Properties: - `country` (required): - Type: `string | null` - anyOf: - Type: `string` - Pattern: `^[A-Z]{2}$` - Type: `null` - `id` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `kind` (required): - Type: `string` - Allowed values: `["region","country","admin","metro","city"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `location` - `parent_ids` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `240` - Minimum length: `1` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` --- # Get industry taxonomy `GET /v0/taxonomies/industries` Returns the complete immutable snapshot of the current Luranta industry taxonomy. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/taxonomies/industries" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/taxonomies/industries") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/taxonomies/industries", headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters This operation has no parameters. ## Responses ### 200 The current industry taxonomy snapshot. #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `TaxonomySnapshot` - Component: [`TaxonomySnapshot`](/reference/schemas#TaxonomySnapshot) - Additional properties: `forbidden` - Properties: - `entries` (required): - Type: `object[]` - Maximum items: `2000` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `aliases` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `boundary_notes` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `definition` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - Type: `null` - `kind` (required): - Type: `string` - Allowed values: `["family","specialism","sector"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `labels` (required): - Type: `object` - Additional property values: - Type: `string` - Maximum length: `240` - Minimum length: `1` - `parent_code` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `replaced_by` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["active","deprecated"]` - `id` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `object` (required): - Type: `string` - Constant: `taxonomy` - `revision` (required): - Type: `string` - Pattern: `^sha256:[a-f0-9]{64}$` - `version` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` --- # Get industry taxonomy version `GET /v0/taxonomies/industries/{version}` Returns an immutable version of the Luranta industry taxonomy. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/taxonomies/industries/version" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/taxonomies/industries/version") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/taxonomies/industries/version", headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `version` `string` · path · required Positive immutable taxonomy version. - Type: `string` - Description: Positive immutable taxonomy version. - Pattern: `^[1-9]\d*$` ## Responses ### 200 The requested industry taxonomy snapshot. #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `TaxonomySnapshot` - Component: [`TaxonomySnapshot`](/reference/schemas#TaxonomySnapshot) - Additional properties: `forbidden` - Properties: - `entries` (required): - Type: `object[]` - Maximum items: `2000` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `aliases` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `boundary_notes` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `definition` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - Type: `null` - `kind` (required): - Type: `string` - Allowed values: `["family","specialism","sector"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `labels` (required): - Type: `object` - Additional property values: - Type: `string` - Maximum length: `240` - Minimum length: `1` - `parent_code` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `replaced_by` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["active","deprecated"]` - `id` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `object` (required): - Type: `string` - Constant: `taxonomy` - `revision` (required): - Type: `string` - Pattern: `^sha256:[a-f0-9]{64}$` - `version` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` --- # Get role taxonomy `GET /v0/taxonomies/roles` Returns the complete immutable snapshot of the current Luranta role taxonomy. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/taxonomies/roles" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/taxonomies/roles") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/taxonomies/roles", headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters This operation has no parameters. ## Responses ### 200 The current role taxonomy snapshot. #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `TaxonomySnapshot` - Component: [`TaxonomySnapshot`](/reference/schemas#TaxonomySnapshot) - Additional properties: `forbidden` - Properties: - `entries` (required): - Type: `object[]` - Maximum items: `2000` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `aliases` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `boundary_notes` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `definition` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - Type: `null` - `kind` (required): - Type: `string` - Allowed values: `["family","specialism","sector"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `labels` (required): - Type: `object` - Additional property values: - Type: `string` - Maximum length: `240` - Minimum length: `1` - `parent_code` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `replaced_by` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["active","deprecated"]` - `id` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `object` (required): - Type: `string` - Constant: `taxonomy` - `revision` (required): - Type: `string` - Pattern: `^sha256:[a-f0-9]{64}$` - `version` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` --- # Get role taxonomy version `GET /v0/taxonomies/roles/{version}` Returns an immutable version of the Luranta role taxonomy. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/taxonomies/roles/version" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/taxonomies/roles/version") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/taxonomies/roles/version", headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `version` `string` · path · required Positive immutable taxonomy version. - Type: `string` - Description: Positive immutable taxonomy version. - Pattern: `^[1-9]\d*$` ## Responses ### 200 The requested role taxonomy snapshot. #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `TaxonomySnapshot` - Component: [`TaxonomySnapshot`](/reference/schemas#TaxonomySnapshot) - Additional properties: `forbidden` - Properties: - `entries` (required): - Type: `object[]` - Maximum items: `2000` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `aliases` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `boundary_notes` (required): - Type: `string[]` - Maximum items: `20` - Items: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `definition` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `2000` - Minimum length: `1` - Type: `null` - `kind` (required): - Type: `string` - Allowed values: `["family","specialism","sector"]` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `labels` (required): - Type: `object` - Additional property values: - Type: `string` - Maximum length: `240` - Minimum length: `1` - `parent_code` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `replaced_by` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - Type: `null` - `status` (required): - Type: `string` - Allowed values: `["active","deprecated"]` - `id` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `object` (required): - Type: `string` - Constant: `taxonomy` - `revision` (required): - Type: `string` - Pattern: `^sha256:[a-f0-9]{64}$` - `version` (required): - Type: `integer` - Exclusive minimum: `0` - Maximum: `9007199254740991` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` --- # List tools `GET /v0/tools` Returns bounded typeahead results for evolving tool and technology resources. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/tools" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" \ --get \ --data-urlencode "query=london" \ --data-urlencode "limit=20" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/tools") url.searchParams.append("query", "london") url.searchParams.append("limit", "20") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/tools", params=[ ("query", "london"), ("limit", "20"), ], headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `query` `string` · query · required Case-insensitive typeahead text. At least 2 characters are required; empty catalogue dumps are not supported. - Type: `string` - Description: Case-insensitive typeahead text. At least 2 characters are required; empty catalogue dumps are not supported. - Examples: `["london"]` - Maximum length: `100` - Minimum length: `2` Examples - example-1: `london` ### `cursor` `string` · query · optional Opaque pagination cursor. - Type: `string` - Description: Opaque pagination cursor. - Maximum length: `1000` - Minimum length: `1` ### `limit` `integer` · query · optional Maximum resources to return, from 1 to 20. Defaults to 20. - Type: `integer` - Description: Maximum resources to return, from 1 to 20. Defaults to 20. - Default: `20` - Maximum: `20` - Minimum: `1` ## Responses ### 200 The requested catalogue resource. #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `ToolList` - Component: [`ToolList`](/reference/schemas#ToolList) - Additional properties: `forbidden` - Properties: - `data` (required): - Type: `object[]` - Maximum items: `20` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `tool` - `has_more` (required): - Type: `boolean` - `next_cursor` (required): - Type: `string | null` - anyOf: - Type: `string` - Maximum length: `1000` - Type: `null` - `object` (required): - Type: `string` - Constant: `list` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ## Pagination - Allows page size change: `true` - Cursor ttl seconds: `86400` - Has more path: `has_more` - Items path: `data` - Next cursor path: `next_cursor` - Style: `keyset` --- # Retrieve a tool `GET /v0/tools/{code}` Returns one tool resource by its stable code. ## Authentication `bearerAuth` (http bearer) — Organisation API key supplied only through the Authorization header. Required scopes: `catalogues:read`. ## Request ### cURL ```shell curl --request GET \ --url "https://api.luranta.com/v0/tools/code" \ --header "Authorization: Bearer $LURANTA_API_KEY" \ --header "Accept: application/json" ``` ### TypeScript ```ts const url = new URL("https://api.luranta.com/v0/tools/code") const response = await fetch(url, { headers: { Authorization: `Bearer ${process.env.LURANTA_API_KEY}`, }, }) const result = await response.json() ``` ### Python ```python import os import requests response = requests.get( "https://api.luranta.com/v0/tools/code", headers={"Authorization": f"Bearer {os.environ['LURANTA_API_KEY']}"}, timeout=30, ) response.raise_for_status() result = response.json() ``` ## Parameters ### `code` `string` · path · required Stable tool resource code. - Type: `string` - Description: Stable tool resource code. - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` ## Responses ### 200 The requested catalogue resource. #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/json - Type: `Tool` - Component: [`Tool`](/reference/schemas#Tool) - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `160` - Minimum length: `1` - Pattern: `^[a-z0-9]+(?:[-_.][a-z0-9]+)*$` - `label` (required): - Type: `string` - Maximum length: `240` - Minimum length: `1` - `object` (required): - Type: `string` - Constant: `tool` ### 400 The request contains an invalid parameter, parameter combination, or cursor. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 401 The organisation API key is missing, invalid, expired, or revoked. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 402 The organisation does not have enough credit to reserve this operation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 403 The authenticated organisation lacks the required scope, or the browser origin is not allowed. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 404 The requested resource does not exist or is not available to this organisation. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 408 The server did not complete the request in time. This failure is non-billable and may be retried. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 429 The organisation request rate was exceeded. Retry after the indicated delay. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` ### 503 The service or durable usage settlement is temporarily unavailable. This failure is non-billable. This response uses [Problem Details](/reference/problem-details). #### Headers ##### `Cache-Control` `string` · required Public cache policy for the bounded catalogue response. - Type: `string` ##### `ETag` `string` · required Strong representation validator for conditional GET requests. - Type: `string` ##### `Retry-After` `integer` · optional Minimum number of seconds before retrying when supplied. - Type: `integer` - Minimum: `0` ##### `traceparent` `string` · required W3C trace context generated for this request attempt. - Type: `string` - Pattern: `^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$` ##### `X-Request-Id` `string` · required Unique UUIDv7 identifier for this request attempt. - Type: `string` - Format: `uuid` #### application/problem+json Errors follow [Problem Details](/reference/problem-details). - Type: `ProblemDetails` - Component: [`ProblemDetails`](/reference/problem-details) - Additional properties: `forbidden` - Properties: - `available_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `detail` (required): - Type: `string` - Maximum length: `1000` - Minimum length: `1` - `errors` (optional): - Type: `object[]` - Maximum items: `100` - Items: - Type: `object` - Additional properties: `forbidden` - Properties: - `code` (required): - Type: `string` - Maximum length: `80` - Minimum length: `1` - `message` (required): - Type: `string` - Maximum length: `500` - Minimum length: `1` - `pointer` (required): - Type: `string` - Pattern: `^\/.*` - `instance` (required): - Type: `string` - Pattern: `^\/.*` - `param` (optional): - Type: `string` - Maximum length: `160` - Minimum length: `1` - `request_id` (required): - Type: `string` - Format: `uuid` - Pattern: `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-7[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$` - `required_credit_usd` (optional): - Type: `string` - Pattern: `^(?:0|[1-9]\d*)\.\d{2,6}$` - `retryable` (required): - Type: `boolean` - `status` (required): - Type: `integer` - Maximum: `599` - Minimum: `400` - `title` (required): - Type: `string` - Maximum length: `120` - Minimum length: `1` - `top_up_url` (optional): - Type: `string` - Format: `uri` - Maximum length: `2048` - `type` (required): - Type: `string` - Format: `uri` - Maximum length: `2048` --- # Changelog ## 2026-07-30 — v0 paid beta `API` · `TypeScript SDK` · `Python SDK` · `Documentation` Prepared the pre-release v0 read-only Jobs, Companies, and Reference Data contract, canonical OpenAPI 3.1.2 definition, generated SDKs, and developer documentation for paid beta.