Root Profile JSON
Machine-readable public profile for crawlers and agents.
/profile.json OpenAPI Demo
A static, read-only JSON API for public portfolio data. It exposes profile, CV, project, and blog metadata while excluding private contact messages, admin data, analytics, secrets, and write operations.
Machine-readable public profile for crawlers and agents.
/profile.json Machine-readable public CV data.
/cv.json Machine-readable public project status data.
/projects.json Completed hands-on credential evidence.
/certificates.json Public portfolio manifest with projects, endpoints, and claim policy.
/.well-known/portfolio.json Public-only search records for the portfolio assistant.
/public/search-index.json Versioned alias of the public-only search records.
/api/v1/search-index.json Versioned public profile, focus areas, languages, and links.
/api/v1/profile.json Versioned professional experience, selected technical projects, education, skills, and publications data.
/api/v1/cv.json Versioned project summaries, statuses, and technology tags.
/api/v1/projects.json Versioned completed hands-on credential evidence.
/api/v1/certificates.json Versioned machine-readable portfolio manifest.
/api/v1/portfolio.json OpenAPI 3.1 document for this read-only API.
/openapi.json curl https://robinhuang.nz/api/v1/profile.json
const profile = await fetch('/api/v1/profile.json').then((r) => r.json()) import requests
profile = requests.get('https://robinhuang.nz/api/v1/profile.json', timeout=10).json()