{
  "data": {
    "a": {
      "slug": "bullhorn",
      "name": "Bullhorn",
      "vendor": "Bullhorn, Inc.",
      "vendorUrl": "https://www.bullhorn.com",
      "kind": "http-api",
      "category": "recruiting",
      "summary": "Applicant tracking and CRM software for staffing and recruitment agencies from Bullhorn, Inc. in Boston. Its REST API reads and writes candidates, job orders, submissions, placements and notes with OAuth 2.0, under credentials Bullhorn issues to customers and contracted partners.",
      "url": "https://www.anchorterminal.com/tools/bullhorn",
      "markdownUrl": "https://www.anchorterminal.com/tools/bullhorn.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bullhorn.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bullhorn.json",
      "repo": "https://github.com/bullhorn/rest-api-docs",
      "license": "Proprietary service under a Bullhorn customer or partner agreement that is not published, with a public API Fair Use Policy. The `sdk-rest` Java library and the `@bullhorn/taurus` and `@bullhorn/bullhorn-types` packages are MIT per npm and the repositories",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://rest.bullhornstaffing.com/rest-services",
      "packages": [
        {
          "registry": "npm",
          "name": "@bullhorn/taurus"
        },
        {
          "registry": "npm",
          "name": "@bullhorn/bullhorn-types"
        }
      ],
      "auth": "oauth",
      "authNotes": "Access is granted by Bullhorn, not self-serve. A customer asks for OAuth keys (client ID, client secret, redirect URI) through a support ticket. A vendor building for customers must sign the API Access Agreement, pay an annual platform fee and pass a security assessment before getting a sandbox. The flow is the OAuth 2.0 authorisation code grant at `auth-{dc}.bullhornstaffing.com`, a ten-minute access token and a rotating refresh token, then `POST /rest-services/login` for a `BhRestToken` session sent as a header, cookie or query parameter. No scopes were found. The API Fair Use Policy requires Bullhorn's explicit written permission before the API is connected to third-party AI or LLM tools or MCP.",
      "pricing": "paid",
      "pricingNotes": "Bullhorn Starter is $99 and Bullhorn Core $165 per user per month, and Pro, Max and the plans for larger agencies are quoted. No free trial. API access for integrators is an annual platform fee, not published, covering a sandbox and 200,000 calls a month with overage charges. No sandbox or free tier lets an agent start without a contract (checked 2026-10-08).",
      "priceSummary": "$99 / seat-mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the REST API reference, the getting started guide, the API Fair Use Policy or the pricing pages (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 13,
        "npmWeekly": 1728,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://bullhorn.github.io/rest-api-docs/",
      "capabilities": [
        "recruiting.candidates",
        "recruiting.jobs",
        "recruiting.applications",
        "recruiting.interviews"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "oauth",
        "staffing",
        "java",
        "typescript",
        "partner-approval",
        "sales-led",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 46.7,
        "grade": "D",
        "agentReady": false,
        "rank": 644,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 10,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 56,
          "payments": 5,
          "reliability": 53,
          "schema": 55,
          "security": 31,
          "transparency": 67
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The REST API covers 91 documented entities with required field selection, Lucene and JPQL queries and an event queue. Access is by support ticket or a paid partner contract, and the API Fair Use Policy bars connecting third-party AI or LLM tools or MCP without Bullhorn's written permission. No OpenAPI file or numeric rate limit was found.",
        "bestFor": "An integration built for a staffing agency that already runs on Bullhorn, with Bullhorn's permission for AI use in writing, and needs candidates, job orders, submissions and placements.",
        "strengths": [
          "Every read names its `fields`, with nested associations and per-association counts, so responses can be kept small",
          "`/search` takes Lucene queries and `/query` takes JPQL where clauses, with `start` and `count` paging up to 500 records",
          "91 entity reference pages give field names, types and lengths, and `/meta/{entityType}` returns the same model at run time",
          "Java `sdk-rest` 3.0.0 was tagged on 29 September 2026 and `@bullhorn/bullhorn-types` 1.142.0 was published on 28 September 2026",
          "Sub-processor list dated 25 August 2026 names each provider, its location and the Bullhorn services it covers"
        ],
        "weaknesses": [
          "The API Fair Use Policy of 17 December 2025 bars connecting third-party AI or LLM tools, or MCP, without Bullhorn's explicit written permission",
          "Credentials come from a support ticket for customers or a paid annual partner contract with a security assessment. No self-serve key, trial or free sandbox",
          "The documented flow puts the username, password, client secret, access token and `BhRestToken` in URL query strings",
          "No OpenAPI file, no OAuth scopes, no idempotency keys and no numeric rate limit were found in the reviewed documentation",
          "The status page listed 50 incidents from 12 July to 7 October 2026, seven marked major and two critical, with no API component"
        ],
        "agentNotes": [
          "Confirm the customer holds Bullhorn's written permission for AI or LLM access before any call. The API Fair Use Policy forbids it otherwise",
          "Call `/rest-services/loginInfo?username=` first to learn the data centre, then use the returned OAuth and REST URLs and follow any 307 redirect",
          "Log in once and reuse `BhRestToken` until a call returns 401, then use the refresh token. Bullhorn limits login rates and may block frequent logins",
          "Send `BhRestToken` as a header, never in the URL, and always pass `fields`. `fields=*` is blocked outside `/meta`",
          "On 429 wait one second and retry. Writes have no idempotency key, so read the record back before repeating a PUT"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 46.7
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 56,
          "payments": 5,
          "reliability": 53,
          "schema": 55,
          "security": 31,
          "transparency": 51
        },
        "provenanceScore": 82
      },
      "connect": {
        "http": "curl \"https://rest.bullhornstaffing.com/rest-services/loginInfo?username={API_Username}\""
      },
      "letme": {
        "capability": "https://letme.dev/recruiting.candidates",
        "tool": "https://letme.dev/bullhorn"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Bullhorn Starter, per user",
          "unit": "seat-month",
          "usd": 99,
          "note": "Small agency plan. API keys are issued separately by Bullhorn"
        },
        {
          "item": "Bullhorn Core, per user",
          "unit": "seat-month",
          "usd": 165,
          "note": "Small agency plan with the app marketplace"
        }
      ],
      "provenance": {
        "legalEntity": "Bullhorn, Inc.",
        "domain": "bullhorn.com",
        "domainRegistered": "1997-07-31",
        "endpointOnVendorDomain": true,
        "terms": "https://bullhorn.github.io/api-fair-use-policy/",
        "privacy": "https://www.bullhorn.com/privacy/",
        "statusPage": "https://status.bullhorn.com",
        "changelog": "https://bullhorn.github.io/rest-api-docs/changelog.html",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The terms link is the API Fair Use Policy, dated December 17, 2025, which governs use of Bullhorn's APIs and supplements the customer or partner agreement. The Master Subscription Agreement and the API Access Agreement are not published. www.bullhorn.com/legal is a website terms page and www.bullhorn.com/legal-terms links only to product supplements.",
          "The privacy policy, effective 20 May 2026, names Bullhorn, Inc. and its group companies and says it applies to the service platform at www.bullhornstaffing.com as well as the website.",
          "The API answers at rest.bullhornstaffing.com and auth-{dc}.bullhornstaffing.com. RDAP gives bullhornstaffing.com a registration date of 2000-12-11 and bullhorn.com 1997-07-31. The developer docs are on bullhorn.github.io, linked from www.bullhorn.com/llms.txt.",
          "https://www.bullhorn.com/.well-known/security.txt redirects to the home page, so no security.txt was found.",
          "The site footer and the developer site give the address 100 Summer Street, 17th Floor, Boston, MA 02210."
        ],
        "score": 82
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bullhorn.json",
      "live": {
        "slug": "bullhorn",
        "probe": {
          "target": "https://rest.bullhornstaffing.com/rest-services",
          "method": "get",
          "lastAt": "2026-10-08T21:12:06.783475466Z",
          "lastOk": true,
          "lastStatus": 400,
          "lastMs": 46,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 47,
          "p95ms24h": 86,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.bullhorn.com",
          "indicator": "maintenance",
          "summary": "Service Under Maintenance",
          "checkedAt": "2026-10-08T21:05:53.268612652Z"
        },
        "updatedAt": "2026-10-08T21:12:06.783475466Z"
      }
    },
    "answer": "Lever scores 53.6 (D) on agent readiness against Bullhorn's 46.7 (D), and leads in 4 of 7 scored categories. Bullhorn leads on maintenance \u0026 community.",
    "b": {
      "slug": "lever",
      "name": "Lever",
      "vendor": "Employ, Inc.",
      "vendorUrl": "https://www.lever.co",
      "kind": "http-api",
      "category": "recruiting",
      "summary": "Applicant tracking and candidate relationship system from Employ Inc. Its Data API reads and writes opportunities, postings, interviews, feedback and requisitions, and a separate Postings API serves published jobs.",
      "url": "https://www.anchorterminal.com/tools/lever",
      "markdownUrl": "https://www.anchorterminal.com/tools/lever.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/lever.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/lever.json",
      "repo": "https://github.com/lever/postings-api",
      "license": "Proprietary service under Lever's terms of service. The postings-api and integrator-resources repositories on GitHub hold documentation and example code",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.lever.co/v1",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Access is granted by a paying customer or by Lever's partner team. A Super Admin of a Lever account creates an API key in Settings, sent as the Basic auth username with a blank password. Keys are limited to chosen endpoints, and access to confidential data can be granted only when the key is created. Partner integrations must use OAuth 2.0 (authorisation code grant at https://auth.lever.co/authorize, with a required `audience`). Lever staff create the OAuth app after a partner application and a registration form, first on the sandbox and then for production after a QA call. About 50 scopes follow the pattern `opportunities:read:admin` and `opportunities:write:admin`, with at most 20 per app. Access tokens last 1 hour and refresh tokens 1 year or 90 days idle. A Super Admin authorises an app for the whole organisation and can revoke it in settings. The Postings API reads published jobs without a key and takes applications with a key in the `key` query parameter.",
      "pricing": "paid",
      "pricingNotes": "No public price. lever.co/pricing has a quote form and says pricing scales with team size and hiring needs, with no trial, free tier or self-serve signup found. Lever's partner FAQ says OAuth integrations work for all customers, while API key use needs the Data API feature, requisition endpoints need the TRM Enterprise package or Advanced HR, and the audit events endpoint is an add-on. A sandbox account is free to approved partners only, so an agent can't start without a customer contract or partner approval. Reading a company's published jobs through the Postings API needs no account (checked 2026-10-07).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer documentation, the Postings API README or the pricing page (checked 2026-10-07).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-07"
      },
      "docsUrl": "https://hire.lever.co/developer/documentation",
      "capabilities": [
        "recruiting.candidates",
        "recruiting.jobs",
        "recruiting.applications",
        "recruiting.interviews",
        "recruiting.offer-letters"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "sales-led",
        "oauth",
        "api-key",
        "webhooks",
        "sandbox",
        "status-page",
        "sla",
        "soc2",
        "iso27001",
        "eu-region"
      ],
      "lastRelease": "2026-04-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53.6,
        "grade": "D",
        "agentReady": false,
        "rank": 541,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 65,
          "maintenance": 21,
          "payments": 5,
          "reliability": 73,
          "schema": 55,
          "security": 60,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-07"
        },
        "negative": 0,
        "verdict": "The Data API covers about 100 operations with read and write OAuth scopes per resource, field selection and a 99.9 per cent uptime commitment. Access depends on a paying customer or partner approval, with no public price, no OpenAPI file and no official SDK. The status page records three critical incidents between 14 July and 21 August 2026.",
        "bestFor": "An agent working inside a company that already runs Lever, for reading the pipeline, adding candidates, moving stages, writing notes and feedback and scheduling externally managed interviews.",
        "strengths": [
          "About 100 documented operations on https://api.lever.co/v1, with writes for opportunities, stages, notes, feedback, interviews, postings and requisitions",
          "OAuth 2.0 authorisation code grant with around 50 scopes split into read and write per resource, and a separate scope for confidential data",
          "Every list endpoint takes `limit` (1 to 100), an opaque `offset` token, `include` for field selection and `expand` for linked objects",
          "Published SLA commits to 99.9 per cent monthly uptime with automatic service credits",
          "Sub-processor list dated 21 September 2025 names each vendor, purpose and location"
        ],
        "weaknesses": [
          "No public price, free tier or self-serve signup. OAuth apps and sandbox accounts are issued by Lever staff after a partner application",
          "No OpenAPI file, llms.txt or official SDK. The reference is one HTML page and a Postman collection last changed in February 2025",
          "Three incidents marked critical on status.lever.co between 14 July and 21 August 2026, one with elevated API error rates for 14 minutes",
          "No idempotency keys, and 429 responses are documented without a Retry-After header",
          "The Postings API takes its key in the URL query string for application submissions",
          "Offer records are read-only, and interviews can be written only on panels marked `externallyManaged`"
        ],
        "agentNotes": [
          "Send `perform_as` with a Lever user id on creates and most updates. Opportunity, note, feedback, panel and interview writes reject requests without it",
          "Use the Opportunities endpoints. The Candidates endpoints were deprecated in 2020 and the old candidate id works as the opportunity id",
          "Stay under 10 requests a second per key and back off exponentially on 429 and 503. Application POSTs are limited to 2 a second",
          "Create interviews on a panel with `externallyManaged` true. Panels made in the Lever app can't be changed through the API",
          "Pass `include` to trim fields and follow `next` while `hasNext` is true. An `offset` must come from a previous response",
          "Send a full object on PUT to panels and interviews. Missing fields are deleted"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53.6
          }
        ],
        "editorialScores": {
          "ergonomics": 65,
          "maintenance": 21,
          "payments": 5,
          "reliability": 73,
          "schema": 55,
          "security": 60,
          "transparency": 63
        },
        "provenanceScore": 87
      },
      "connect": {
        "http": "curl -u \"$LEVER_API_KEY:\" \"https://api.lever.co/v1/opportunities?limit=10\u0026include=name\u0026include=stage\""
      },
      "letme": {
        "capability": "https://letme.dev/recruiting.candidates",
        "tool": "https://letme.dev/lever"
      },
      "area": "business",
      "provenance": {
        "legalEntity": "Employ, Inc.",
        "domain": "lever.co",
        "domainRegistered": "2010-07-20",
        "endpointOnVendorDomain": true,
        "terms": "https://www.lever.co/legal/terms-of-service",
        "privacy": "https://www.employinc.com/privacy-notice-services/",
        "statusPage": "https://status.lever.co",
        "changelog": "https://hire.lever.co/developer/updates",
        "securityTxt": "none",
        "checked": "2026-10-07",
        "notes": [
          "The terms of service (last updated 25 August 2023) and the Developer Sandbox Terms (21 September 2020) name Lever, Inc. The DPA (last updated 20 May 2025) and the sub-processor list name Employ, Inc., 20 North Meridian Street, Suite 300, Indianapolis, IN 46204, and page footers read Employ Inc.",
          "API endpoints answer at api.lever.co, with auth.lever.co for OAuth. An unauthenticated GET to https://api.lever.co/v1/opportunities returned 401 with `server: lever-data-api` on 7 October 2026.",
          "www.lever.co/.well-known/security.txt and www.employinc.com/.well-known/security.txt both return 404. A vulnerability disclosure policy with security@employinc.com is in SECURITY.md in Lever's GitHub repositories and says there is no bug bounty.",
          "RDAP at rdap.registry.co gives a registration date of 2010-07-20 for lever.co and NameCheap, Inc. as registrar.",
          "The SLA and DPA are published on employinc.com (https://www.employinc.com/lever-sla/ and https://www.employinc.com/dpa/)."
        ],
        "score": 87
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/lever.json",
      "live": {
        "slug": "lever",
        "probe": {
          "target": "https://api.lever.co/v1",
          "method": "get",
          "lastAt": "2026-10-08T21:12:13.94132917Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 606,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 606,
          "p95ms24h": 691,
          "samples24h": 64,
          "samples30d": 64,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 64,
              "ok": 64
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.lever.co",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:06:11.117635796Z"
        },
        "githubStars": 200,
        "securityTxt": {
          "url": "https://lever.co/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:47.673975745Z"
        },
        "pages": [
          {
            "url": "https://hire.lever.co/developer/updates",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:20:52.275745136Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "721e91eb9091"
          },
          {
            "url": "https://www.employinc.com/privacy-notice-services/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:27:36.644757071Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "8a719a587b02"
          },
          {
            "url": "https://www.lever.co/legal/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:40.54053301Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1e3f81b481ff"
          }
        ],
        "updatedAt": "2026-10-08T21:12:13.94132917Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Bullhorn, Inc.",
        "b": "Employ, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://rest.bullhornstaffing.com/rest-services",
        "b": "https://api.lever.co/v1",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under a Bullhorn customer or partner agreement that is not published, with a public API Fair Use Policy. The `sdk-rest` Java library and the `@bullhorn/taurus` and `@bullhorn/bullhorn-types` packages are MIT per npm and the repositories",
        "b": "Proprietary service under Lever's terms of service. The postings-api and integrator-resources repositories on GitHub hold documentation and example code",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-29",
        "b": "2026-04-30",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2023-08-25",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-20",
        "b": "2023-09-25",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "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": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "13 stars, 1.7k npm/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Lever scores 53.6 (D) on agent readiness against Bullhorn's 46.7 (D), and leads in 4 of 7 scored categories. Bullhorn leads on maintenance \u0026 community.",
        "question": "Which is better for AI agents, Bullhorn or Lever?"
      },
      {
        "answer": "Bullhorn uses an OAuth sign-in. Lever takes an API key or an OAuth sign-in.",
        "question": "Do Bullhorn and Lever need an API key?"
      },
      {
        "answer": "Yes. Bullhorn has a hosted endpoint at https://rest.bullhornstaffing.com/rest-services and Lever at https://api.lever.co/v1.",
        "question": "Can an agent call Bullhorn and Lever without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Maintenance \u0026 community, 56 against 21"
        ],
        "also": null,
        "goodFor": "An integration built for a staffing agency that already runs on Bullhorn, with Bullhorn's permission for AI use in writing, and needs candidates, job orders, submissions and placements.",
        "slug": "bullhorn",
        "watchFor": "The API Fair Use Policy of 17 December 2025 bars connecting third-party AI or LLM tools, or MCP, without Bullhorn's explicit written permission"
      },
      {
        "aheadOn": [
          "Reliability, 73 against 53",
          "Security \u0026 auth, 60 against 31",
          "Transparency \u0026 trust, 75 against 67"
        ],
        "also": null,
        "goodFor": "An agent working inside a company that already runs Lever, for reading the pipeline, adding candidates, moving stages, writing notes and feedback and scheduling externally managed interviews.",
        "slug": "lever",
        "watchFor": "No public price, free tier or self-serve signup. OAuth apps and sandbox accounts are issued by Lever staff after a partner application"
      }
    ],
    "job": {
      "capability": "recruiting.candidates",
      "name": "Recruiting candidates"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/ashby-vs-bullhorn.json",
        "title": "Ashby vs Bullhorn",
        "url": "https://www.anchorterminal.com/compare/ashby-vs-bullhorn"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ashby-vs-lever.json",
        "title": "Ashby vs Lever",
        "url": "https://www.anchorterminal.com/compare/ashby-vs-lever"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bullhorn-vs-gem.json",
        "title": "Bullhorn vs Gem",
        "url": "https://www.anchorterminal.com/compare/bullhorn-vs-gem"
      },
      {
        "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-pinpoint.json",
        "title": "Bullhorn vs Pinpoint",
        "url": "https://www.anchorterminal.com/compare/bullhorn-vs-pinpoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bullhorn-vs-recruitee.json",
        "title": "Bullhorn vs Recruitee",
        "url": "https://www.anchorterminal.com/compare/bullhorn-vs-recruitee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bullhorn-vs-smartrecruiters.json",
        "title": "Bullhorn vs SmartRecruiters",
        "url": "https://www.anchorterminal.com/compare/bullhorn-vs-smartrecruiters"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bullhorn-vs-workable.json",
        "title": "Bullhorn vs Workable",
        "url": "https://www.anchorterminal.com/compare/bullhorn-vs-workable"
      },
      {
        "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-lever.json",
        "title": "Gem vs Lever",
        "url": "https://www.anchorterminal.com/compare/gem-vs-lever"
      },
      {
        "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/lever-vs-pinpoint.json",
        "title": "Lever vs Pinpoint",
        "url": "https://www.anchorterminal.com/compare/lever-vs-pinpoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lever-vs-recruitee.json",
        "title": "Lever vs Recruitee",
        "url": "https://www.anchorterminal.com/compare/lever-vs-recruitee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lever-vs-smartrecruiters.json",
        "title": "Lever vs SmartRecruiters",
        "url": "https://www.anchorterminal.com/compare/lever-vs-smartrecruiters"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lever-vs-workable.json",
        "title": "Lever vs Workable",
        "url": "https://www.anchorterminal.com/compare/lever-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"
      }
    ],
    "scores": [
      {
        "bullhorn": 53,
        "by": 20,
        "edge": "lever",
        "key": "reliability",
        "lever": 73,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "bullhorn": 55,
        "by": 0,
        "edge": "",
        "key": "schema",
        "lever": 55,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "bullhorn": 64,
        "by": 1,
        "edge": "lever",
        "key": "ergonomics",
        "lever": 65,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "bullhorn": 31,
        "by": 29,
        "edge": "lever",
        "key": "security",
        "lever": 60,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "bullhorn": 5,
        "by": 0,
        "edge": "",
        "key": "payments",
        "lever": 5,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "bullhorn": 56,
        "by": 35,
        "edge": "bullhorn",
        "key": "maintenance",
        "lever": 21,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "bullhorn": 67,
        "by": 8,
        "edge": "lever",
        "key": "transparency",
        "lever": 75,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Lever scores 53.6 (D) on agent readiness against Bullhorn's 46.7 (D), and leads in 4 of 7 scored categories. Bullhorn leads on maintenance \u0026 community. Both do recruiting candidates.",
    "verdicts": {
      "bullhorn": "The REST API covers 91 documented entities with required field selection, Lucene and JPQL queries and an event queue. Access is by support ticket or a paid partner contract, and the API Fair Use Policy bars connecting third-party AI or LLM tools or MCP without Bullhorn's written permission. No OpenAPI file or numeric rate limit was found.",
      "lever": "The Data API covers about 100 operations with read and write OAuth scopes per resource, field selection and a 99.9 per cent uptime commitment. Access depends on a paying customer or partner approval, with no public price, no OpenAPI file and no official SDK. The status page records three critical incidents between 14 July and 21 August 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bullhorn-vs-lever",
    "json": "https://www.anchorterminal.com/compare/bullhorn-vs-lever.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bullhorn-vs-lever.md",
    "slim": "https://www.anchorterminal.com/compare/bullhorn-vs-lever.min.md"
  },
  "markdown": "Lever scores 53.6 (D) on agent readiness against Bullhorn's 46.7 (D), and leads in 4 of 7 scored categories. Bullhorn leads on maintenance \u0026 community. Both do recruiting candidates.\n\n- Bullhorn: grade D, 46.7/100, rank #644 of 722. Markdown https://www.anchorterminal.com/tools/bullhorn.md · JSON https://www.anchorterminal.com/api/v1/tools/bullhorn.json\n- Lever: grade D, 53.6/100, rank #541 of 722. Markdown https://www.anchorterminal.com/tools/lever.md · JSON https://www.anchorterminal.com/api/v1/tools/lever.json\n\n## Which one, for what\n\n### Bullhorn (D)\n\nGood for: An integration built for a staffing agency that already runs on Bullhorn, with Bullhorn's permission for AI use in writing, and needs candidates, job orders, submissions and placements.\n\nAhead on:\n- Maintenance \u0026 community, 56 against 21\n\nWatch for: The API Fair Use Policy of 17 December 2025 bars connecting third-party AI or LLM tools, or MCP, without Bullhorn's explicit written permission\n\n### Lever (D)\n\nGood for: An agent working inside a company that already runs Lever, for reading the pipeline, adding candidates, moving stages, writing notes and feedback and scheduling externally managed interviews.\n\nAhead on:\n- Reliability, 73 against 53\n- Security \u0026 auth, 60 against 31\n- Transparency \u0026 trust, 75 against 67\n\nWatch for: No public price, free tier or self-serve signup. OAuth apps and sandbox accounts are issued by Lever staff after a partner application\n\n\n## Score by category\n\n| Category | Weight | Bullhorn | Lever | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 53 | 73 | Lever +20 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 55 | 55 | even |\n| Agent ergonomics | 13% (16.2 this run) | 64 | 65 | Lever +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 31 | 60 | Lever +29 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 5 | 5 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 56 | 21 | Bullhorn +35 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 67 | 75 | Lever +8 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **46.7 · D** | **53.6 · D** | |\n\n## Facts side by side\n\n| Fact | Bullhorn | Lever |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Bullhorn, Inc. | Employ, Inc. |\n| Hosted endpoint | `https://rest.bullhornstaffing.com/rest-services` | `https://api.lever.co/v1` |\n| Transports | HTTP | HTTP |\n| Auth | OAuth | OAuth or key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under a Bullhorn customer or partner agreement that is not published, with a public API Fair Use Policy. The `sdk-rest` Java library and the `@bullhorn/taurus` and `@bullhorn/bullhorn-types` packages are MIT per npm and the repositories | Proprietary service under Lever's terms of service. The postings-api and integrator-resources repositories on GitHub hold documentation and example code |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-09-29 | 2026-04-30 |\n| Terms last updated | no date given | 2023-08-25 |\n| Privacy policy last updated | 2026-05-20 | 2023-09-25 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | 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 | yes |\n| Popularity | 13 stars, 1.7k npm/wk | none |\n\n## Verdicts\n\n**Bullhorn.** The REST API covers 91 documented entities with required field selection, Lucene and JPQL queries and an event queue. Access is by support ticket or a paid partner contract, and the API Fair Use Policy bars connecting third-party AI or LLM tools or MCP without Bullhorn's written permission. No OpenAPI file or numeric rate limit was found.\n\n**Lever.** The Data API covers about 100 operations with read and write OAuth scopes per resource, field selection and a 99.9 per cent uptime commitment. Access depends on a paying customer or partner approval, with no public price, no OpenAPI file and no official SDK. The status page records three critical incidents between 14 July and 21 August 2026.\n\n## Before you call either\n\n### Bullhorn\n\n1. Confirm the customer holds Bullhorn's written permission for AI or LLM access before any call. The API Fair Use Policy forbids it otherwise\n2. Call `/rest-services/loginInfo?username=` first to learn the data centre, then use the returned OAuth and REST URLs and follow any 307 redirect\n3. Log in once and reuse `BhRestToken` until a call returns 401, then use the refresh token. Bullhorn limits login rates and may block frequent logins\n4. Send `BhRestToken` as a header, never in the URL, and always pass `fields`. `fields=*` is blocked outside `/meta`\n5. On 429 wait one second and retry. Writes have no idempotency key, so read the record back before repeating a PUT\n\n### Lever\n\n1. Send `perform_as` with a Lever user id on creates and most updates. Opportunity, note, feedback, panel and interview writes reject requests without it\n2. Use the Opportunities endpoints. The Candidates endpoints were deprecated in 2020 and the old candidate id works as the opportunity id\n3. Stay under 10 requests a second per key and back off exponentially on 429 and 503. Application POSTs are limited to 2 a second\n4. Create interviews on a panel with `externallyManaged` true. Panels made in the Lever app can't be changed through the API\n5. Pass `include` to trim fields and follow `next` while `hasNext` is true. An `offset` must come from a previous response\n6. Send a full object on PUT to panels and interviews. Missing fields are deleted\n\n## Questions\n\n### Which is better for AI agents, Bullhorn or Lever?\n\nLever scores 53.6 (D) on agent readiness against Bullhorn's 46.7 (D), and leads in 4 of 7 scored categories. Bullhorn leads on maintenance \u0026 community.\n\n### Do Bullhorn and Lever need an API key?\n\nBullhorn uses an OAuth sign-in. Lever takes an API key or an OAuth sign-in.\n\n### Can an agent call Bullhorn and Lever without installing anything?\n\nYes. Bullhorn has a hosted endpoint at https://rest.bullhornstaffing.com/rest-services and Lever at https://api.lever.co/v1.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/bullhorn-vs-lever.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bullhorn-vs-lever.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"bullhorn\", \"b\": \"lever\"}`. From a terminal: `anchor compare bullhorn lever`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bullhorn.json and https://www.anchorterminal.com/api/v1/tools/lever.json\n\n## Other comparisons with Bullhorn or Lever\n\n- [Ashby vs Bullhorn](https://www.anchorterminal.com/compare/ashby-vs-bullhorn.md)\n- [Ashby vs Lever](https://www.anchorterminal.com/compare/ashby-vs-lever.md)\n- [Bullhorn vs Gem](https://www.anchorterminal.com/compare/bullhorn-vs-gem.md)\n- [Bullhorn vs Greenhouse](https://www.anchorterminal.com/compare/bullhorn-vs-greenhouse.md)\n- [Bullhorn vs Pinpoint](https://www.anchorterminal.com/compare/bullhorn-vs-pinpoint.md)\n- [Bullhorn vs Recruitee](https://www.anchorterminal.com/compare/bullhorn-vs-recruitee.md)\n- [Bullhorn vs SmartRecruiters](https://www.anchorterminal.com/compare/bullhorn-vs-smartrecruiters.md)\n- [Bullhorn vs Workable](https://www.anchorterminal.com/compare/bullhorn-vs-workable.md)\n- [Bullhorn vs Zoho Recruit](https://www.anchorterminal.com/compare/bullhorn-vs-zoho-recruit.md)\n- [Gem vs Lever](https://www.anchorterminal.com/compare/gem-vs-lever.md)\n- [Greenhouse vs Lever](https://www.anchorterminal.com/compare/greenhouse-vs-lever.md)\n- [Lever vs Pinpoint](https://www.anchorterminal.com/compare/lever-vs-pinpoint.md)\n- [Lever vs Recruitee](https://www.anchorterminal.com/compare/lever-vs-recruitee.md)\n- [Lever vs SmartRecruiters](https://www.anchorterminal.com/compare/lever-vs-smartrecruiters.md)\n- [Lever vs Workable](https://www.anchorterminal.com/compare/lever-vs-workable.md)\n- [Lever vs Zoho Recruit](https://www.anchorterminal.com/compare/lever-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": "Bullhorn vs Lever",
        "url": ""
      }
    ],
    "description": "Lever scores 53.6 (D) on agent readiness against Bullhorn's 46.7 (D), and leads in 4 of 7 scored categories. Bullhorn leads on maintenance \u0026 community. Both do recruiting candidates. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Bullhorn D 46.7",
      "Lever D 53.6",
      "scores"
    ],
    "h1": "Bullhorn vs Lever",
    "image": "https://www.anchorterminal.com/assets/og/compare-bullhorn-vs-lever.png",
    "path": "/compare/bullhorn-vs-lever",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Bullhorn vs Lever for AI agents, D 46.7 vs D 53.6 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/bullhorn-vs-lever"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 680
  },
  "version": 1
}
