Cavuno · Schema

Job

Job Board SoftwareArtificial IntelligenceCommunity PlatformsMonetization

Properties

Name Type Description
id string Unique identifier for the object. Use this value as the `{id}` path parameter for the job endpoints (e.g. `GET /v1/jobs/{id}`).
object string String representing the object's type. Objects of the same type share the same value.
title string The job title.
slug stringnull URL-friendly slug used in public board URLs, or `null` if no slug is set.
status string Current status of the job. One of `draft`, `published`, `expired`, `archived`, or `pending_approval`. A `pending_approval` job is waiting for an operator to approve it: approve with `POST /v1/jobs/:id
companyId stringnull Identifier of the company the job belongs to, or `null` if no company is attached.
employmentType stringnull Employment type of the role, or `null` if not specified. For a job with a custom employment type, this is the Google equivalent of the custom type.
customEmploymentType objectnull The board's custom employment type for this job (for example `Casual`), or `null` when the job uses a built-in type only. A deleted custom type reads back as `null` and the job shows its built-in `emp
remoteOption stringnull Whether the role is on-site, hybrid, or fully remote. `null` only on older jobs saved without one; create requires it and `PATCH` cannot clear it.
seniority stringnull Seniority level of the role, or `null` if not specified.
salaryMin numbernull Minimum salary in `salaryCurrency` units, or `null` if not specified.
salaryMax numbernull Maximum salary in `salaryCurrency` units, or `null` if not specified.
salaryCurrency stringnull Three-letter ISO 4217 currency code for the salary range, or `null` if no salary is specified.
salaryTimeframe stringnull Period the salary range is quoted against, or `null` if no salary is specified.
isFeatured boolean Whether the job appears in featured slots on the public board.
publishedAt stringnull Time at which the job was first published, or `null` if not yet published. ISO 8601 datetime.
expiresAt stringnull Time at which the job expires as an ISO 8601 datetime. `null` can appear when the expiry requirement does not apply, including for drafts and sponsored jobs; ordinary published jobs always have an exp
createdAt string Time at which the job was created. ISO 8601 datetime.
updatedAt string Time at which the job was last updated. ISO 8601 datetime.
revision integer Monotonic Job lifecycle revision used to reconcile webhook events. Legacy rows are 0 until the rollout backfill runs.
skills array Canonical skill slugs assigned to the job.
categories array Canonical category slugs assigned to the job.
externalId stringnull External identifier supplied by the caller on create, used for deduplication via `GET /v1/jobs?externalId=...`. `null` when no external identifier was set.
customFieldValues object Board-defined custom-field values for this job, keyed by the field `key` (the definitions are published at `GET /v1/settings/job-form`). Each value is returned as stored: a string (`short_text` / `lon
collectionValues object Operator-facing collection record IDs keyed by job collection field. Always an object; values are arrays even for single-select fields. Fields whose collection is archived are omitted.
proposedCompany objectnull Present only while the job has no company: the company the job's source names, which isn't on your board yet. Read-only. Publishing the job (`POST /jobs/{id}/publish`) adds this company to your board,
companyLocked boolean `true` once an operator has changed the job's company (in the dashboard or with `companyId` on `PATCH /jobs/{id}`). A locked job keeps its company when the job's source refreshes or republishes it, ev
links object Public + admin URLs for this job. `public` may be `null` if the job lacks a slug or company-slug.
resolvedCollectionFields array Collection selections resolved to current live names, logos, and public record details.
description stringnull Long-form description of the role (HTML), or `null` if not specified.
applicationUrl stringnull Where candidates apply, or `null` if not specified. An HTTPS URL or `mailto:` URI.
remotePermits array Hierarchical permit selection authored by the caller. Lossless round-trip with the input: `[{type:"world_region",value:"EMEA"}]` goes in and comes out the same. The three `remoteWorkPermit*` and `remo
remoteWorldwide booleannull Read-only: derived from `remotePermits`. `true` only when the authored selection is a single `{type:"worldwide"}` entry.
remoteTimezones array Hierarchical timezone selection. Lossless round-trip with the authored input. When omitted on POST, the server auto-derives this from `remotePermits` (or `[{all,all}]` if neither was provided). PATCH
remoteAllowedTzOffsets array Read-only: derived from `remoteTimezones` (per-country/per-region offset fan-out). UTC hour offsets used by the job-search index.
remoteWorkPermitCountryCodes array Read-only: derived from `remotePermits` (hierarchical groups fan out to alpha2 sets; subdivisions auto-add the parent country). ISO 3166-1 alpha-2 codes.
remoteWorkPermitSubdivisionCodes array Read-only: derived from `remotePermits` (subdivision entries only). ISO 3166-2 codes.
remoteSponsorship string Whether the employer sponsors visas for remote candidates. One of `yes`, `no`, or `unknown`.
educationRequirements array Required education credentials. Each value is one of `high_school`, `associate_degree`, `bachelor_degree`, `professional_certificate`, `postgraduate_degree`, or `no_requirements`.
experienceMonths numbernull Minimum required experience in months, or `null` if not specified.
experienceInPlaceOfEducation booleannull If `true`, equivalent experience may substitute for the listed education requirements. `null` if not specified.
inOfficePeriod stringnull Period denominator for `inOfficeFrequency`, or `null` if not specified.
inOfficeFrequency numbernull How often the candidate must be in-office over `inOfficePeriod`, or `null` if not specified.
company object
officeLocations array Physical office locations associated with the job.
View JSON Schema on GitHub

JSON Schema

cavuno-com-job-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/cavuno-com/json-schema/cavuno-com-job-schema.json",
  "title": "Job",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/cavuno-com-openapi.json#/components/schemas/Job",
  "allOf": [
    {
      "$ref": "#/$defs/JobSummary"
    },
    {
      "type": "object",
      "properties": {
        "links": {
          "allOf": [
            {
              "$ref": "#/$defs/ResourceLinks"
            },
            {
              "type": "object",
              "properties": {
                "public": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "uri",
                  "description": "Canonical public URL for this job, or `null` when the job has no slug or no associated company slug (so a stable URL cannot be assembled)."
                }
              }
            }
          ],
          "description": "Public + admin URLs for this job. `public` may be `null` if the job lacks a slug or company-slug."
        },
        "resolvedCollectionFields": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ResolvedJobCollectionField"
          },
          "description": "Collection selections resolved to current live names, logos, and public record details."
        },
        "description": {
          "type": [
            "string",
            "null"
          ],
          "description": "Long-form description of the role (HTML), or `null` if not specified."
        },
        "applicationUrl": {
          "type": [
            "string",
            "null"
          ],
          "description": "Where candidates apply, or `null` if not specified. An HTTPS URL or `mailto:` URI."
        },
        "remotePermits": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string"
              },
              "value": {
                "type": "string"
              },
              "code": {
                "type": "string",
                "description": "UN M.49 area code of a `continent`, `region` or `subregion` entry (e.g. `\"150\"` for Europe, `\"019\"` for the Americas, `\"155\"` for Western Europe). It is a code `Intl.DisplayNames` with `type: \"region\"` accepts, so a client can name the area in any language: `new Intl.DisplayNames([\"de\"], { type: \"region\" }).of(\"150\")` is `\"Europa\"`. Absent for areas without a standard code (e.g. \"Central Europe\"), for `world_region` and `custom` entries, and for `country` and `subdivision` entries, whose `value` is already an ISO 3166-1 alpha-2 or ISO 3166-2 code."
              }
            },
            "required": [
              "type",
              "value"
            ]
          },
          "description": "Hierarchical permit selection authored by the caller. Lossless round-trip with the input: `[{type:\"world_region\",value:\"EMEA\"}]` goes in and comes out the same. The three `remoteWorkPermit*` and `remoteWorldwide` fields below are read-only derived projections of this list."
        },
        "remoteWorldwide": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "Read-only: derived from `remotePermits`. `true` only when the authored selection is a single `{type:\"worldwide\"}` entry."
        },
        "remoteTimezones": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string"
              },
              "value": {
                "type": "string"
              },
              "plusMinus": {
                "type": "number"
              }
            },
            "required": [
              "type",
              "value"
            ]
          },
          "description": "Hierarchical timezone selection. Lossless round-trip with the authored input. When omitted on POST, the server auto-derives this from `remotePermits` (or `[{all,all}]` if neither was provided). PATCH never auto-re-derives: once set, only an explicit replacement updates the stored value. The flat `remoteAllowedTzOffsets` field below is the read-only derived projection used by search."
        },
        "remoteAllowedTzOffsets": {
          "type": "array",
          "items": {
            "type": "number"
          },
          "description": "Read-only: derived from `remoteTimezones` (per-country/per-region offset fan-out). UTC hour offsets used by the job-search index."
        },
        "remoteWorkPermitCountryCodes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Read-only: derived from `remotePermits` (hierarchical groups fan out to alpha2 sets; subdivisions auto-add the parent country). ISO 3166-1 alpha-2 codes."
        },
        "remoteWorkPermitSubdivisionCodes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Read-only: derived from `remotePermits` (subdivision entries only). ISO 3166-2 codes."
        },
        "remoteSponsorship": {
          "type": "string",
          "enum": [
            "yes",
            "no",
            "unknown"
          ],
          "description": "Whether the employer sponsors visas for remote candidates. One of `yes`, `no`, or `unknown`."
        },
        "educationRequirements": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "high_school",
              "associate_degree",
              "bachelor_degree",
              "professional_certificate",
              "postgraduate_degree",
              "no_requirements"
            ]
          },
          "description": "Required education credentials. Each value is one of `high_school`, `associate_degree`, `bachelor_degree`, `professional_certificate`, `postgraduate_degree`, or `no_requirements`."
        },
        "experienceMonths": {
          "type": [
            "number",
            "null"
          ],
          "description": "Minimum required experience in months, or `null` if not specified."
        },
        "experienceInPlaceOfEducation": {
          "type": [
            "boolean",
            "null"
          ],
          "description": "If `true`, equivalent experience may substitute for the listed education requirements. `null` if not specified."
        },
        "inOfficePeriod": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "per_week",
            "per_month",
            "per_year"
          ],
          "description": "Period denominator for `inOfficeFrequency`, or `null` if not specified."
        },
        "inOfficeFrequency": {
          "type": [
            "number",
            "null"
          ],
          "description": "How often the candidate must be in-office over `inOfficePeriod`, or `null` if not specified."
        },
        "company": {
          "$ref": "#/$defs/JobCompany"
        },
        "officeLocations": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/JobOfficeLocation"
          },
          "description": "Physical office locations associated with the job."
        }
      },
      "required": [
        "resolvedCollectionFields",
        "description",
        "applicationUrl",
        "remotePermits",
        "remoteWorldwide",
        "remoteTimezones",
        "remoteAllowedTzOffsets",
        "remoteWorkPermitCountryCodes",
        "remoteWorkPermitSubdivisionCodes",
        "remoteSponsorship",
        "educationRequirements",
        "experienceMonths",
        "experienceInPlaceOfEducation",
        "inOfficePeriod",
        "inOfficeFrequency",
        "company",
        "officeLocations"
      ]
    }
  ],
  "$defs": {
    "AdminOnlyResourceLinks": {
      "type": "object",
      "properties": {
        "admin": {
          "type": "string",
          "format": "uri",
          "description": "URL inside the Cavuno app where the authenticated owner can manage this resource."
        }
      },
      "required": [
        "admin"
      ],
      "description": "Links related to this resource. List responses carry the operator URL; detail responses may also carry the public URL."
    },
    "JobCompany": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the company."
        },
        "name": {
          "type": [
            "string",
            "null"
          ],
          "description": "Display name of the company, or `null` if not yet set."
        },
        "slug": {
          "type": [
            "string",
            "null"
          ],
          "description": "URL slug of the company, or `null` if not yet set."
        },
        "logoUrl": {
          "type": [
            "string",
            "null"
          ],
          "description": "URL of the company logo, or `null` if no logo is set."
        },
        "website": {
          "type": [
            "string",
            "null"
          ],
          "description": "Company website URL, or `null` if no website is set."
        }
      },
      "required": [
        "id",
        "name",
        "slug",
        "logoUrl",
        "website"
      ],
      "description": "Embedded company resource for the job, or `null` if no company is attached."
    },
    "JobOfficeLocation": {
      "type": "object",
      "properties": {
        "countryCode": {
          "type": [
            "string",
            "null"
          ],
          "description": "ISO 3166-1 alpha-2 country code, or `null` if the location was not resolved."
        },
        "country": {
          "type": [
            "string",
            "null"
          ],
          "description": "Full country name, or `null` if the location was not resolved."
        },
        "locality": {
          "type": [
            "string",
            "null"
          ],
          "description": "Neighborhood or sub-locality, or `null` if not resolved."
        },
        "city": {
          "type": [
            "string",
            "null"
          ],
          "description": "City, or `null` if not resolved."
        },
        "region": {
          "type": [
            "string",
            "null"
          ],
          "description": "Region, state, or province name, or `null` if not resolved."
        },
        "regionCode": {
          "type": [
            "string",
            "null"
          ],
          "description": "Region or state code (e.g. `CA` for California), or `null` if not resolved."
        },
        "postalCode": {
          "type": [
            "string",
            "null"
          ],
          "description": "Postal or ZIP code, or `null` if not resolved."
        },
        "displayName": {
          "type": [
            "string",
            "null"
          ],
          "description": "Pre-formatted display name for the location, or `null` if not resolved."
        }
      },
      "required": [
        "countryCode",
        "country",
        "locality",
        "city",
        "region",
        "regionCode",
        "postalCode",
        "displayName"
      ]
    },
    "JobSummary": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the object. Use this value as the `{id}` path parameter for the job endpoints (e.g. `GET /v1/jobs/{id}`)."
        },
        "object": {
          "type": "string",
          "enum": [
            "job"
          ],
          "description": "String representing the object's type. Objects of the same type share the same value."
        },
        "title": {
          "type": "string",
          "description": "The job title."
        },
        "slug": {
          "type": [
            "string",
            "null"
          ],
          "description": "URL-friendly slug used in public board URLs, or `null` if no slug is set."
        },
        "status": {
          "type": "string",
          "enum": [
            "draft",
            "published",
            "expired",
            "archived",
            "pending_approval"
          ],
          "description": "Current status of the job. One of `draft`, `published`, `expired`, `archived`, or `pending_approval`. A `pending_approval` job is waiting for an operator to approve it: approve with `POST /v1/jobs/:id/publish`, reject with `DELETE /v1/jobs/:id`. It is not public, like a draft."
        },
        "companyId": {
          "type": [
            "string",
            "null"
          ],
          "description": "Identifier of the company the job belongs to, or `null` if no company is attached."
        },
        "employmentType": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "full_time",
            "part_time",
            "contract",
            "internship",
            "temporary",
            "volunteer",
            "other"
          ],
          "description": "Employment type of the role, or `null` if not specified. For a job with a custom employment type, this is the Google equivalent of the custom type."
        },
        "customEmploymentType": {
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "key": {
              "type": "string",
              "description": "Stable key of the custom employment type. Never changes."
            },
            "label": {
              "type": "string",
              "description": "Display name of the custom employment type, as configured."
            }
          },
          "required": [
            "key",
            "label"
          ],
          "description": "The board's custom employment type for this job (for example `Casual`), or `null` when the job uses a built-in type only. A deleted custom type reads back as `null` and the job shows its built-in `employmentType`."
        },
        "remoteOption": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "on_site",
            "hybrid",
            "remote"
          ],
          "description": "Whether the role is on-site, hybrid, or fully remote. `null` only on older jobs saved without one; create requires it and `PATCH` cannot clear it."
        },
        "seniority": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "entry_level",
            "associate",
            "mid_level",
            "senior",
            "lead",
            "principal",
            "director",
            "executive"
          ],
          "description": "Seniority level of the role, or `null` if not specified."
        },
        "salaryMin": {
          "type": [
            "number",
            "null"
          ],
          "description": "Minimum salary in `salaryCurrency` units, or `null` if not specified."
        },
        "salaryMax": {
          "type": [
            "number",
            "null"
          ],
          "description": "Maximum salary in `salaryCurrency` units, or `null` if not specified."
        },
        "salaryCurrency": {
          "type": [
            "string",
            "null"
          ],
          "description": "Three-letter ISO 4217 currency code for the salary range, or `null` if no salary is specified."
        },
        "salaryTimeframe": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "per_year",
            "per_month",
            "per_week",
            "per_day",
            "per_hour"
          ],
          "description": "Period the salary range is quoted against, or `null` if no salary is specified."
        },
        "isFeatured": {
          "type": "boolean",
          "description": "Whether the job appears in featured slots on the public board."
        },
        "publishedAt": {
          "type": [
            "string",
            "null"
          ],
          "description": "Time at which the job was first published, or `null` if not yet published. ISO 8601 datetime."
        },
        "expiresAt": {
          "type": [
            "string",
            "null"
          ],
          "description": "Time at which the job expires as an ISO 8601 datetime. `null` can appear when the expiry requirement does not apply, including for drafts and sponsored jobs; ordinary published jobs always have an expiry."
        },
        "createdAt": {
          "type": "string",
          "description": "Time at which the job was created. ISO 8601 datetime."
        },
        "updatedAt": {
          "type": "string",
          "description": "Time at which the job was last updated. ISO 8601 datetime."
        },
        "revision": {
          "type": "integer",
          "minimum": 0,
          "description": "Monotonic Job lifecycle revision used to reconcile webhook events. Legacy rows are 0 until the rollout backfill runs."
        },
        "skills": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Canonical skill slugs assigned to the job."
        },
        "categories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Canonical category slugs assigned to the job."
        },
        "externalId": {
          "type": [
            "string",
            "null"
          ],
          "description": "External identifier supplied by the caller on create, used for deduplication via `GET /v1/jobs?externalId=...`. `null` when no external identifier was set."
        },
        "customFieldValues": {
          "type": "object",
          "additionalProperties": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              {
                "type": "boolean"
              },
              {
                "type": "number"
              }
            ]
          },
          "description": "Board-defined custom-field values for this job, keyed by the field `key` (the definitions are published at `GET /v1/settings/job-form`). Each value is returned as stored: a string (`short_text` / `long_text` / a `single_select` option key), a string array (`multi_select` option keys), a boolean, or a number. Always an object: `{}` when the job has no custom-field values, never `null` or a missing field. Only real values are stored, so this never contains `null` or empty values."
        },
        "collectionValues": {
          "type": "object",
          "additionalProperties": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 100
          },
          "description": "Operator-facing collection record IDs keyed by job collection field. Always an object; values are arrays even for single-select fields. Fields whose collection is archived are omitted."
        },
        "proposedCompany": {
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "name": {
              "type": "string",
              "description": "Name of the proposed company."
            },
            "website": {
              "type": [
                "string",
                "null"
              ],
              "description": "Website URL of the proposed company, or `null` if the source gives none."
            }
          },
          "required": [
            "name",
            "website"
          ],
          "description": "Present only while the job has no company: the company the job's source names, which isn't on your board yet. Read-only. Publishing the job (`POST /jobs/{id}/publish`) adds this company to your board, or uses an existing company with the same website. To publish under a different company, set `companyId` first with `PATCH /jobs/{id}`. `null` when the job has a company."
        },
        "companyLocked": {
          "type": "boolean",
          "description": "`true` once an operator has changed the job's company (in the dashboard or with `companyId` on `PATCH /jobs/{id}`). A locked job keeps its company when the job's source refreshes or republishes it, even when the source names another company. Read-only."
        },
        "links": {
          "$ref": "#/$defs/AdminOnlyResourceLinks"
        }
      },
      "required": [
        "id",
        "object",
        "title",
        "slug",
        "status",
        "companyId",
        "employmentType",
        "customEmploymentType",
        "remoteOption",
        "seniority",
        "salaryMin",
        "salaryMax",
        "salaryCurrency",
        "salaryTimeframe",
        "isFeatured",
        "publishedAt",
        "expiresAt",
        "createdAt",
        "updatedAt",
        "revision",
        "skills",
        "categories",
        "externalId",
        "customFieldValues",
        "collectionValues",
        "proposedCompany",
        "companyLocked",
        "links"
      ]
    },
    "ResolvedJobCollectionField": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string"
        },
        "label": {
          "type": "string"
        },
        "entries": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "slug": {
                "type": "string",
                "description": "URL-safe identifier, unique within the collection. Changing it keeps the previous value reserved."
              },
              "logoUrl": {
                "type": "string",
                "description": "The entry's logo: the image in the collection's logo field, or a legacy logo URL on older entries. Absent when the entry has neither."
              },
              "title": {
                "type": "string",
                "description": "The entry's title on this job: the job's `titleOverride` when set, otherwise the entry name. Render this."
              },
              "description": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "The entry's description on this job: the job's `descriptionOverride` when set, otherwise the value of the field's default description field, or `null` when neither exists. Sanitised HTML when the default description field is rich text, with a plain-text override escaped into paragraphs. Render this."
              },
              "titleOverride": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "The title this job set for the entry, or `null` when it uses the entry name."
              },
              "descriptionOverride": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "The plain-text description this job set for the entry, or `null` when it uses the default description."
              },
              "fields": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "key": {
                      "type": "string"
                    },
                    "label": {
                      "type": "string"
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "short_text",
                        "long_text",
                        "rich_text",
                        "single_select",
                        "multi_select",
                        "boolean",
                        "number",
                        "date",
                        "url",
                        "email",
                        "phone",
                        "image",
                        "image_gallery",
                        "file",
                        "reference"
                      ]
                    },
                    "helpText": {
                      "type": "string"
                    },
                    "options": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "key": {
                            "type": "string"
                          },
                          "label": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "key",
                          "label"
                        ]
                      }
                    }
                  },
                  "required": [
                    "key",
                    "label",
                    "type"
                  ]
                }
              },
              "values": {
                "type": "object",
                "additionalProperties": {
                  "anyOf": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    {
                      "type": "boolean"
                    },
                    {
                      "type": "number"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        },
                        "contentType": {
                          "type": "string"
                        },
                        "sizeBytes": {
                          "type": "number"
                        },
                        "url": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "id",
                        "name",
                        "contentType",
                        "sizeBytes",
                        "url"
                      ]
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "contentType": {
                            "type": "string"
                          },
                          "sizeBytes": {
                            "type": "number"
                          },
                          "url": {
                            "type": "string"
                          }
                        },
                        "required": [
                          "id",
                          "name",
                          "contentType",
                          "sizeBytes",
                          "url"
                        ]
                      }
                    }
                  ]
                }
              },
              "references": {
                "type": "object",
                "additionalProperties": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string"
                      },
                      "name": {
                        "type": "string"
                      },
                      "slug": {
                        "type": "string",
                        "description": "URL-safe identifier, unique within the collection. Changing it keeps the previous value reserved."
                      },
                      "fields": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "properties": {
                            "key": {
                              "type": "string"
                            },
                            "label": {
                              "type": "string"
                            },
                            "type": {
                              "type": "string",
                              "enum": [
                                "short_text",
                                "long_text",
                                "rich_text",
                                "single_select",
                                "multi_select",
                                "boolean",
                                "number",
                                "date",
                                "url",
                                "email",
                                "phone",
                                "image",
                                "image_gallery",
                                "file",
                                "reference"
                              ]
                            },
                            "helpText": {
                              "type": "string"
                            },
                            "options": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "key": {
                                    "type": "string"
                                  },
                                  "label": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "key",
                                  "label"
                                ]
                              }
                            }
                          },
                          "required": [
                            "key",
                            "label",
                            "type"
                          ]
                        }
                      },
                      "values": {
                        "type": "object",
                        "additionalProperties": {
                          "anyOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            {
                              "type": "boolean"
                            },
                            {
                              "type": "number"
                            },
                            {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string"
                                },
                                "name": {
                                  "type": "string"
                                },
                                "contentType": {
                                  "type": "string"
                                },
                                "sizeBytes": {
                                  "type": "number"
    

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://artifacts.apis.io/cavuno-com/json-schema/cavuno-com-job-schema.json

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/cavuno-com-job"
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.