{
  "data": {
    "a": {
      "slug": "greenhouse",
      "name": "Greenhouse",
      "vendor": "Greenhouse Software, Inc.",
      "vendorUrl": "https://www.greenhouse.com",
      "kind": "http-api",
      "category": "recruiting",
      "summary": "Applicant tracking system from Greenhouse Software in New York. The Harvest v3 REST API reads and writes jobs, candidates, applications, interviews, scorecards and offer records, and a hosted MCP server in open beta exposes a subset of it.",
      "url": "https://www.anchorterminal.com/tools/greenhouse",
      "markdownUrl": "https://www.anchorterminal.com/tools/greenhouse.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/greenhouse.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/greenhouse.json",
      "repo": "https://github.com/grnhse/greenhouse-api-docs",
      "license": "Proprietary service under Greenhouse's Master Subscription Agreement. The docs repository for the older APIs on GitHub is Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://harvest.greenhouse.io/v3",
      "packages": [],
      "auth": "oauth",
      "authNotes": "Access is granted inside a paying customer's account. For a customer's own integration, a user with the developer permission creates Harvest V3 (OAuth) credentials under API Credentials, picks scopes, and exchanges the client ID and secret at https://auth.greenhouse.io/token for a Bearer token. An optional `sub` names the Greenhouse user the token works for, and all list endpoints need a Site Admin. Partners use the OAuth 2.0 authorisation code grant after signing a partnership agreement, with credentials and scope changes issued by partner support. The MCP server uses OAuth 2.0 with PKCE and dynamic client registration, per user.",
      "pricing": "paid",
      "pricingNotes": "No public prices. greenhouse.com/pricing names three tiers (Core, Plus and Pro) and says pricing is customised to hiring needs, through a demo or sales contact. No free tier or trial was found. A sandbox is a Pro-tier feature, so an agent can't start without a customer contract. The MCP article says access and pricing for the beta come from the account team, and the Audit Log API is a paid add-on (checked 2026-10-07).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Harvest v3 docs, the MCP articles or the pricing page (checked 2026-10-07).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-07"
      },
      "docsUrl": "https://harvestdocs.greenhouse.io",
      "llmsTxt": "https://harvestdocs.greenhouse.io/llms.txt",
      "capabilities": [
        "recruiting.candidates",
        "recruiting.jobs",
        "recruiting.applications",
        "recruiting.interviews",
        "recruiting.offer-letters"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "oauth",
        "mcp",
        "openapi",
        "llms-txt",
        "webhooks",
        "sales-led",
        "status-page",
        "bug-bounty",
        "soc2"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 64.8,
        "grade": "B",
        "agentReady": false,
        "rank": 271,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 63,
          "maintenance": 65,
          "payments": 0,
          "reliability": 71,
          "schema": 79,
          "security": 85,
          "transparency": 79
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-07"
        },
        "negative": 0,
        "verdict": "Harvest v3 pairs per-endpoint OAuth scopes with Markdown docs that embed an OpenAPI 3.1 definition for each call, and the beta MCP server blocks every DELETE. Access needs a paying customer account, with no public price, trial or self-serve sandbox, and no numeric rate limit or idempotency key was found in the reviewed documentation.",
        "bestFor": "An agent working inside a company that already runs hiring on Greenhouse and needs to read pipelines, move applications, schedule interviews or draft offer records under scoped OAuth.",
        "strengths": [
          "OAuth 2.0 with per-endpoint scopes such as `harvest:applications:move`, and secret rotation that keeps the old secret for up to a week",
          "Every Harvest v3 reference page has a Markdown twin with an OpenAPI 3.1 definition, indexed by llms.txt",
          "The MCP server blocks every DELETE endpoint and asks for human confirmation on five actions, including reject, hire and merge",
          "Cursor pagination with `per_page` up to 500 and `created_at` or `updated_at` filters on list endpoints",
          "Audit Log API records `harvest_access`, `mcp_access` and `mcp_tool_call` events with the OAuth client and user"
        ],
        "weaknesses": [
          "No public price, free tier or trial. Pricing is customised through sales, and the sandbox is a Pro-tier feature",
          "The v3 rate limit is a 30-second window with no published number. The limit arrives in `X-RateLimit-Limit`",
          "No idempotency keys found, and reference pages list 401, 403 and 422 without error body examples",
          "All list endpoints need a Site Admin as the authorising user, per the authentication guide",
          "No official SDKs found, and the MCP server is in open beta and absent from the official MCP registry"
        ],
        "agentNotes": [
          "Request a token from https://auth.greenhouse.io/token with client credentials, then send it as a Bearer token to https://harvest.greenhouse.io/v3. Tokens expire, so repeat on 401",
          "Put filters and `per_page` on the first list request only. A `cursor` must be the only query parameter, or the call returns 422",
          "Send the current stage as `from_stage_id` when moving an application. It guards against stale moves. Other writes have no idempotency key, so check before retrying",
          "Read `X-RateLimit-Remaining` on every response and wait for `Retry-After` on 429. The window is 30 seconds",
          "Expect empty list results or 403 unless the token's user is a Site Admin with the needed permissions"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 64.8
          }
        ],
        "editorialScores": {
          "ergonomics": 63,
          "maintenance": 65,
          "payments": 0,
          "reliability": 71,
          "schema": 79,
          "security": 85,
          "transparency": 67
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl --location 'https://harvest.greenhouse.io/v3/job_posts' \\\n  --header 'Authorization: Bearer \u003c\u003cACCESS_TOKEN\u003e\u003e'",
        "claudeCode": "claude mcp add greenhouse --transport http https://mcp.us.greenhouse.io/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/recruiting.candidates",
        "tool": "https://letme.dev/greenhouse"
      },
      "area": "business",
      "provenance": {
        "legalEntity": "Greenhouse Software, Inc.",
        "domain": "greenhouse.com",
        "domainRegistered": "1997-07-30",
        "endpointOnVendorDomain": true,
        "terms": "https://www.greenhouse.com/master-subscription-agreement",
        "privacy": "https://www.greenhouse.com/privacy-policy",
        "statusPage": "https://status.greenhouse.io",
        "changelog": "https://harvestdocs.greenhouse.io/changelog",
        "securityTxt": "expired",
        "checked": "2026-10-07",
        "notes": [
          "The Master Subscription Agreement, last updated 1 February 2026, names Greenhouse Software, Inc. and is governed by New York law.",
          "The API answers at harvest.greenhouse.io, token requests at auth.greenhouse.io and the MCP server at mcp.greenhouse.io. Docs and status also sit on greenhouse.io, which the vendor's pages link to. We did not look up the registration of greenhouse.io.",
          "https://www.greenhouse.com/.well-known/security.txt lists security@greenhouse.io and a HackerOne policy link, with an Expires line of 2026-02-01, so it had expired when read.",
          "RDAP for greenhouse.com gives a registration date of 1997-07-30.",
          "The privacy policy is dated May 28, 2026. The SLA at greenhouse.com/service-level-agreement was last updated 1 February 2026."
        ],
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/greenhouse.json",
      "live": {
        "slug": "greenhouse",
        "probe": {
          "target": "https://harvest.greenhouse.io/v3",
          "method": "get",
          "lastAt": "2026-10-08T21:12:11.580752638Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 298,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 288,
          "p95ms24h": 357,
          "samples24h": 64,
          "samples30d": 64,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 64,
              "ok": 64
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.greenhouse.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:06:07.407762777Z"
        },
        "githubStars": 141,
        "securityTxt": {
          "url": "https://greenhouse.com/.well-known/security.txt",
          "state": "expired",
          "expires": "2026-02-01T04:59:00.000Z",
          "checkedAt": "2026-10-08T15:38:47.213641717Z"
        },
        "pages": [
          {
            "url": "https://harvestdocs.greenhouse.io/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:20:48.376020909Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "de13976c1b65"
          },
          {
            "url": "https://www.greenhouse.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:08.264000017Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "2ae182cde941"
          },
          {
            "url": "https://www.greenhouse.com/master-subscription-agreement",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:06.187813013Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6de5c365ccc0"
          }
        ],
        "updatedAt": "2026-10-08T21:12:11.580752638Z"
      }
    },
    "answer": "Greenhouse scores 64.8 (B) on agent readiness against Zoho Recruit's 59.8 (C), and leads in 4 of 7 scored categories. Zoho Recruit leads on reliability and payments \u0026 pricing.",
    "b": {
      "slug": "zoho-recruit",
      "name": "Zoho Recruit",
      "vendor": "Zoho",
      "vendorUrl": "https://www.zoho.com/recruit/",
      "kind": "http-api",
      "category": "recruiting",
      "summary": "Zoho Recruit is a hosted applicant tracking system from Zoho for in-house HR teams and staffing agencies. Agents reach it through the REST API v2 and asynchronous bulk read and write APIs, behind OAuth 2.0.",
      "url": "https://www.anchorterminal.com/tools/zoho-recruit",
      "markdownUrl": "https://www.anchorterminal.com/tools/zoho-recruit.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/zoho-recruit.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/zoho-recruit.json",
      "license": "Proprietary service under Zoho's Terms of Service",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "oauth",
      "authNotes": "OAuth 2.0 only. A person registers a client in the Zoho API console (a web application, or a self client for one organisation) and approves scopes, which narrow to one module and one operation. The access token lasts one hour and goes in `Authorization: Zoho-oauthtoken \u003ctoken\u003e`. The refresh token lasts until revoked. Each data centre has its own accounts host and API host. Registration is self-serve, with no app review or sales approval for use inside one's own organisation.",
      "pricing": "freemium",
      "pricingNotes": "Free edition with 5,000 API credits a day, and the home page says no credit card is required. Paid editions cost $25 to $75 a recruiter licence a month billed yearly ($30 to $90 monthly) and a 15-day trial of Enterprise comes first. API calls draw on a daily credit allowance set by edition and user licences. Extra API calls are an add-on at $11.50 per 250 calls billed monthly (https://www.zoho.com/recruit/pricing.html and the price file it loads, checked 2026-10-08).",
      "priceSummary": "$25 / seat-mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://www.zoho.com/recruit/developer-guide/apiv2/",
      "llmsTxt": "https://www.zoho.com/recruit/developer-guide/llms.txt",
      "capabilities": [
        "recruiting.candidates",
        "recruiting.jobs",
        "recruiting.applications",
        "recruiting.interviews",
        "recruiting.offer-letters"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "oauth",
        "llms-txt",
        "webhooks",
        "free-tier",
        "no-card",
        "status-page",
        "bug-bounty",
        "soc2"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59.8,
        "grade": "C",
        "agentReady": false,
        "rank": 421,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 48,
          "payments": 35,
          "reliability": 76,
          "schema": 46,
          "security": 65,
          "transparency": 77
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "OAuth scopes narrow to one module and one operation, the docs have an llms.txt index with a Markdown page per endpoint, and the Free edition includes 5,000 API credits a day. No OpenAPI description, official SDK, SLA or dated API changelog was found, and the documented token refresh puts the client secret in the URL.",
        "bestFor": "Small businesses and staffing agencies on Zoho that want an agent to read and write candidates, job openings, applications and interviews with narrow scopes, and teams that want a free edition with API access.",
        "strengths": [
          "OAuth scopes narrow to one module and one operation, such as `ZohoRecruit.modules.candidates.READ`",
          "`https://www.zoho.com/recruit/developer-guide/llms.txt` indexes 79 API pages, each with a Markdown twin",
          "Free edition with 5,000 API credits a day, and the home page says no credit card is required",
          "Upsert matches on `duplicate_check_fields`, so a repeated create updates the record",
          "Daily credits and concurrency limits are published per edition, with no per-minute cap"
        ],
        "weaknesses": [
          "No OpenAPI description found. The public repository zoho/recruit-oas is empty",
          "No official SDK for the Recruit API found in the docs, on PyPI under three likely names or under five likely repository names",
          "The documented refresh and revoke calls put the refresh token and client secret in the URL query string",
          "429 is documented without a Retry-After header or backoff guidance, and no SLA was found",
          "The limits page, the What's New page and the Corporate HR plan comparison give different daily API allowances"
        ],
        "agentNotes": [
          "Use the `api_domain` returned with the token, or the regional host (recruit.zoho.com, recruit.zoho.eu, recruit.zoho.in and others). Tokens from one data centre fail on another",
          "Send `Authorization: Zoho-oauthtoken \u003ctoken\u003e` and refresh hourly. Put refresh parameters in the POST body, not the URL",
          "Pass `fields` on list calls and page with `page` and `per_page` (200 at most) until `more_records` is false",
          "Create through `/{module_api_name}/upsert` with `duplicate_check_fields` so a retry updates instead of duplicating",
          "Move a candidate with `PUT /{module_api_name}/status`, not upsert. Pass `trigger: []` on writes to skip workflows, approvals and blueprints"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59.8
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 48,
          "payments": 35,
          "reliability": 76,
          "schema": 46,
          "security": 65,
          "transparency": 59
        },
        "provenanceScore": 95
      },
      "connect": {
        "http": "curl \"https://recruit.zoho.com/recruit/v2/Candidates?fields=Last_Name,Email\u0026per_page=5\" \\\n  -X GET -H \"Authorization: Zoho-oauthtoken $ZOHO_ACCESS_TOKEN\""
      },
      "letme": {
        "capability": "https://letme.dev/recruiting.candidates",
        "tool": "https://letme.dev/zoho-recruit"
      },
      "sameCompany": [
        "zoho-books",
        "zoho-zeptomail",
        "zoho-crm",
        "zoho-people"
      ],
      "area": "business",
      "unitPrices": [
        {
          "item": "Corporate HR Standard",
          "unit": "seat-month",
          "usd": 25,
          "note": "per recruiter licence, billed yearly; $30 billed monthly"
        },
        {
          "item": "Corporate HR Enterprise",
          "unit": "seat-month",
          "usd": 50,
          "note": "per recruiter licence, billed yearly; $60 billed monthly"
        },
        {
          "item": "Staffing Agency Standard",
          "unit": "seat-month",
          "usd": 25,
          "note": "billed yearly; $30 billed monthly"
        },
        {
          "item": "Staffing Agency Professional",
          "unit": "seat-month",
          "usd": 50,
          "note": "billed yearly; $60 billed monthly"
        },
        {
          "item": "Staffing Agency Enterprise",
          "unit": "seat-month",
          "usd": 75,
          "note": "billed yearly; $90 billed monthly"
        }
      ],
      "provenance": {
        "legalEntity": "Zoho Corporation Private Limited",
        "domain": "zoho.com",
        "domainRegistered": "2004-01-16",
        "endpointOnVendorDomain": true,
        "terms": "https://www.zoho.com/terms.html",
        "privacy": "https://www.zoho.com/privacy.html",
        "statusPage": "https://status.zoho.com",
        "changelog": "https://www.zoho.com/recruit/whats-new.html",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The Terms of Service (last updated 2 March 2022) are the service agreement for Zoho's online services. The contracting entity depends on the customer's region, Zoho Corporation Private Limited for India and Zoho Corporation for the United States (https://www.zoho.com/legal/zoho-contracting-entities.html).",
          "A separate Zoho Developer Agreement at https://www.zoho.com/developer/terms.html covers the developer platform and names Zoho Corporation Private Limited and its affiliates.",
          "The privacy policy was last updated on 22 December 2025 and covers Zoho's websites and the products on them.",
          "security.txt at www.zoho.com gives a bug bounty contact, security@zohocorp.com, a policy link and an expiry of 30 June 2028.",
          "API calls go to recruit.zoho.com and its regional equivalents, or to the `api_domain` returned with the token (www.zohoapis.com). An unauthenticated request to https://recruit.zoho.com/recruit/v2/Candidates answered 401 with a JSON error on 8 October 2026.",
          "The changelog link is the product's What's New page, dated by month. No dated API changelog was found.",
          "RDAP for zoho.com gives a registration date of 2004-01-16."
        ],
        "score": 95
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/zoho-recruit.json"
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Greenhouse Software, Inc.",
        "b": "Zoho",
        "name": "Vendor"
      },
      {
        "a": "https://harvest.greenhouse.io/v3",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Greenhouse's Master Subscription Agreement. The docs repository for the older APIs on GitHub is Apache-2.0",
        "b": "Proprietary service under Zoho's Terms of Service",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-07",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "2026-02-01",
        "b": "2022-03-02",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-28",
        "b": "2025-12-22",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      }
    ],
    "faq": [
      {
        "answer": "Greenhouse scores 64.8 (B) on agent readiness against Zoho Recruit's 59.8 (C), and leads in 4 of 7 scored categories. Zoho Recruit leads on reliability and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Greenhouse or Zoho Recruit?"
      },
      {
        "answer": "Both use an OAuth sign-in.",
        "question": "Do Greenhouse and Zoho Recruit need an API key?"
      },
      {
        "answer": "Greenhouse has a hosted endpoint at https://harvest.greenhouse.io/v3. No hosted endpoint is listed for Zoho Recruit.",
        "question": "Can an agent call Greenhouse and Zoho Recruit without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 79 against 46",
          "Security \u0026 auth, 85 against 65",
          "Maintenance \u0026 community, 65 against 48"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "An agent working inside a company that already runs hiring on Greenhouse and needs to read pipelines, move applications, schedule interviews or draft offer records under scoped OAuth.",
        "slug": "greenhouse",
        "watchFor": "No public price, free tier or trial. Pricing is customised through sales, and the sandbox is a Pro-tier feature"
      },
      {
        "aheadOn": [
          "Reliability, 76 against 71",
          "Payments \u0026 pricing, 35 against 0"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "Small businesses and staffing agencies on Zoho that want an agent to read and write candidates, job openings, applications and interviews with narrow scopes, and teams that want a free edition with API access.",
        "slug": "zoho-recruit",
        "watchFor": "No OpenAPI description found. The public repository zoho/recruit-oas is empty"
      }
    ],
    "job": {
      "capability": "recruiting.candidates",
      "name": "Recruiting candidates"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/ashby-vs-greenhouse.json",
        "title": "Ashby vs Greenhouse",
        "url": "https://www.anchorterminal.com/compare/ashby-vs-greenhouse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ashby-vs-zoho-recruit.json",
        "title": "Ashby vs Zoho Recruit",
        "url": "https://www.anchorterminal.com/compare/ashby-vs-zoho-recruit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bullhorn-vs-greenhouse.json",
        "title": "Bullhorn vs Greenhouse",
        "url": "https://www.anchorterminal.com/compare/bullhorn-vs-greenhouse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bullhorn-vs-zoho-recruit.json",
        "title": "Bullhorn vs Zoho Recruit",
        "url": "https://www.anchorterminal.com/compare/bullhorn-vs-zoho-recruit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gem-vs-greenhouse.json",
        "title": "Gem vs Greenhouse",
        "url": "https://www.anchorterminal.com/compare/gem-vs-greenhouse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gem-vs-zoho-recruit.json",
        "title": "Gem vs Zoho Recruit",
        "url": "https://www.anchorterminal.com/compare/gem-vs-zoho-recruit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/greenhouse-vs-lever.json",
        "title": "Greenhouse vs Lever",
        "url": "https://www.anchorterminal.com/compare/greenhouse-vs-lever"
      },
      {
        "json": "https://www.anchorterminal.com/compare/greenhouse-vs-pinpoint.json",
        "title": "Greenhouse vs Pinpoint",
        "url": "https://www.anchorterminal.com/compare/greenhouse-vs-pinpoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/greenhouse-vs-recruitee.json",
        "title": "Greenhouse vs Recruitee",
        "url": "https://www.anchorterminal.com/compare/greenhouse-vs-recruitee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/greenhouse-vs-smartrecruiters.json",
        "title": "Greenhouse vs SmartRecruiters",
        "url": "https://www.anchorterminal.com/compare/greenhouse-vs-smartrecruiters"
      },
      {
        "json": "https://www.anchorterminal.com/compare/greenhouse-vs-workable.json",
        "title": "Greenhouse vs Workable",
        "url": "https://www.anchorterminal.com/compare/greenhouse-vs-workable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lever-vs-zoho-recruit.json",
        "title": "Lever vs Zoho Recruit",
        "url": "https://www.anchorterminal.com/compare/lever-vs-zoho-recruit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pinpoint-vs-zoho-recruit.json",
        "title": "Pinpoint vs Zoho Recruit",
        "url": "https://www.anchorterminal.com/compare/pinpoint-vs-zoho-recruit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/recruitee-vs-zoho-recruit.json",
        "title": "Recruitee vs Zoho Recruit",
        "url": "https://www.anchorterminal.com/compare/recruitee-vs-zoho-recruit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/smartrecruiters-vs-zoho-recruit.json",
        "title": "SmartRecruiters vs Zoho Recruit",
        "url": "https://www.anchorterminal.com/compare/smartrecruiters-vs-zoho-recruit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/workable-vs-zoho-recruit.json",
        "title": "Workable vs Zoho Recruit",
        "url": "https://www.anchorterminal.com/compare/workable-vs-zoho-recruit"
      }
    ],
    "scores": [
      {
        "by": 5,
        "edge": "zoho-recruit",
        "greenhouse": 71,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16,
        "zoho-recruit": 76
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 33,
        "edge": "greenhouse",
        "greenhouse": 79,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13,
        "zoho-recruit": 46
      },
      {
        "by": 1,
        "edge": "zoho-recruit",
        "greenhouse": 63,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13,
        "zoho-recruit": 64
      },
      {
        "by": 20,
        "edge": "greenhouse",
        "greenhouse": 85,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14,
        "zoho-recruit": 65
      },
      {
        "by": 35,
        "edge": "zoho-recruit",
        "greenhouse": 0,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10,
        "zoho-recruit": 35
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 17,
        "edge": "greenhouse",
        "greenhouse": 65,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7,
        "zoho-recruit": 48
      },
      {
        "by": 2,
        "edge": "greenhouse",
        "greenhouse": 79,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7,
        "zoho-recruit": 77
      }
    ],
    "summary": "Greenhouse scores 64.8 (B) on agent readiness against Zoho Recruit's 59.8 (C), and leads in 4 of 7 scored categories. Zoho Recruit leads on reliability and payments \u0026 pricing. Both do recruiting candidates.",
    "verdicts": {
      "greenhouse": "Harvest v3 pairs per-endpoint OAuth scopes with Markdown docs that embed an OpenAPI 3.1 definition for each call, and the beta MCP server blocks every DELETE. Access needs a paying customer account, with no public price, trial or self-serve sandbox, and no numeric rate limit or idempotency key was found in the reviewed documentation.",
      "zoho-recruit": "OAuth scopes narrow to one module and one operation, the docs have an llms.txt index with a Markdown page per endpoint, and the Free edition includes 5,000 API credits a day. No OpenAPI description, official SDK, SLA or dated API changelog was found, and the documented token refresh puts the client secret in the URL."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/greenhouse-vs-zoho-recruit",
    "json": "https://www.anchorterminal.com/compare/greenhouse-vs-zoho-recruit.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/greenhouse-vs-zoho-recruit.md",
    "slim": "https://www.anchorterminal.com/compare/greenhouse-vs-zoho-recruit.min.md"
  },
  "markdown": "Greenhouse scores 64.8 (B) on agent readiness against Zoho Recruit's 59.8 (C), and leads in 4 of 7 scored categories. Zoho Recruit leads on reliability and payments \u0026 pricing. Both do recruiting candidates.\n\n- Greenhouse: grade B, 64.8/100, rank #271 of 722. Markdown https://www.anchorterminal.com/tools/greenhouse.md · JSON https://www.anchorterminal.com/api/v1/tools/greenhouse.json\n- Zoho Recruit: grade C, 59.8/100, rank #421 of 722. Markdown https://www.anchorterminal.com/tools/zoho-recruit.md · JSON https://www.anchorterminal.com/api/v1/tools/zoho-recruit.json\n\n## Which one, for what\n\n### Greenhouse (B)\n\nGood for: An agent working inside a company that already runs hiring on Greenhouse and needs to read pipelines, move applications, schedule interviews or draft offer records under scoped OAuth.\n\nAhead on:\n- Schema \u0026 documentation, 79 against 46\n- Security \u0026 auth, 85 against 65\n- Maintenance \u0026 community, 65 against 48\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No public price, free tier or trial. Pricing is customised through sales, and the sandbox is a Pro-tier feature\n\n### Zoho Recruit (C)\n\nGood for: Small businesses and staffing agencies on Zoho that want an agent to read and write candidates, job openings, applications and interviews with narrow scopes, and teams that want a free edition with API access.\n\nAhead on:\n- Reliability, 76 against 71\n- Payments \u0026 pricing, 35 against 0\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No OpenAPI description found. The public repository zoho/recruit-oas is empty\n\n\n## Score by category\n\n| Category | Weight | Greenhouse | Zoho Recruit | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 71 | 76 | Zoho Recruit +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 79 | 46 | Greenhouse +33 |\n| Agent ergonomics | 13% (16.2 this run) | 63 | 64 | Zoho Recruit +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 85 | 65 | Greenhouse +20 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 0 | 35 | Zoho Recruit +35 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 65 | 48 | Greenhouse +17 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 79 | 77 | Greenhouse +2 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **64.8 · B** | **59.8 · C** | |\n\n## Facts side by side\n\n| Fact | Greenhouse | Zoho Recruit |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Greenhouse Software, Inc. | Zoho |\n| Hosted endpoint | `https://harvest.greenhouse.io/v3` | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | OAuth | OAuth |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under Greenhouse's Master Subscription Agreement. The docs repository for the older APIs on GitHub is Apache-2.0 | Proprietary service under Zoho's Terms of Service |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-07 | none |\n| Terms last updated | 2026-02-01 | 2022-03-02 |\n| Privacy policy last updated | 2026-05-28 | 2025-12-22 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n\n## Verdicts\n\n**Greenhouse.** Harvest v3 pairs per-endpoint OAuth scopes with Markdown docs that embed an OpenAPI 3.1 definition for each call, and the beta MCP server blocks every DELETE. Access needs a paying customer account, with no public price, trial or self-serve sandbox, and no numeric rate limit or idempotency key was found in the reviewed documentation.\n\n**Zoho Recruit.** OAuth scopes narrow to one module and one operation, the docs have an llms.txt index with a Markdown page per endpoint, and the Free edition includes 5,000 API credits a day. No OpenAPI description, official SDK, SLA or dated API changelog was found, and the documented token refresh puts the client secret in the URL.\n\n## Before you call either\n\n### Greenhouse\n\n1. Request a token from https://auth.greenhouse.io/token with client credentials, then send it as a Bearer token to https://harvest.greenhouse.io/v3. Tokens expire, so repeat on 401\n2. Put filters and `per_page` on the first list request only. A `cursor` must be the only query parameter, or the call returns 422\n3. Send the current stage as `from_stage_id` when moving an application. It guards against stale moves. Other writes have no idempotency key, so check before retrying\n4. Read `X-RateLimit-Remaining` on every response and wait for `Retry-After` on 429. The window is 30 seconds\n5. Expect empty list results or 403 unless the token's user is a Site Admin with the needed permissions\n\n### Zoho Recruit\n\n1. Use the `api_domain` returned with the token, or the regional host (recruit.zoho.com, recruit.zoho.eu, recruit.zoho.in and others). Tokens from one data centre fail on another\n2. Send `Authorization: Zoho-oauthtoken \u003ctoken\u003e` and refresh hourly. Put refresh parameters in the POST body, not the URL\n3. Pass `fields` on list calls and page with `page` and `per_page` (200 at most) until `more_records` is false\n4. Create through `/{module_api_name}/upsert` with `duplicate_check_fields` so a retry updates instead of duplicating\n5. Move a candidate with `PUT /{module_api_name}/status`, not upsert. Pass `trigger: []` on writes to skip workflows, approvals and blueprints\n\n## Questions\n\n### Which is better for AI agents, Greenhouse or Zoho Recruit?\n\nGreenhouse scores 64.8 (B) on agent readiness against Zoho Recruit's 59.8 (C), and leads in 4 of 7 scored categories. Zoho Recruit leads on reliability and payments \u0026 pricing.\n\n### Do Greenhouse and Zoho Recruit need an API key?\n\nBoth use an OAuth sign-in.\n\n### Can an agent call Greenhouse and Zoho Recruit without installing anything?\n\nGreenhouse has a hosted endpoint at https://harvest.greenhouse.io/v3. No hosted endpoint is listed for Zoho Recruit.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/greenhouse-vs-zoho-recruit.json, and with the fewest tokens: https://www.anchorterminal.com/compare/greenhouse-vs-zoho-recruit.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"greenhouse\", \"b\": \"zoho-recruit\"}`. From a terminal: `anchor compare greenhouse zoho-recruit`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/greenhouse.json and https://www.anchorterminal.com/api/v1/tools/zoho-recruit.json\n\n## Other comparisons with Greenhouse or Zoho Recruit\n\n- [Ashby vs Greenhouse](https://www.anchorterminal.com/compare/ashby-vs-greenhouse.md)\n- [Ashby vs Zoho Recruit](https://www.anchorterminal.com/compare/ashby-vs-zoho-recruit.md)\n- [Bullhorn vs Greenhouse](https://www.anchorterminal.com/compare/bullhorn-vs-greenhouse.md)\n- [Bullhorn vs Zoho Recruit](https://www.anchorterminal.com/compare/bullhorn-vs-zoho-recruit.md)\n- [Gem vs Greenhouse](https://www.anchorterminal.com/compare/gem-vs-greenhouse.md)\n- [Gem vs Zoho Recruit](https://www.anchorterminal.com/compare/gem-vs-zoho-recruit.md)\n- [Greenhouse vs Lever](https://www.anchorterminal.com/compare/greenhouse-vs-lever.md)\n- [Greenhouse vs Pinpoint](https://www.anchorterminal.com/compare/greenhouse-vs-pinpoint.md)\n- [Greenhouse vs Recruitee](https://www.anchorterminal.com/compare/greenhouse-vs-recruitee.md)\n- [Greenhouse vs SmartRecruiters](https://www.anchorterminal.com/compare/greenhouse-vs-smartrecruiters.md)\n- [Greenhouse vs Workable](https://www.anchorterminal.com/compare/greenhouse-vs-workable.md)\n- [Lever vs Zoho Recruit](https://www.anchorterminal.com/compare/lever-vs-zoho-recruit.md)\n- [Pinpoint vs Zoho Recruit](https://www.anchorterminal.com/compare/pinpoint-vs-zoho-recruit.md)\n- [Recruitee vs Zoho Recruit](https://www.anchorterminal.com/compare/recruitee-vs-zoho-recruit.md)\n- [SmartRecruiters vs Zoho Recruit](https://www.anchorterminal.com/compare/smartrecruiters-vs-zoho-recruit.md)\n- [Workable vs Zoho Recruit](https://www.anchorterminal.com/compare/workable-vs-zoho-recruit.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Greenhouse vs Zoho Recruit",
        "url": ""
      }
    ],
    "description": "Greenhouse scores 64.8 (B) on agent readiness against Zoho Recruit's 59.8 (C), and leads in 4 of 7 scored categories. Zoho Recruit leads on reliability and payments \u0026 pricing. Both do recruiting candidates. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Greenhouse B 64.8",
      "Zoho Recruit C 59.8",
      "scores"
    ],
    "h1": "Greenhouse vs Zoho Recruit",
    "image": "https://www.anchorterminal.com/assets/og/compare-greenhouse-vs-zoho-recruit.png",
    "path": "/compare/greenhouse-vs-zoho-recruit",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Greenhouse vs Zoho Recruit for AI agents, B 64.8 vs C 59.8",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/greenhouse-vs-zoho-recruit"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 630
  },
  "version": 1
}
