Himalayas · Schema

JobsResponse

Remote JobsAI ToolsJob SearchCareersTechnology

Properties

Name Type Description
comments string Release notes or changelog for the Himalayas API
updatedAt integer Unix timestamp (seconds) of the most recently updated job in the response
nextCursor string Opaque cursor for the next page. Pass it back as the `cursor` query parameter. Omitted on the last page: its absence is how you know the walk is finished. Browse endpoint only.
offset integer The offset used in this request (deprecated; prefer cursor)
limit integer The limit used in this request
totalCount integer Approximate number of matching jobs, for display only. For the browse endpoint this is the count of all active remote jobs; for the search endpoint it is the count of jobs matching the active filters
jobs array
View JSON Schema on GitHub

JSON Schema

himalayas-app-jobs-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/himalayas-app/json-schema/himalayas-app-jobs-response-schema.json",
  "title": "JobsResponse",
  "x-generated": "2026-11-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_original/himalayas-app-api-openapi.json#/components/schemas/JobsResponse",
  "type": "object",
  "required": [
    "updatedAt",
    "offset",
    "limit",
    "totalCount",
    "jobs"
  ],
  "properties": {
    "comments": {
      "type": "string",
      "description": "Release notes or changelog for the Himalayas API"
    },
    "updatedAt": {
      "type": "integer",
      "description": "Unix timestamp (seconds) of the most recently updated job in the response"
    },
    "nextCursor": {
      "type": "string",
      "description": "Opaque cursor for the next page. Pass it back as the `cursor` query parameter. Omitted on the last page: its absence is how you know the walk is finished. Browse endpoint only."
    },
    "offset": {
      "type": "integer",
      "description": "The offset used in this request (deprecated; prefer cursor)"
    },
    "limit": {
      "type": "integer",
      "description": "The limit used in this request"
    },
    "totalCount": {
      "type": "integer",
      "description": "Approximate number of matching jobs, for display only. For the browse endpoint this is the count of all active remote jobs; for the search endpoint it is the count of jobs matching the active filters and can be up to a day old. Do not use it to decide when to stop paging: on browse, stop when a response has no nextCursor; on search, stop at the first page that returns no jobs."
    },
    "jobs": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/Job"
      }
    }
  },
  "$defs": {
    "Job": {
      "type": "object",
      "required": [
        "title",
        "excerpt",
        "companyName",
        "companySlug",
        "companyLogo",
        "employmentType",
        "seniority",
        "currency",
        "salaryPeriod",
        "locationRestrictions",
        "timezoneRestrictions",
        "categories",
        "parentCategories",
        "description",
        "pubDate",
        "expiryDate",
        "applicationLink",
        "guid"
      ],
      "properties": {
        "title": {
          "type": "string",
          "description": "Job title"
        },
        "excerpt": {
          "type": "string",
          "description": "Short summary of the job (first few sentences of the description)"
        },
        "companyName": {
          "type": "string",
          "description": "Name of the hiring company"
        },
        "companySlug": {
          "type": "string",
          "description": "Canonical company slug for filtering and stable lookups"
        },
        "companyLogo": {
          "type": "string",
          "format": "uri",
          "description": "URL of the company logo image"
        },
        "employmentType": {
          "type": "string",
          "description": "Type of employment. 'Contractor' includes freelance and contract roles.",
          "enum": [
            "Full Time",
            "Part Time",
            "Contractor",
            "Temporary",
            "Intern",
            "Volunteer",
            "Other"
          ]
        },
        "minSalary": {
          "type": [
            "number",
            "null"
          ],
          "description": "Minimum salary in the pay period specified by salaryPeriod (default annual), in the currency field. Null if not disclosed."
        },
        "maxSalary": {
          "type": [
            "number",
            "null"
          ],
          "description": "Maximum salary in the pay period specified by salaryPeriod (default annual), in the currency field. Null if not disclosed."
        },
        "seniority": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "Entry-level",
              "Mid-level",
              "Senior",
              "Manager",
              "Director",
              "Executive"
            ]
          },
          "description": "Required seniority levels. A job may accept multiple levels (e.g., both Mid-level and Senior)."
        },
        "currency": {
          "type": "string",
          "description": "ISO 4217 currency code for the salary",
          "enum": [
            "USD",
            "AUD",
            "EUR",
            "JPY",
            "GBP",
            "CAD",
            "CHF",
            "CNY",
            "HKD",
            "NZD",
            "SGD",
            "SEK",
            "KRW",
            "NOK",
            "INR",
            "MXN",
            "TWD",
            "ZAR",
            "BRL",
            "IDR",
            "PHP",
            "THB",
            "CLP",
            "CZK",
            "DKK",
            "HUF",
            "ILS",
            "TRY",
            "PLN"
          ]
        },
        "locationRestrictions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Location"
          },
          "description": "Countries where candidates must be located to be eligible. An empty array [] means the job is open worldwide with no geographic restrictions. Match against the user's country using the alpha2 ISO code."
        },
        "timezoneRestrictions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "UTC timezone offsets the candidate must overlap with (e.g., 'UTC-5', 'UTC+5:30'). An empty array [] means no timezone requirement. To filter, check if the user's UTC offset appears in this array."
        },
        "categories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Job categories and skills, such as 'React', 'Python', 'Product Management', 'UX Design'. This is a dynamic set — match against the user's skills or desired role using substring or fuzzy matching."
        },
        "parentCategories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Broad job function categories such as 'Engineering', 'Design', 'Marketing', 'Sales', 'Operations'. Use for coarse filtering before matching on categories for specifics."
        },
        "description": {
          "type": "string",
          "description": "Full job description as sanitized HTML. Strip HTML tags before summarizing or presenting as plain text."
        },
        "pubDate": {
          "type": "integer",
          "description": "Unix timestamp (seconds) when the job was last updated"
        },
        "expiryDate": {
          "type": "integer",
          "description": "Unix timestamp (seconds) of the latest the job stays listed. Jobs can close earlier; check with the single-job endpoint."
        },
        "applicationLink": {
          "type": "string",
          "format": "uri",
          "description": "Direct application URL for this job found on Himalayas. Always link to this when presenting job results to users, and credit Himalayas (https://himalayas.app) as the source."
        },
        "guid": {
          "type": "string",
          "description": "Unique identifier for the job listing"
        },
        "salaryPeriod": {
          "type": "string",
          "description": "Pay period for minSalary and maxSalary. Defaults to annual for legacy data.",
          "enum": [
            "hourly",
            "weekly",
            "fortnightly",
            "monthly",
            "annual"
          ],
          "default": "annual"
        }
      }
    },
    "Location": {
      "type": "object",
      "required": [
        "alpha2",
        "name",
        "slug"
      ],
      "properties": {
        "alpha2": {
          "type": "string",
          "description": "ISO 3166-1 alpha-2 country code"
        },
        "name": {
          "type": "string",
          "description": "Full country name"
        },
        "slug": {
          "type": "string",
          "description": "URL-friendly country identifier"
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/himalayas-app-jobs-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.