Skip to main content

fmartin.ch developer resources

fmartin.ch publishes a small read-only API for the verified profile, speaking, publication, interview, open-source, testimonial, and vulnerability disclosure data shown on the site. It requires no account, API key, token, SDK, or special client.

Quickstart

Send a GET request and parse the JSON response. Every operation has a stable, unique operation ID and a typed response schema in the OpenAPI 3.1 document. The production data is public, so there is no separate sandbox or authentication flow.

curl --fail --silent --show-error https://fmartin.ch/api/v1/profile

curl --fail --silent --show-error https://fmartin.ch/api/v1/sessions

curl --fail --silent --show-error https://fmartin.ch/api/v1/events

curl --fail --silent --show-error https://fmartin.ch/api/v1/contributions

curl --fail --silent --show-error https://fmartin.ch/api/v1/publications

curl --fail --silent --show-error https://fmartin.ch/api/v1/interviews

curl --fail --silent --show-error https://fmartin.ch/api/v1/testimonials

curl --fail --silent --show-error https://fmartin.ch/api/v1/vulnerabilities

Endpoints

  • GET /api/v1/profile: Returns François Martin's biography, professional focus, contact page, and verified profile links.
  • GET /api/v1/sessions: Returns the current catalog of talks, workshops, mentoring sessions, and panel discussions François Martin offers, with completed and scheduled appearance counts as of the published UTC date. Use the events endpoint for historical editions and dated appearances.
  • GET /api/v1/events: Returns past and upcoming speaking appearances with locations, dates, sessions, and published materials.
  • GET /api/v1/contributions: Returns open-source repositories and contribution evidence linked to commits, change requests, and resolved issues.
  • GET /api/v1/publications: Returns François Martin's articles, publications, standards work, and books with source links.
  • GET /api/v1/interviews: Returns interviews François Martin conducted or joined, including participants, topics, shows, and media links.
  • GET /api/v1/testimonials: Returns public testimonials from open-source maintainers and contributors, each linked to its source comment and author profile.
  • GET /api/v1/vulnerabilities: Returns the vulnerabilities François Martin found and reported that have a public CVE record or security advisory, with the CWE of each weakness, impact, affected and fixed versions, the CVSS vector and score, his part in each disclosure, and source links, plus a summary with the count per severity and each affected project's public usage figure with its source and the day it was read.

Errors and caching

API errors use JSON with an error code, human-readable message, resolution hint, and documentation URL. Unknown API paths return HTTP 404. Unsupported write methods return HTTP 405 because this API is read-only. Responses allow cross-origin reads and use revalidation caching, so clients should honor HTTP cache headers instead of assuming that published data never changes.

Agent discovery and Markdown

The llms.txt file explains when an agent should use this site. Every registered top-level page negotiates HTML and Markdown through the Accept header and advertises its explicit Markdown twin with a <link rel="alternate" type="text/markdown"> tag, so /about pairs with /about.md and the home page with /index.md. Session detail pages have no individual Markdown twins. Sessions Markdown and the sessions API describe the current catalog. The Markdown also links historical editions. The event API includes dated appearances, historical session descriptions, and materials. Each HTML session detail page lists its edition's event history. The Markdown sitemap and the XML sitemap list all public content pages.

Machine resources describe the published build. Delivery counts and upcoming/past classifications include their UTC reference date; compare event dates with today's date before describing an appearance as past or upcoming. Content modification dates describe edits to the content, not the date of every deployment.