Developer documentation — yaduraj.me API

A public, read-only JSON API describing the engineering portfolio of Yaduraj Singh. Built for automated agents and integrations that need structured data instead of scraped HTML.

At a glance

Endpoints

MethodPathOperationDescription
GET/api/healthgetHealthService availability.
GET/api/profilegetProfileBiography, contact links, stats, experience, current work.
GET/api/projectslistProjectsAll projects. Filter with ?featured=true or ?live=true.
GET/api/projects/{id}getProjectByIdOne project including metrics and full case study.
GET/api/stackgetStackTechnologies grouped by layer.

Valid project ids: aarogya-setu, muhdikhai, cineverse, cortx, gbu-timetable, maakosh, bolonyay.

Example request

`` curl -s https://www.yaduraj.me/api/projects/aarogya-setu ``

Errors

Every failure returns JSON — never an HTML error page — with a stable code and a hint describing how to fix the request.

`` { "error": { "status": 404, "code": "project_not_found", "message": "No project exists with id 'nope'.", "hint": "Valid ids: ... List them at /api/projects.", "documentation": "https://www.yaduraj.me/docs", "specification": "https://www.yaduraj.me/openapi.json" } } ``

Error codes: invalid_parameter, project_not_found, endpoint_not_found, method_not_allowed.

Markdown content negotiation

Send Accept: text/markdown to this page, the homepage, /about, /contact or /privacy and the markdown source is returned instead of HTML, per acceptmarkdown.com. Responses carry Vary: Accept so caches keep the variants separate.

`` curl -H "Accept: text/markdown" https://www.yaduraj.me/about ``

Function calling

The OpenAPI document is 3.1.0, and every operation has a unique operationId, a description, typed parameters and a response schema — so it can be converted directly into LLM tool definitions.