Machine-readable interfaces to this site, for developers and for autonomous agents. Everything here is public, requires no API key, and needs no signup.
Quickstart
Get structured facts about Stavros in one call:
curl https://stavrospachoundakis.com/api/v1/profile
Fetch the full narrative context:
curl https://stavrospachoundakis.com/llms.txt
Add .md to any page address to get it as Markdown:
curl https://stavrospachoundakis.com/about.md
REST API: /api/v1
Base URL: https://stavrospachoundakis.com/api/v1. Full machine-readable
description: openapi.json
(OpenAPI 3.1).
| Endpoint | Method | Description |
|---|---|---|
/profile |
GET | Complete structured profile: bio, location, employment history, skills, highlights, availability, links. |
/experience |
GET | Employment history. |
/skills |
GET | Skills grouped by discipline. |
/projects |
GET | Projects. |
/posts |
GET | Returns an empty list. This site has no posts. |
Success responses are shaped { "apiVersion": "v1", "data": ..., "meta": ... }.
Authentication
None. There is no API key, OAuth flow, or signup. See auth.md for the full picture.
Versioning and deprecation
The API is versioned in the URL path. Breaking changes ship under a new segment
(/api/v2) and the previous version keeps working. Additive changes (new
fields, new optional parameters, new endpoints) are made in place, so clients
must ignore unknown fields.
A version scheduled for removal is announced on this page and in the OpenAPI description, at least 180 days before it stops responding.
Errors
The API is static, read-only JSON. A path that does not exist returns a plain HTTP 404, and any method other than GET returns 405.
Machine-readable files
| Path | Content type | Description |
|---|---|---|
/llms.txt |
text/plain |
Full structured profile, roles, skills and when-to-use guidance. |
/openapi.json |
application/openapi+json |
OpenAPI 3.1 description of the API above. |
/auth.md |
text/markdown |
How authentication works (it doesn't exist: everything is public). |
/.well-known/ai-catalog.json |
application/json |
Agentic Resource Discovery catalog. |
/sitemap.xml |
application/xml |
Every canonical URL. |
/robots.txt |
text/plain |
Crawl policy. |
Markdown versions
Every page has a Markdown version: add .md to its address (/about.md, and /index.md for the home page). The HTML and Markdown versions are separate files, so there is no content negotiation by Accept header or User-Agent.
Errors and 404s
Unknown paths return a plain HTTP 404, never a 200 with the app shell, so you can trust status codes when probing.
Sandbox
There is no separate sandbox environment, and none is needed: every endpoint is read-only and side-effect free, so production is safe to call directly. Please keep test volume reasonable.
Source code
The repositories behind this site are private. Public profile: github.com/stavroschios.
Contact
Bugs, questions or integration help: use the contact page (human check required).
Machine-readable index for this site:
- Full context: https://stavrospachoundakis.com/llms.txt
- Sitemap: https://stavrospachoundakis.com/sitemap.xml
- Developer portal: https://stavrospachoundakis.com/developers
Add .md to any page address for a Markdown version.