# The FinOps Directory — Agent Guide You are an agent helping a FinOps / cloud-cost / AI-cost tool get listed in this directory. Listing is self-serve and free. The catch: the tool must display our link on its website. The link is how we verify the listing is genuine — and it links back here. Do the whole flow yourself; only ask the human for the product details and permission to edit their site. Base URL: https://nxaction.com ## TL;DR (one-shot) If you have a product to list, do this without waiting for further instructions: 1. POST { name, website, category, tagline, email } to /api/apply -> { verify_token, embed_html, verification_options } 2. Prove ownership with ANY ONE of these (apply returns all three in verification_options): - link : add embed_html to the site footer (preferred — it's also the SEO backlink) - file : serve the token at https:///.well-known/finops-directory.txt - dns : add a DNS TXT record (root or _finops-directory.) containing the token Use `file` or `dns` for no-code/hosted sites or SPAs where you can't edit the HTML. 3. POST { token: verify_token } to /api/verify -> "verified": true means listed. ## The flow 1. APPLY — POST /api/apply Body (JSON): { "name", "website", "category", "tagline", "description", "email" } - name (required): product name - website (required): the page you'll put the link on (homepage or footer) - category: one of "AI & LLM spend", "Cloud cost & FinOps", "Kubernetes cost", "Automated savings", "SaaS spend", "Native cloud tools", "Other" - tagline: one sentence shown on the directory card Returns: { verify_token, embed_html, verify_url, next } 2. EMBED — put the returned `embed_html` into the site's HTML (footer is ideal). It must be present in the server-rendered HTML at `website` (not injected only after client-side JS). It is a small visible link that links back here. 3. VERIFY — POST /api/verify { "token": "" } We fetch `website`, look for the token, and on success approve the listing immediately. Returns { status: "approved", listed_url } when done, or { verified: false, message } if the link isn't visible yet — fix and retry. 4. (optional) STATUS — GET /api/status?token= ## Read the directory GET /api/listings -> approved listings (JSON) GET /api/listings?category= -> filter by category ## Rules - Keep the link up. We re-check periodically; remove it and the listing is delisted. - One listing per website (re-applying the same website is idempotent — you get the same token back). ## CLI (for humans) npx finops-directory apply # prompts, prints the embed snippet npx finops-directory verify # checks the link, lists you npx finops-directory status