{"openapi":"3.1.0","info":{"title":"Front Matter API","version":"1.0.0","description":"Read and write the front-matter metadata block at the top of Markdown and content files — the --- ... --- header used by Jekyll, Hugo, Astro, Eleventy, Gatsby, Next.js MDX and Obsidian. The parse endpoint splits a document into its structured front-matter data (title, tags, date, draft flags and anything else, as proper JSON), the body content and an optional excerpt, and tells you whether front matter was present. The stringify endpoint does the reverse: give it a JSON object of fields and a body, and it returns a clean Markdown file with a YAML front-matter block. Front matter is read as YAML (which also accepts JSON). Perfect for static-site build steps, headless-CMS imports, content migrations and validating posts. Pure local computation — no key, no third-party service, instant; send large documents via POST. Live, nothing stored. 3 endpoints. Distinct from Markdown rendering / table-of-contents extraction and from YAML/TOML format conversion.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/frontmatter-api","description":"oanor gateway"}],"tags":[{"name":"Front Matter"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/parse":{"get":{"operationId":"get_v1_parse","tags":["Front Matter"],"summary":"Parse front matter from Markdown","description":"","parameters":[{"name":"markdown","in":"query","required":true,"description":"File contents (--- front matter --- + body)","schema":{"type":"string"},"example":"---\ntitle: Hello World\ntags:\n  - intro\n  - demo\ndraft: false\n---\n# Heading\n\nBody text."}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"data":{"tags":["intro","demo"],"draft":false,"title":"Hello World"},"content":"# Heading\n\nBody text.","excerpt":"","is_empty":false,"language":"yaml"},"meta":{"timestamp":"2026-06-02T16:51:46.115Z","request_id":"b64d3cb5-6098-4e71-941a-0114b536302d"},"status":"ok","message":"Parse front matter","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/stringify":{"get":{"operationId":"get_v1_stringify","tags":["Front Matter"],"summary":"Build Markdown with front matter","description":"","parameters":[{"name":"data","in":"query","required":true,"description":"JSON object of fields","schema":{"type":"string"},"example":"{\"title\":\"Hello\",\"draft\":false}"},{"name":"content","in":"query","required":false,"description":"Body text","schema":{"type":"string"},"example":"Body here"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"markdown":"---\ntitle: Hello\ndraft: false\n---\nBody here\n"},"meta":{"timestamp":"2026-06-02T16:51:46.229Z","request_id":"7dd073d3-456b-4d54-818c-7ce0d913c096"},"status":"ok","message":"Build front matter","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"name":"Front Matter API","notes":"Front matter is read as YAML (a superset that also accepts JSON). Send large documents via POST. Nothing is stored.","version":"v1","endpoints":[{"path":"/v1/parse","params":{"markdown":"the file contents (required)"},"returns":"data (front matter), content (body), excerpt, is_empty, language"},{"path":"/v1/stringify","params":{"data":"JSON object of front-matter fields (required)","content":"the body (optional)"},"returns":"a Markdown string with a YAML front-matter block"},{"path":"/v1/meta","params":[],"returns":"this document"}],"description":"Parse and write YAML/JSON front matter in Markdown and content files — the --- ... --- metadata block used by Jekyll, Hugo, Astro, Eleventy, Gatsby and Obsidian. Powered by gray-matter. Pure local, no key."},"meta":{"timestamp":"2026-06-02T16:51:46.331Z","request_id":"2a35ba9a-570a-47f9-9df2-71c2ae2c136f"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":900,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":180,"monthly_call_quota":7500,"rps_limit":8,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2040,"monthly_call_quota":132000,"rps_limit":20,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":5640,"monthly_call_quota":680000,"rps_limit":50,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/frontmatter-api"}