Developers

CertifyForce API

A free, read-only JSON API for Salesforce certification data: the catalog, official exam facts and outlines, and free sample practice questions with answers, explanations and documentation sources. The full question banks are not part of the API.

Basics

  • Base URL: https://www.certifyforce.com/api/v1
  • Authentication: none. Every endpoint is a public GET.
  • Format: JSON. CORS is open, and responses are cached for up to an hour.
  • Specification: OpenAPI 3.1 at /openapi.json. Every operation has an operationId, so it imports straight into function-calling tools.
  • Markdown: every public page also answers Accept: text/markdown, and /llms.txt indexes them all.

Endpoints

GET/api/v1/certifications

listCertifications: Every Salesforce certification CertifyForce covers, with level, job roles, prerequisite, official exam facts (question count, time limit, passing score, cost) and the number of verified practice questions.

curl https://www.certifyforce.com/api/v1/certifications
{
  "certifications": [
    {
      "slug": "platform-administrator",
      "displayName": "Platform Administrator",
      "level": "Foundational",
      "examFacts": { "scoredQuestions": 60, "timeLimitMinutes": 105, "passingScorePercent": 68, ... },
      "reviewedQuestionCount": 312,
      "hasFreeQuestions": true,
      "links": { "self": "https://www.certifyforce.com/api/v1/certifications/platform-administrator", ... }
    },
    ...
  ]
}

GET/api/v1/certifications/{slug}

getCertification: Exam facts plus the complete official exam outline: every section with its weight and the topics it covers.

curl https://www.certifyforce.com/api/v1/certifications/agentforce-specialist
{
  "slug": "agentforce-specialist",
  "outline": [
    { "name": "...", "weightPercentage": 30, "topics": ["..."] },
    ...
  ],
  "mockExam": { "questions": 60, "timeLimitMinutes": 105 },
  ...
}

GET/api/v1/certifications/{slug}/free-questions

listFreeQuestions: A public sample of reviewed practice questions drawn from every exam section, with the correct answers, an explanation and the Salesforce documentation sources for each.

curl https://www.certifyforce.com/api/v1/certifications/platform-developer-1/free-questions
{
  "slug": "platform-developer-1",
  "questions": [
    {
      "id": "pd-...-001",
      "type": "single",
      "question": "...",
      "options": [{ "id": "a", "text": "..." }, ...],
      "correctAnswers": ["b"],
      "explanation": "...",
      "sources": [{ "title": "...", "url": "https://developer.salesforce.com/..." }]
    },
    ...
  ]
}

Errors

Errors are JSON with the HTTP status, a stable code (not_found, no_free_questions or rate_limited), a message, and a hint that says what to try next. Unknown paths under /api return the same shape.

HTTP/1.1 404 Not Found
Content-Type: application/json

{
  "error": {
    "status": 404,
    "code": "not_found",
    "message": "No certification with slug \"admin\".",
    "hint": "Call GET /api/v1/certifications for the list of valid slugs.",
    "docs": "https://www.certifyforce.com/docs",
    "openapi": "https://www.certifyforce.com/openapi.json"
  }
}

Rate limits

Each client IP can make 60 requests per 60 seconds. Every response carries the IETF rate-limit headers, so you can pace yourself without guessing:

RateLimit-Policy: "default";q=60;w=60
RateLimit: "default";r=57;t=42

r is the requests left in the current window and t the seconds until it resets. Over the limit, the API returns 429 with a Retry-After header and a rate_limited error body. Responses are cached, so fetching each resource once an hour is plenty.

Versioning and deprecation

  • The version is in the path (/api/v1). Within v1 we only make additive changes: new endpoints, new optional fields and new enum values. Fields are never removed or renamed and their types never change.
  • A breaking change ships as a new version (/api/v2) and the old version keeps working for at least 6 months afterwards.
  • During that period every response from the old version carries a Deprecation header (RFC 9745), a Sunset header with the shutdown date (RFC 8594) and a Link to the migration notes. The change is also announced on this page and in the OpenAPI changelog.
  • v1 has no deprecations today. Full policy and changelog: API versioning and deprecation policy.

Terms and contact

Use the data freely, and link back to the CertifyForce page each item came from (every response includes the links). Exam facts are verified against the official Salesforce exam guides. CertifyForce is not affiliated with or endorsed by Salesforce. For questions or higher-volume needs, email warren@walters954.com.