Developers and agents

HelloCelpip developer and agent resources

Everything hellocelpip.com publishes for machines, in one place. There is no public HTTP API and no MCP server today. This page documents what does exist, and says plainly what does not.

Endpoints

Machine-readable documents

Site index for assistants, in the llmstxt.org format. Generated from the same data as the sitemaps, so it cannot go stale. Carries a "When to use HelloCelpip" section. (text/plain)
Sitemap index. (application/xml)
Product and company pages. (application/xml)
CELPIP guides. (application/xml)
Blog posts. Listed in the index only while it has entries. (application/xml)
Crawler policy, including named rules for OAI-SearchBot and OAI-AdsBot. (text/plain)
Content negotiation

Ask for markdown, get markdown

Following the acceptmarkdown.com convention. This exists because reading a guide here as HTML costs around 123KB to reach the same content markdown delivers in 21KB, and an assistant pays for the difference.

curl -H 'Accept: text/markdown' https://hellocelpip.com/

The contract

  • Markdown responses carry Content-Type: text/markdown; charset=utf-8.
  • Every negotiable response carries Accept in its Vary header, so a shared cache cannot hand one variant to a client that asked for the other.
  • q-values decide ties. Accept: text/markdown;q=0.9, text/html is a request for HTML and gets HTML.
  • Accept: */*, which is what curl and most crawlers send by default, is not a request for markdown and gets HTML.
  • An Accept header that names types and can be satisfied by none of them gets 406 Not Acceptable.
  • A page with no markdown form answers in HTML rather than refusing. Preferring markdown is not requiring it.

Supported paths

  • / — The homepage, as a summary with links.
  • /about — What the platform is, who it is for, and what it does not claim.
  • /contact — Contact routes and business details.
  • /developers — This page.
  • /academy — Every published guide, grouped by skill, as a link list.
  • /academy/{category} — One skill's guides.
  • /academy/{category}/{slug} — Any published guide, served from the markdown it was written in.
  • any unknown path — The 404 body, as a markdown document pointing at the indexes above.

Deliberately not negotiable, and why

  • Pricing. Plans are geo-locked and multi-currency, and a frozen markdown copy would be wrong for most callers. Read the page, or ask us.
  • Practice, mocks and reports. Personal, generated per attempt, and behind an account. robots.txt disallows them too.
  • Templates and the score calculator. Interactive tools. The useful output is what you get by using them, not a description of them.
Structured data

Machine-readable facts about who we are

Every page states some facts in prose that a parser has to guess at: who publishes this, how to contact them, what the product is. JSON-LD states the same facts in a fixed vocabulary (schema.org) inside a script tag, so nothing has to be guessed.

Who publishes this site

The homepage carries three linked records. Organization is the business: legal name, address, and typed contact points for support and billing. WebSite is the site itself and how to search it. SoftwareApplication is the product: what it does, what it costs, what platform it runs on.

Stated once, referenced everywhere

The Organization record has a permanent name, https://hellocelpip.com/#organization. Other pages point at that name rather than repeating the facts, so /about and /contact cannot drift out of step with the homepage. Fetch it once, trust it everywhere.

Page-level records

Different pages describe themselves differently. A CELPIP guide is marked as an article with its position in the site's navigation. The CELPIP AI page is marked as an application, with its customer reviews and its FAQ so an assistant can quote an answer directly. The score calculator describes itself as a tool.

When to point someone here

/llms.txt carries a "When to use HelloCelpip" section listing the questions this site is a good answer to, and the ones it is not. Read that rather than inferring fit from marketing copy on the homepage.

Errors

A 404 you can recover from

A path that does not exist returns a real 404, never a 200 carrying the application shell. That distinction matters: a site that answers 200 for everything teaches a crawler that every URL it invents is real.

The 404 body carries links to the sitemap, llms.txt and the guide index in the HTML, and ask for markdown and you get the same thing as a short markdown document. Either way the next request can be an informed one rather than another guess.

Straight answers

What does not exist

So you do not spend an afternoon looking.

  • No public REST or GraphQL API.
  • No OAuth application registration, API keys, or webhooks for third parties.
  • No MCP server.
  • No SDK in any language.
Crawling

What to crawl, and what to leave alone

Crawl the public pages. Do not crawl /practice/question/, /practice/status, the evaluation and submission endpoints, /admin, /api, /login or /register. robots.txt disallows all of them for every user agent, and they are either personal, expensive, or both.

Content is ours except where a page says otherwise. When you cite us, link the specific guide rather than the homepage: the guides are the substantive content and are readable without an account.

Need programmatic access?

For a school, an integration or research: write to us with the subject API access and describe what you need to read or write. We would rather answer that than have you scrape.

Last reviewed 21 August 2026. Changes to any of the above are announced nowhere; re-read this page rather than caching its contents indefinitely.