Ashby · Schema

Ashby Candidate

Schema for the Ashby Candidate resource — the central CRM entity in Ashby's all-in-one recruiting platform. Surface for candidate.create, candidate.info, candidate.list, candidate.update, candidate.search, candidate.anonymize, candidate.merge, and webhook payloads (candidateHire, candidateMerge, candidateDelete, candidateStageChange).

ATSRecruitingTalent AcquisitionSourcingCRMSchedulingAnalyticsHiringHR TechArtificial Intelligence

Properties

Name Type Description
id string Ashby-assigned candidate identifier.
createdAt string ISO 8601 timestamp when the candidate record was created in Ashby.
updatedAt string ISO 8601 timestamp of the last update to the candidate record.
name string Candidate's full name.
primaryEmailAddress object
emailAddresses array
primaryPhoneNumber object
phoneNumbers array
socialLinks array
tags array Candidate tags. Managed via candidate.addTag, candidate.removeTag, candidateTag.create/list/archive.
position string Most recent or current job title (free-form).
company string Most recent or current company (free-form).
school string Most recent school (free-form).
locationSummary string Free-form location summary.
primaryLocation object
source object
creditedToUser object User credited with sourcing the candidate.
applicationIds array
fileHandles array Files attached to the candidate (resumes, portfolios, etc.).
resumeFileHandle object Most recent resume on file.
customFields array
linkedInUrl string
githubUrl string
websiteUrl string
profileUrl string URL to the candidate profile inside the Ashby app.
isAnonymized boolean True after candidate.anonymize has scrubbed PII for retention compliance.
fraudCheck object Optional candidate fraud-check status surfaced when the AI fraud-detection feature is enabled.
View JSON Schema on GitHub

JSON Schema

ashby-candidate-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api-evangelist.com/schemas/ashby-hq/ashby-candidate-schema.json",
  "title": "Ashby Candidate",
  "description": "Schema for the Ashby Candidate resource — the central CRM entity in Ashby's all-in-one recruiting platform. Surface for candidate.create, candidate.info, candidate.list, candidate.update, candidate.search, candidate.anonymize, candidate.merge, and webhook payloads (candidateHire, candidateMerge, candidateDelete, candidateStageChange).",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Ashby-assigned candidate identifier."
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp when the candidate record was created in Ashby."
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp of the last update to the candidate record."
    },
    "name": {
      "type": "string",
      "description": "Candidate's full name."
    },
    "primaryEmailAddress": {
      "type": "object",
      "properties": {
        "value": { "type": "string", "format": "email" },
        "type": { "type": "string", "enum": ["Personal", "Work", "Other"] },
        "isPrimary": { "type": "boolean" }
      }
    },
    "emailAddresses": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "value": { "type": "string", "format": "email" },
          "type": { "type": "string" },
          "isPrimary": { "type": "boolean" }
        }
      }
    },
    "primaryPhoneNumber": {
      "type": "object",
      "properties": {
        "value": { "type": "string" },
        "type": { "type": "string", "enum": ["Mobile", "Home", "Work", "Other"] },
        "isPrimary": { "type": "boolean" }
      }
    },
    "phoneNumbers": {
      "type": "array",
      "items": { "$ref": "#/properties/primaryPhoneNumber" }
    },
    "socialLinks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": { "type": "string", "format": "uri" },
          "type": { "type": "string", "description": "e.g., LinkedIn, GitHub, X" }
        }
      }
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": { "type": "string", "format": "uuid" },
          "title": { "type": "string" }
        }
      },
      "description": "Candidate tags. Managed via candidate.addTag, candidate.removeTag, candidateTag.create/list/archive."
    },
    "position": {
      "type": "string",
      "description": "Most recent or current job title (free-form)."
    },
    "company": {
      "type": "string",
      "description": "Most recent or current company (free-form)."
    },
    "school": {
      "type": "string",
      "description": "Most recent school (free-form)."
    },
    "locationSummary": {
      "type": "string",
      "description": "Free-form location summary."
    },
    "primaryLocation": {
      "type": "object",
      "properties": {
        "locationSummary": { "type": "string" },
        "locationComponents": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "enum": ["AdministrativeAreaLevel1", "AdministrativeAreaLevel2", "Country", "Locality", "PostalCode"]
              },
              "name": { "type": "string" }
            }
          }
        },
        "timezone": { "type": "string" }
      }
    },
    "source": {
      "type": "object",
      "properties": {
        "id": { "type": "string", "format": "uuid" },
        "title": { "type": "string" },
        "isArchived": { "type": "boolean" },
        "sourceType": {
          "type": "object",
          "properties": {
            "id": { "type": "string", "format": "uuid" },
            "title": { "type": "string" }
          }
        }
      }
    },
    "creditedToUser": {
      "type": "object",
      "description": "User credited with sourcing the candidate.",
      "properties": {
        "id": { "type": "string", "format": "uuid" },
        "name": { "type": "string" },
        "email": { "type": "string", "format": "email" }
      }
    },
    "applicationIds": {
      "type": "array",
      "items": { "type": "string", "format": "uuid" }
    },
    "fileHandles": {
      "type": "array",
      "description": "Files attached to the candidate (resumes, portfolios, etc.).",
      "items": {
        "type": "object",
        "properties": {
          "id": { "type": "string", "format": "uuid" },
          "name": { "type": "string" },
          "handle": { "type": "string", "description": "Opaque file handle used with file.info." }
        }
      }
    },
    "resumeFileHandle": {
      "type": "object",
      "properties": {
        "id": { "type": "string", "format": "uuid" },
        "name": { "type": "string" },
        "handle": { "type": "string" }
      },
      "description": "Most recent resume on file."
    },
    "customFields": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": { "type": "string", "format": "uuid" },
          "title": { "type": "string" },
          "value": {},
          "valueType": {
            "type": "string",
            "enum": ["Boolean", "Date", "Number", "String", "ValueSelect", "MultiValueSelect", "LongText", "Currency", "EncryptedString"]
          }
        }
      }
    },
    "linkedInUrl": { "type": "string", "format": "uri" },
    "githubUrl": { "type": "string", "format": "uri" },
    "websiteUrl": { "type": "string", "format": "uri" },
    "profileUrl": {
      "type": "string",
      "format": "uri",
      "description": "URL to the candidate profile inside the Ashby app."
    },
    "isAnonymized": {
      "type": "boolean",
      "description": "True after candidate.anonymize has scrubbed PII for retention compliance."
    },
    "fraudCheck": {
      "type": "object",
      "description": "Optional candidate fraud-check status surfaced when the AI fraud-detection feature is enabled.",
      "properties": {
        "status": {
          "type": "string",
          "enum": ["NotStarted", "InProgress", "Flagged", "Clear"]
        },
        "outcome": { "type": "string" }
      }
    }
  },
  "required": ["id", "createdAt", "updatedAt", "name"]
}

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/ashby-candidate"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

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