{
  "version": "0.2.0",
  "rubricVersion": "0.9",
  "target": "https://resend.com",
  "host": "resend.com",
  "https": true,
  "measured": {
    "origin": "https://resend.com",
    "host": "resend.com",
    "https": true,
    "url": "https://resend.com/"
  },
  "redirect": null,
  "scannedAt": "2026-10-20T17:05:52.735Z",
  "durationMs": 6780,
  "requests": 60,
  "score": 86.3,
  "parts": {
    "standards": {
      "score": 98.8,
      "share": 0.7,
      "points": {
        "earned": 90.875,
        "available": 92
      },
      "counts": {
        "pass": 19,
        "warn": 2,
        "fail": 0,
        "na": 7,
        "total": 28
      }
    },
    "conventions": {
      "score": 57.1,
      "share": 0.3,
      "points": {
        "earned": 4,
        "available": 7
      },
      "counts": {
        "pass": 4,
        "warn": 0,
        "fail": 3,
        "na": 1,
        "total": 8
      }
    }
  },
  "previous": null,
  "level": 5,
  "levelName": "Agent-native",
  "levelBlurb": "The action surface is discoverable, its auth is described, and its status is published.",
  "levelCeiling": 5,
  "verdict": "Agent-native",
  "confidence": 100,
  "confidenceLabel": "high",
  "fingerprint": "4fae6b60df53d147252d8cfe5d83d782ecf051ec4fe4576599a90e7e59d7cf32",
  "modules": {
    "commerce": {
      "inScope": false,
      "signals": []
    },
    "agentApi": {
      "inScope": true,
      "kinds": [
        "mcp",
        "oauth",
        "rest-api"
      ],
      "signals": [
        {
          "kind": "rest-api",
          "evidence": "Link rel=\"api-catalog\" </.well-known/api-catalog> on the homepage"
        },
        {
          "kind": "rest-api",
          "evidence": "/.well-known/api-catalog lists 1 linkset entry"
        },
        {
          "kind": "rest-api",
          "evidence": "/openapi.json is an OpenAPI 3.0 document"
        },
        {
          "kind": "oauth",
          "evidence": "/.well-known/oauth-protected-resource names resource https://api.resend.com"
        },
        {
          "kind": "oauth",
          "evidence": "/.well-known/oauth-authorization-server names issuer https://api.resend.com"
        },
        {
          "kind": "mcp",
          "evidence": "/.well-known/ai-catalog.json lists an MCP server card"
        }
      ]
    }
  },
  "isCommerce": false,
  "commerceSignals": [],
  "blocked": null,
  "blockedNote": null,
  "deadline": {
    "ms": 60000,
    "reached": false
  },
  "profile": {
    "id": "saas",
    "identified": true,
    "declared": false,
    "ambiguous": [],
    "evidence": [
      "SaaS / software product (score 7), matched: SoftwareApplication schema; A pricing page responds; A documentation path responds."
    ],
    "scores": [
      {
        "id": "saas",
        "score": 7,
        "signals": [
          "SoftwareApplication schema",
          "A pricing page responds",
          "A documentation path responds"
        ]
      },
      {
        "id": "api",
        "score": 5,
        "signals": [
          "An OpenAPI document responds",
          "A documentation path responds"
        ]
      },
      {
        "id": "publisher",
        "score": 3,
        "signals": [
          "The homepage links a blog index",
          "Subscription copy"
        ]
      },
      {
        "id": "services",
        "score": 2,
        "signals": [
          "A contact path responds",
          "A pricing path responds"
        ]
      }
    ]
  },
  "categories": [
    {
      "id": "discoverability",
      "label": "Discoverability",
      "score": 100,
      "counted": true,
      "pass": 6,
      "warn": 0,
      "fail": 0,
      "na": 0,
      "total": 6,
      "unscored": {
        "present": 0,
        "defective": 0,
        "absent": 1
      }
    },
    {
      "id": "content",
      "label": "Content",
      "score": 98.6,
      "counted": true,
      "pass": 8,
      "warn": 1,
      "fail": 0,
      "na": 1,
      "total": 10,
      "unscored": {
        "present": 1,
        "defective": 0,
        "absent": 0
      }
    },
    {
      "id": "botaccess",
      "label": "Crawler access",
      "score": 100,
      "counted": true,
      "pass": 1,
      "warn": 0,
      "fail": 0,
      "na": 0,
      "total": 1,
      "unscored": {
        "present": 1,
        "defective": 1,
        "absent": 0
      }
    },
    {
      "id": "protocol",
      "label": "API and agent",
      "score": 97.5,
      "counted": true,
      "pass": 4,
      "warn": 1,
      "fail": 0,
      "na": 1,
      "total": 6,
      "unscored": {
        "present": 0,
        "defective": 4,
        "absent": 2
      }
    },
    {
      "id": "commerce",
      "label": "Commerce",
      "score": null,
      "counted": false,
      "pass": 0,
      "warn": 0,
      "fail": 0,
      "na": 5,
      "total": 5,
      "unscored": {
        "present": 0,
        "defective": 0,
        "absent": 0
      }
    }
  ],
  "checks": [
    {
      "id": "reachable",
      "category": "discoverability",
      "module": "core",
      "tier": "essential",
      "weight": 3,
      "conditional": false,
      "label": "Readable homepage",
      "why": "The homepage is the first URL every agent requests. An error or an empty page gives it nothing to read.",
      "skill": "agent-access",
      "standards": [],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "HTTP 200 text/html, 410 KB, 2121 words of visible text.",
      "evidence": "HTTP 200 · text/html · 410 KB",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "robots-txt",
      "category": "botaccess",
      "module": "core",
      "tier": "essential",
      "weight": 2,
      "conditional": false,
      "label": "robots.txt crawl policy",
      "why": "Crawlers read robots.txt before they fetch a page (RFC 9309). Its Sitemap line tells them where the URL list is.",
      "skill": "robots-txt",
      "standards": [
        "RFC 9309"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "/robots.txt has 1 group and 1 rule across all groups, and 1 Sitemap line.",
      "evidence": "HTTP 200 · text/plain · 143 bytes · User-agent: * Allow: / Content-Signal: ai-train=yes, search=yes, ai-input=yes Sitemap: https://resend.com/sitemap.xml Host: https://resend.…",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "sitemap-xml",
      "category": "discoverability",
      "module": "core",
      "tier": "essential",
      "weight": 2,
      "conditional": false,
      "label": "XML sitemap",
      "why": "A sitemap lists the URLs a site wants crawled. Google says a small, well-linked site may not need one.",
      "skill": "sitemap",
      "standards": [],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "Sitemap index https://resend.com/sitemap.xml parses and lists 12 child sitemaps. This scan does not read the child sitemaps.",
      "evidence": "HTTP 200 · application/xml · 942 bytes · root <sitemapindex>",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "llms-txt",
      "category": "discoverability",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "/llms.txt published and well-structured",
      "why": "A 2024 proposal for a markdown index of a site. Google Search does not use it.",
      "skill": "llms-txt",
      "standards": [
        "llmstxt.org"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "/llms.txt opens with H1 \"Resend\", with 19 H2 link sections and 58 links, 8.1 KB. The scan requested 13 links it names, and each answered 2xx. Not requested: 18 links on another origin and 25 same-origin links (the scan samples up to 6).",
      "evidence": "HTTP 200 · text/plain · 8.1 KB · headings: Resend | When to use Resend | Setup | Command line tool | MCP Server | Skills | Documentation | Support | OpenAPI spec …",
      "fix": null,
      "part": "conventions"
    },
    {
      "id": "link-headers",
      "category": "discoverability",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Discovery via Link response headers",
      "why": "A Link header (RFC 8288) points a client at a resource before it parses the HTML.",
      "skill": "link-headers",
      "standards": [
        "RFC 8288"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "The homepage Link header names the API catalog at /.well-known/api-catalog (rel=api-catalog). It does not name /llms.txt, the OpenAPI document at /openapi.json, and a markdown variant of the homepage.",
      "evidence": "link: </.well-known/api-catalog>; rel=\"api-catalog\"",
      "fix": null,
      "part": "conventions"
    },
    {
      "id": "canonical",
      "category": "discoverability",
      "module": "core",
      "tier": "recommended",
      "weight": 2,
      "conditional": false,
      "label": "Canonical URL",
      "why": "A canonical link names the one URL a page is known by. Google treats it and redirects as canonical signals.",
      "skill": "canonical",
      "standards": [
        "RFC 6596"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "Canonical https://resend.com/ matches the page reached.",
      "evidence": "<link rel=\"canonical\" href=\"https://resend.com\">",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "http-caching",
      "category": "discoverability",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "HTTP caching of the homepage",
      "why": "Cache-Control says how long the homepage may be reused. A validator lets a crawler ask whether it changed, and a 304 answer skips the body.",
      "skill": "http-caching",
      "standards": [
        "RFC 9111",
        "RFC 9110"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "The homepage sends Cache-Control \"public, max-age=0, must-revalidate\" and ETag, and a request with If-None-Match was answered HTTP 304 Not Modified.",
      "evidence": "Cache-Control: public, max-age=0, must-revalidate · ETag: W/\"p2p9rpm6398zxl\" · Last-Modified: (none) · conditional GET with If-None-Match: HTTP 304",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "indexing-directives",
      "category": "discoverability",
      "module": "core",
      "tier": "essential",
      "weight": 2,
      "conditional": false,
      "label": "Homepage indexable: no noindex directive",
      "why": "A noindex in a meta tag or in a response header keeps the page out of search results. Bing keeps it out of Copilot too.",
      "skill": "indexing-directives",
      "standards": [],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "No noindex: the homepage states <meta name=\"robots\" content=\"index, follow\"> and <meta name=\"googlebot\" content=\"index, follow\">, and none of them asks to leave the page out.",
      "evidence": "<meta name=\"robots\" content=\"index, follow\"> · <meta name=\"googlebot\" content=\"index, follow\">",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "not-found-status",
      "category": "discoverability",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "A real 404 for a missing page",
      "why": "A URL that does not exist answers 404 or 410 (RFC 9110). A 200 there makes every mistyped link look like a page.",
      "skill": "not-found-status",
      "standards": [
        "RFC 9110"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "/aws-probe-5a36f3ef766b, a path that does not exist, answered HTTP 404.",
      "evidence": "HTTP 404 · text/html · first 16 KB read",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "structured-errors",
      "category": "discoverability",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Structured errors for JSON requests",
      "why": "An agent that asks for JSON and gets an HTML error page has to read a page meant for people. RFC 9457 defines a JSON error format.",
      "skill": "problem-details",
      "standards": [
        "RFC 9457"
      ],
      "status": "fail",
      "points": 0,
      "counted": true,
      "excluded": null,
      "detail": "Not used: /aws-probe-5a36f3ef766b, asked for JSON, answered HTTP 404 with an HTML page, not a JSON error.",
      "evidence": "HTTP 404 · text/html · first 16 KB read",
      "fix": "{\n  \"type\": \"about:blank\",\n  \"title\": \"Not Found\",\n  \"status\": 404,\n  \"detail\": \"Nothing is published at this address.\"\n}\n",
      "fixNote": "Send this with Content-Type: application/problem+json and the status 404 when a request for a missing path asks for JSON. Browsers can keep the HTML page (RFC 9457).",
      "part": "conventions"
    },
    {
      "id": "llms-full",
      "category": "discoverability",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "/llms-full.txt expanded context",
      "why": "A convention that puts a site's text in one file. The llms.txt proposal does not define it.",
      "skill": "llms-full-txt",
      "standards": [],
      "status": "fail",
      "points": 0,
      "counted": true,
      "excluded": null,
      "detail": "/llms-full.txt is a list of links, not page text: 56 link lines of 92 lines, 925 words in 9.2 KB.",
      "evidence": "HTTP 200 · text/plain · 9.2 KB · # Resend > Resend is the email API for developers. Send transactional and marketing emails at scale with a simple, mode…",
      "fix": null,
      "defect": true,
      "part": "conventions"
    },
    {
      "id": "markdown-negotiation",
      "category": "content",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Markdown content negotiation",
      "why": "Some coding agents ask for text/markdown. Google Search does not use markdown.",
      "skill": "markdown-negotiation",
      "standards": [
        "RFC 9110"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "The homepage serves text/markdown to `Accept: text/markdown, text/html;q=0.5`, with Vary: Accept, accept-encoding (HTTP 200).",
      "evidence": "HTTP 200 · text/markdown · Vary: Accept, accept-encoding · markdown body: yes",
      "fix": null,
      "part": "conventions"
    },
    {
      "id": "headings",
      "category": "content",
      "module": "core",
      "tier": "essential",
      "weight": 2,
      "conditional": false,
      "label": "Semantic heading structure",
      "why": "Headings outline the page for screen readers and for any client that splits text by section.",
      "skill": "semantic-headings",
      "standards": [
        "WCAG 2.2"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "1 H1, 14 H2s, and 12 H3s in an outline of 27 headings, with no skipped level.",
      "evidence": "outline: H1 H2 H2 H2 H2 H2 H2 H2 H2 H2 H2 H2 H3 H3 H3 H3 H3 H3 H3 H3 H3 H2 H3 H3 H3 H2 H2",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "meta",
      "category": "content",
      "module": "core",
      "tier": "essential",
      "weight": 2,
      "conditional": false,
      "label": "Title and description",
      "why": "The title and the description say what a page is about. Google uses them for the title link and the snippet.",
      "skill": "page-metadata",
      "standards": [],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "Title \"Resend · Email for developers\" (29 characters) and a description of 106 characters.",
      "evidence": "title (29 characters): Resend · Email for developers · description (106 characters): The best way to reach humans instead of spam folders. Deliver transactional and marketing emails at scale. · first H1: Email for developers",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "jsonld",
      "category": "content",
      "module": "core",
      "tier": "essential",
      "weight": 3,
      "conditional": false,
      "label": "JSON-LD structured data",
      "why": "Structured data names the entity a page describes. Google reads JSON-LD, Microdata and RDFa alike.",
      "skill": "structured-data",
      "standards": [
        "schema.org"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "1 JSON-LD block parses, and the page entity, Organization \"Resend\", is stated under a schema.org @context.",
      "evidence": "JSON-LD: 1 blocks, 1 parsed · schema.org @context: yes · Microdata: 0 items · RDFa: 0 items · top-level types: Organization, WebSite, SoftwareApplication, WebPage, BreadcrumbList",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "lang",
      "category": "content",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Language declaration and multilingual access",
      "why": "The lang attribute names the language of the text. WCAG 3.1.1 requires it at level A. Google reads hreflang, not lang.",
      "skill": "language-declaration",
      "standards": [
        "WCAG 2.2",
        "BCP 47"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "html lang=\"en\" is a well-formed BCP 47 tag, with no hreflang alternates.",
      "evidence": "html lang=\"en\" · alternates: none · content-language: (none)",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "no-js-fallback",
      "category": "content",
      "module": "core",
      "tier": "essential",
      "weight": 3,
      "conditional": false,
      "label": "Content that needs no JavaScript",
      "why": "Several AI crawlers do not run JavaScript. Text that appears only after scripts run is invisible to them.",
      "skill": "server-rendering",
      "standards": [],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "14345 characters of text are in the HTML before any script runs.",
      "evidence": "static text: 14345 characters · inside <noscript>: 0 characters · markup: 419817 characters",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "spa-fallback",
      "category": "content",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Per-page content separation (no SPA fallback)",
      "why": "A route that answers every URL with the same page makes every URL look alike to a crawler.",
      "skill": "server-rendering",
      "standards": [
        "RFC 9110"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "The homepage and /about have different titles (\"Resend · Email for developers\" and \"About · Resend\") and different main text (15% word overlap).",
      "evidence": "compared / with /about · titles \"Resend · Email for developers\" / \"About · Resend\" · skeleton 34% · main-text word overlap 15% · main text 4781 characters",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "viewport",
      "category": "content",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Responsive markup",
      "why": "Google indexes the smartphone rendering of a page. A viewport that blocks zoom fails WCAG 1.4.4.",
      "skill": "responsive-markup",
      "standards": [],
      "status": "warn",
      "points": 0.5,
      "counted": true,
      "excluded": null,
      "detail": "viewport content \"width=device-width, initial-scale=1, maximum-scale=1\" sets maximum-scale=1, which stops a reader from zooming. WCAG 1.4.4 asks that text can be enlarged to 200%.",
      "evidence": "viewport meta: width=device-width, initial-scale=1, maximum-scale=1",
      "fix": "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">",
      "part": "standards"
    },
    {
      "id": "ai-rules",
      "category": "botaccess",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "AI crawler policy in robots.txt",
      "why": "A crawler follows the robots.txt group that names it, otherwise the * group. A named group states the site's rules for that crawler.",
      "skill": "ai-rules",
      "standards": [
        "RFC 9309"
      ],
      "status": "fail",
      "points": 0,
      "counted": true,
      "excluded": null,
      "detail": "All 18 AI crawler tokens follow the * group (1 rule); none has its own group.",
      "evidence": "* group: 1 rule, allowed, followed by 18 AI crawler tokens · robots.txt: 1 group, 1 rule",
      "fix": null,
      "part": "conventions"
    },
    {
      "id": "content-signal",
      "category": "botaccess",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Content-Signal preferences",
      "why": "Content-Signal states search, ai-input and ai-train preferences in robots.txt. No crawler documents honouring it.",
      "skill": "content-signals",
      "standards": [
        "contentsignals.org"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "robots.txt states Content-Signal search=yes, ai-input=yes, ai-train=yes in the User-agent: * group.",
      "evidence": "robots.txt: ai-train=yes, search=yes, ai-input=yes",
      "fix": null,
      "part": "conventions"
    },
    {
      "id": "mcp-server",
      "category": "protocol",
      "module": "agent-api",
      "tier": "essential",
      "weight": 3,
      "conditional": true,
      "label": "MCP server answers and lists its tools",
      "why": "An agent given the address of an MCP server can call its tools. The scan opens one session to see that the server answers and what it offers.",
      "skill": "mcp-server",
      "standards": [
        "MCP 2025-11-25"
      ],
      "status": "na",
      "points": 0,
      "counted": false,
      "excluded": "out-of-scope",
      "detail": "Not scored: /.well-known/ai-catalog.json lists a server card at https://mcp.resend.com/mcp/server-card, off the scanned origin, which this scan does not request. /mcp answered HTTP 200, which does not signal an MCP server.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    },
    {
      "id": "openapi",
      "category": "protocol",
      "module": "agent-api",
      "tier": "essential",
      "weight": 3,
      "conditional": true,
      "label": "OpenAPI definition",
      "why": "An OpenAPI document describes an HTTP API so a client can call it without guessing.",
      "skill": "openapi",
      "standards": [
        "OpenAPI 3.x"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "OpenAPI 3.0.3 at /openapi.yaml (api-catalog service-desc (/.well-known/api-catalog)) declares info.title \"Resend\", info.version 1.5.0, and 47 paths. Not scored: it is not JSON, and the scan reads operations only from JSON, so none was requested.",
      "evidence": "tried: /openapi.yaml 200",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "oauth-discovery",
      "category": "protocol",
      "module": "agent-api",
      "tier": "essential",
      "weight": 2,
      "conditional": true,
      "label": "OAuth discovery documents",
      "why": "OAuth metadata tells a client where and how to authorise against the API.",
      "skill": "oauth-discovery",
      "standards": [
        "RFC 8414",
        "RFC 9728"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "RFC 8414 metadata at /.well-known/oauth-authorization-server declares issuer https://api.resend.com, authorization_endpoint, token_endpoint, and 1 response type.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    },
    {
      "id": "api-catalog",
      "category": "protocol",
      "module": "agent-api",
      "tier": "recommended",
      "weight": 2,
      "conditional": true,
      "label": "API catalog",
      "why": "An API catalog lists a publisher's APIs in one document at a fixed address (RFC 9727).",
      "skill": "api-catalog",
      "standards": [
        "RFC 9727"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "Linkset at /.well-known/api-catalog carries 1 entry, and 1 of them pairs an anchor with a service-desc link, the first pointing at https://resend.com/openapi.yaml. The scan requested the same-origin service-desc target /openapi.yaml, which answered HTTP 200. Not scored: the service-doc target /docs redirected to https://resend.com/docs/introduction and answered HTTP 200. Not scored: the status target is on status.resend.com, which this scan does not request. Not scored: that target is the API description, not an operation.",
      "evidence": "relations: service-desc, service-doc, status; observed target: /openapi.yaml",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "webmcp",
      "category": "protocol",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "WebMCP browser tool declaration",
      "why": "WebMCP lets a page register tools for an in-browser agent. It is a W3C Community Group draft.",
      "skill": "webmcp",
      "standards": [
        "W3C WebMCP"
      ],
      "status": "na",
      "points": 0,
      "counted": false,
      "excluded": "out-of-scope",
      "detail": "Not scored: the homepage has no form and calls no registerTool, so it offers no task to declare.",
      "evidence": null,
      "fix": null,
      "part": "conventions"
    },
    {
      "id": "docs",
      "category": "protocol",
      "module": "agent-api",
      "tier": "recommended",
      "weight": 2,
      "conditional": true,
      "label": "Documentation reachable",
      "why": "Documentation linked as service-doc (RFC 8631), or from the homepage, is how a client learns the API.",
      "skill": "documentation",
      "standards": [
        "RFC 8631"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "Documentation is reachable at /docs (api-catalog service-doc (/.well-known/api-catalog)) and returns HTTP 200 text/html with 255 readable words.",
      "evidence": "tried: /docs 200 | /docs/dashboard/emails/send-test-emails 200 | /docs/webhooks/introduction 200 | /docs/send-with-nextjs 200 | /documentation 404 | /developers 404 | /gelistiriciler 404",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "pricing-structured",
      "category": "content",
      "module": "core",
      "tier": "recommended",
      "weight": 2,
      "conditional": false,
      "label": "Structured pricing information",
      "why": "A price in markup is read without parsing prose. An Offer with a price and no currency is ambiguous.",
      "skill": "pricing-schema",
      "standards": [
        "schema.org/Offer"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "Homepage markup carries 1 complete price node; the first, Offer \"Free\", states 0 USD.",
      "evidence": "{\"price\":0,\"priceCurrency\":\"USD\",\"where\":\"homepage\"}",
      "fix": null,
      "part": "standards"
    },
    {
      "id": "service-schema",
      "category": "content",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Service/product scope machine-readable",
      "why": "Service markup states what is offered, by whom and where. An incomplete node leaves a client to guess.",
      "skill": "service-schema",
      "standards": [
        "schema.org/Service"
      ],
      "status": "na",
      "points": 0,
      "counted": false,
      "excluded": "out-of-scope",
      "detail": "Not scored: the homepage markup declares no Service-type node.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    },
    {
      "id": "contact",
      "category": "content",
      "module": "core",
      "tier": "recommended",
      "weight": 1,
      "conditional": false,
      "label": "Structured contact information",
      "why": "A ContactPoint in the Organization markup makes the contact route machine-readable.",
      "skill": "contact-schema",
      "standards": [
        "schema.org/Organization"
      ],
      "status": "pass",
      "points": 1,
      "counted": true,
      "excluded": null,
      "detail": "Homepage markup declares 1 organization-type node; Organization \"Resend\" has a ContactPoint of contactType \"customer support\" reachable at support@resend.com.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    },
    {
      "id": "status-page",
      "category": "protocol",
      "module": "agent-api",
      "tier": "recommended",
      "weight": 1,
      "conditional": true,
      "label": "Service status and changelog feed",
      "why": "A status page and a changelog feed say whether the service is up and what changed.",
      "skill": "status-changelog",
      "standards": [
        "RFC 9727",
        "RFC 4287"
      ],
      "status": "warn",
      "points": 0.5,
      "counted": true,
      "excluded": null,
      "detail": "A status page answered at /status (HTTP 200), but the homepage links no status or changelog feed.",
      "evidence": null,
      "fix": "<link rel=\"alternate\" type=\"application/atom+xml\" title=\"Changelog\" href=\"https://resend.com<choose: path of the changelog feed>\">",
      "part": "standards"
    },
    {
      "id": "product-schema",
      "category": "commerce",
      "module": "commerce",
      "tier": "essential",
      "weight": 3,
      "conditional": true,
      "label": "Product/catalog schema",
      "why": "Product and Offer markup on product pages feeds merchant listings.",
      "skill": "product-schema",
      "standards": [
        "schema.org/Product"
      ],
      "status": "na",
      "points": 0,
      "counted": false,
      "excluded": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    },
    {
      "id": "returns",
      "category": "commerce",
      "module": "commerce",
      "tier": "recommended",
      "weight": 1,
      "conditional": true,
      "label": "Return policy machine-readable",
      "why": "A MerchantReturnPolicy states return terms in markup, also under the Organization.",
      "skill": "return-policy-schema",
      "standards": [
        "schema.org/MerchantReturnPolicy"
      ],
      "status": "na",
      "points": 0,
      "counted": false,
      "excluded": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    },
    {
      "id": "inventory-freshness",
      "category": "commerce",
      "module": "commerce",
      "tier": "recommended",
      "weight": 2,
      "conditional": true,
      "label": "Inventory and price freshness",
      "why": "availability says whether an item is in stock. A past priceValidUntil can hide a product snippet.",
      "skill": "inventory-freshness",
      "standards": [
        "schema.org/Offer"
      ],
      "status": "na",
      "points": 0,
      "counted": false,
      "excluded": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    },
    {
      "id": "seller-identity",
      "category": "commerce",
      "module": "commerce",
      "tier": "recommended",
      "weight": 1,
      "conditional": true,
      "label": "Seller identity declared",
      "why": "On a marketplace, the seller named on an offer is who the buyer contracts with.",
      "skill": "seller-identity",
      "standards": [
        "schema.org/Organization"
      ],
      "status": "na",
      "points": 0,
      "counted": false,
      "excluded": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    },
    {
      "id": "shipping-costs",
      "category": "commerce",
      "module": "commerce",
      "tier": "recommended",
      "weight": 2,
      "conditional": true,
      "label": "Shipping cost and delivery declared",
      "why": "shippingDetails lets a client compute the delivered price.",
      "skill": "shipping-costs",
      "standards": [
        "schema.org/OfferShippingDetails"
      ],
      "status": "na",
      "points": 0,
      "counted": false,
      "excluded": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "part": "standards"
    }
  ],
  "unscored": [
    {
      "id": "dns-aid",
      "category": "discoverability",
      "module": "agent-api",
      "label": "DNS-AID discovery record",
      "group": "convention",
      "maturity": "experimental",
      "state": "absent",
      "detail": "Not published: 0 SVCB records and 0 TXT records resolve at _index._agents.resend.com.",
      "evidence": "DNS-AID names queried for SVCB and TXT records: _index._agents.resend.com",
      "fix": "; DNS-AID organization entry point (draft-mozleywilliams-dnsop-dnsaid)\n_index._agents.resend.com. IN SVCB 1 <choose: host name that serves the agent index, ending in a dot> alpn=<choose: ALPN of the agent endpoint>\n",
      "fixNote": null
    },
    {
      "id": "faq-schema",
      "category": "content",
      "module": "core",
      "label": "FAQ markup for visible questions",
      "group": "choice",
      "maturity": "adopted",
      "state": "out-of-scope",
      "detail": "Not scored: no heading on the homepage names a FAQ section, and the homepage carries no FAQPage markup.",
      "evidence": "visible questions under a FAQ heading: 0",
      "fix": null,
      "fixNote": null
    },
    {
      "id": "breadcrumb",
      "category": "content",
      "module": "core",
      "label": "Breadcrumb markup on an inner page",
      "group": "choice",
      "maturity": "adopted",
      "state": "present",
      "detail": "The inner page /docs/dashboard/emails/send-test-emails states a BreadcrumbList of 3 ListItems at positions 1–3, each with a name and an item URL.",
      "evidence": "https://resend.com/docs/dashboard/emails/send-test-emails · HTTP 200 · text/html · JSON-LD trail: Learn > Sending > Send Test Emails · ListItem: 3 · item URLs: 3",
      "fix": null,
      "fixNote": null
    },
    {
      "id": "webbotauth",
      "category": "botaccess",
      "module": "agent-api",
      "label": "Web Bot Auth key directory",
      "group": "convention",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: this check applies to a site that runs an A2A agent, and the scan found none.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "ai-policy",
      "category": "botaccess",
      "module": "core",
      "label": "AI usage policy page",
      "group": "choice",
      "maturity": "experimental",
      "state": "out-of-scope",
      "detail": "Not scored: robots.txt and Content-Signal state no AI restriction, so there is none for a policy page to explain.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "security-txt",
      "category": "botaccess",
      "module": "core",
      "label": "security.txt (RFC 9116)",
      "group": "choice",
      "maturity": "adopted",
      "state": "defective",
      "detail": "security.txt at /.well-known/security.txt: 1 Contact line; no Expires line. RFC 9116 says every file carries a Contact and an Expires line. Not scored: its Policy URL /security answered HTTP 200.",
      "evidence": "Contact: security@resend.com Policy: https://resend.com/security",
      "fix": "Expires: 2027-04-18T17:05:45.000Z\n",
      "fixNote": "Add this line to /.well-known/security.txt, in place of any Expires line it has. RFC 9116 recommends an Expires less than a year ahead."
    },
    {
      "id": "ai-grounding-directives",
      "category": "botaccess",
      "module": "core",
      "label": "Snippet and AI grounding directives",
      "group": "choice",
      "maturity": "adopted",
      "state": "present",
      "detail": "5 elements carry data-nosnippet, so Bing shows no snippet from their text, which may limit the quality of Copilot's citations. The effects of noarchive, nocache, nosnippet and data-nosnippet are as Bing Webmaster Guidelines §10 states them.",
      "evidence": "<meta name=\"robots\" content=\"index, follow\"> · <meta name=\"googlebot\" content=\"index, follow\"> · data-nosnippet: 5 elements",
      "fix": null,
      "fixNote": null
    },
    {
      "id": "mcp-card",
      "category": "protocol",
      "module": "agent-api",
      "label": "MCP server card",
      "group": "convention",
      "maturity": "draft",
      "state": "defective",
      "detail": "MCP server card at /.well-known/mcp/server-card.json names its server \"resend\", which is not a reverse-DNS name with one slash, such as com.resend/mcp. Its 0 remotes entries yield 0 usable transports.",
      "evidence": null,
      "fix": "{\n  \"name\": \"com.resend/mcp\",\n  \"remotes\": [\n    {\n      \"type\": \"streamable-http\",\n      \"url\": \"<choose: MCP endpoint URL>\",\n      \"supportedProtocolVersions\": [\n        \"<choose: MCP protocol version the server supports>\"\n      ]\n    }\n  ]\n}",
      "fixNote": "Give the card a name in reverse-DNS form with exactly one slash, as the server card format defines, such as the name in the artifact."
    },
    {
      "id": "agent-skills",
      "category": "protocol",
      "module": "agent-api",
      "label": "Agent Skills declaration",
      "group": "convention",
      "maturity": "draft",
      "state": "defective",
      "detail": "Agent skills index at /.well-known/agent-skills/index.json lists 5 skills, but it lacks 1 member: sha256 digest.",
      "evidence": null,
      "fix": "{\n  \"skills\": [\n    {\n      \"name\": \"<choose: skill name>\",\n      \"type\": \"skill-md\",\n      \"description\": \"<choose: what the skill does>\",\n      \"url\": \"https://resend.com/.well-known/agent-skills/<choose: skill name>/SKILL.md\",\n      \"digest\": \"sha256:<choose: SHA-256 of the SKILL.md bytes, in hex>\"\n    }\n  ]\n}",
      "fixNote": "Give each skill a name, a description, a url, a type (skill-md or archive), and the sha256 digest of the bytes served at its url."
    },
    {
      "id": "a2a-card",
      "category": "protocol",
      "module": "agent-api",
      "label": "A2A agent card",
      "group": "convention",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: this check applies to a site that runs an A2A agent, and the scan found none.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "a2a-signed",
      "category": "protocol",
      "module": "agent-api",
      "label": "Cryptographically signed agent card",
      "group": "convention",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: this check applies to a site that runs an A2A agent, and the scan found none.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "auth-md",
      "category": "protocol",
      "module": "agent-api",
      "label": "/auth.md agent authentication guide",
      "group": "convention",
      "maturity": "draft",
      "state": "defective",
      "detail": "The guide at /auth.md names 0 of 3 registration methods, 0 of 2 endpoint keys and no protected-resource metadata pointer. An agent cannot register itself from it.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "ard-manifest",
      "category": "protocol",
      "module": "agent-api",
      "label": "ARD resource discovery manifest",
      "group": "convention",
      "maturity": "experimental",
      "state": "defective",
      "detail": "ARD manifest at /.well-known/ai-catalog.json lists 1 entry of which 0 are complete and 0 carry both url and data, which the specification forbids.",
      "evidence": null,
      "fix": null,
      "fixNote": "Give each entry an identifier, a displayName, a type, and exactly one of url or data."
    },
    {
      "id": "mpp-discovery",
      "category": "protocol",
      "module": "agent-api",
      "label": "MPP discovery in OpenAPI (x-payment-info)",
      "group": "convention",
      "maturity": "draft",
      "state": "absent",
      "detail": "Not declared: /openapi.yaml is a YAML description that does not mention x-payment-info.",
      "evidence": "/openapi.yaml: HTTP 200, 140 KB",
      "fix": null,
      "fixNote": null
    },
    {
      "id": "payment-protocols",
      "category": "commerce",
      "module": "commerce",
      "label": "Agent payment protocol (UCP profile or x402)",
      "group": "convention",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "agent-purchase",
      "category": "commerce",
      "module": "commerce",
      "label": "Agent purchase policy",
      "group": "choice",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "ucp-manifest",
      "category": "commerce",
      "module": "commerce",
      "label": "UCP manifest (/.well-known/ucp)",
      "group": "convention",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "acp-discovery",
      "category": "commerce",
      "module": "commerce",
      "label": "ACP discovery (/.well-known/acp.json)",
      "group": "convention",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: the homepage shows no commercial signal, so commerce checks are not asked of this site.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "sandbox-environment",
      "category": "protocol",
      "module": "agent-api",
      "label": "Sandbox or test environment documented",
      "group": "choice",
      "maturity": "experimental",
      "state": "absent",
      "detail": "Not published: the 1 developer document the scan read and the OpenAPI description at /openapi.yaml name no sandbox, staging or test environment.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "rate-limits-declared",
      "category": "protocol",
      "module": "agent-api",
      "label": "Rate limits and quotas documented",
      "group": "choice",
      "maturity": "experimental",
      "state": "out-of-scope",
      "detail": "Not scored: this check applies to API platform sites; this site was measured as SaaS.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "licensing-terms",
      "category": "content",
      "module": "core",
      "label": "Reuse and licensing terms declared",
      "group": "choice",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: this check applies to publisher or institution sites; this site was measured as SaaS.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "provenance-declared",
      "category": "content",
      "module": "core",
      "label": "Content provenance declared",
      "group": "choice",
      "maturity": "adopted",
      "state": "out-of-scope",
      "detail": "Not scored: this check applies to publisher or institution sites; this site was measured as SaaS.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "booking-action",
      "category": "commerce",
      "module": "core",
      "label": "Machine-readable booking action",
      "group": "choice",
      "maturity": "draft",
      "state": "out-of-scope",
      "detail": "Not scored: this check applies to services sites; this site was measured as SaaS.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    },
    {
      "id": "document-formats",
      "category": "content",
      "module": "core",
      "label": "Documents in machine-readable formats",
      "group": "choice",
      "maturity": "adopted",
      "state": "out-of-scope",
      "detail": "Not scored: this check applies to institution sites; this site was measured as SaaS.",
      "evidence": null,
      "fix": null,
      "fixNote": null
    }
  ],
  "counts": {
    "pass": 19,
    "warn": 2,
    "fail": 0,
    "na": 7,
    "total": 28
  },
  "unscoredCounts": {
    "present": 2,
    "defective": 5,
    "absent": 3,
    "out-of-scope": 14,
    "not-measured": 0,
    "total": 24
  },
  "blockedBy": null,
  "nextLevelGaps": [],
  "ratio": {
    "passed": 19,
    "applicable": 21,
    "label": "19/21"
  },
  "meta": {
    "title": "Resend · Email for developers",
    "description": "The best way to reach humans instead of spam folders. Deliver transactional and marketing emails at scale.",
    "lang": "en",
    "words": 2121,
    "tokensEst": 2863,
    "bytes": 419835,
    "status": 200
  },
  "requests_log": [
    {
      "path": "/",
      "status": 200,
      "bytes": 419835,
      "ms": 328,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/robots.txt",
      "status": 200,
      "bytes": 143,
      "ms": 54,
      "contentType": "text/plain",
      "hops": 0
    },
    {
      "path": "/sitemap.xml",
      "status": 200,
      "bytes": 942,
      "ms": 37,
      "contentType": "application/xml",
      "hops": 0
    },
    {
      "path": "/llms.txt",
      "status": 200,
      "bytes": 8340,
      "ms": 246,
      "contentType": "text/plain",
      "hops": 0
    },
    {
      "path": "/.well-known/security.txt",
      "status": 200,
      "bytes": 64,
      "ms": 234,
      "contentType": "text/plain",
      "hops": 0
    },
    {
      "path": "/security.txt",
      "status": 404,
      "bytes": 16408,
      "ms": 212,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/about",
      "status": 200,
      "bytes": 240661,
      "ms": 1086,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/contact",
      "status": 200,
      "bytes": 318243,
      "ms": 2274,
      "contentType": "text/html",
      "hops": 1
    },
    {
      "path": "/pricing",
      "status": 200,
      "bytes": 534823,
      "ms": 207,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/docs",
      "status": 200,
      "bytes": 334053,
      "ms": 415,
      "contentType": "text/html",
      "hops": 1
    },
    {
      "path": "/developers",
      "status": 404,
      "bytes": 16408,
      "ms": 181,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/.well-known/api-catalog",
      "status": 200,
      "bytes": 416,
      "ms": 244,
      "contentType": "application/linkset+json",
      "hops": 0
    },
    {
      "path": "/openapi.json",
      "status": 200,
      "bytes": 200008,
      "ms": 383,
      "contentType": "application/json",
      "hops": 0
    },
    {
      "path": "/.well-known/openapi.json",
      "status": 404,
      "bytes": 16408,
      "ms": 201,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/.well-known/mcp/server-card.json",
      "status": 200,
      "bytes": 678,
      "ms": 242,
      "contentType": "application/json",
      "hops": 0
    },
    {
      "path": "/.well-known/ai-catalog.json",
      "status": 200,
      "bytes": 213,
      "ms": 226,
      "contentType": "application/ai-catalog+json",
      "hops": 0
    },
    {
      "path": "/.well-known/agent-card.json",
      "status": 404,
      "bytes": 16408,
      "ms": 233,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/.well-known/oauth-protected-resource",
      "status": 200,
      "bytes": 239,
      "ms": 184,
      "contentType": "application/json",
      "hops": 0
    },
    {
      "path": "/.well-known/oauth-authorization-server",
      "status": 200,
      "bytes": 757,
      "ms": 185,
      "contentType": "application/json",
      "hops": 0
    },
    {
      "path": "/.well-known/openid-configuration",
      "status": 404,
      "bytes": 16408,
      "ms": 239,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/llms-full.txt",
      "status": 200,
      "bytes": 9429,
      "ms": 427,
      "contentType": "text/plain",
      "hops": 0
    },
    {
      "path": "/.well-known/mcp.json",
      "status": 200,
      "bytes": 5045,
      "ms": 221,
      "contentType": "application/json",
      "hops": 0
    },
    {
      "path": "/mcp.json",
      "status": 404,
      "bytes": 16408,
      "ms": 196,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/mcp",
      "status": 200,
      "bytes": 272816,
      "ms": 779,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/openapi.yaml",
      "status": 200,
      "bytes": 143778,
      "ms": 258,
      "contentType": "text/yaml",
      "hops": 0
    },
    {
      "path": "/api/openapi.json",
      "status": 401,
      "bytes": 105,
      "ms": 146,
      "contentType": "application/json",
      "hops": 0
    },
    {
      "path": "/swagger.json",
      "status": 404,
      "bytes": 16408,
      "ms": 175,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/.well-known/agent-skills/index.json",
      "status": 200,
      "bytes": 3288,
      "ms": 225,
      "contentType": "application/json",
      "hops": 0
    },
    {
      "path": "/.well-known/agent-skills.json",
      "status": 404,
      "bytes": 16408,
      "ms": 174,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/.well-known/skills.json",
      "status": 404,
      "bytes": 16408,
      "ms": 182,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/auth.md",
      "status": 200,
      "bytes": 4709,
      "ms": 225,
      "contentType": "text/markdown",
      "hops": 0
    },
    {
      "path": "/.well-known/ard.json",
      "status": 404,
      "bytes": 16408,
      "ms": 203,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/.well-known/agent-resources.json",
      "status": 404,
      "bytes": 16408,
      "ms": 201,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/ard.json",
      "status": 404,
      "bytes": 16408,
      "ms": 183,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/documentation",
      "status": 404,
      "bytes": 16408,
      "ms": 177,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/gelistiriciler",
      "status": 404,
      "bytes": 16408,
      "ms": 225,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/status",
      "status": 200,
      "bytes": 547467,
      "ms": 535,
      "contentType": "text/html",
      "hops": 1
    },
    {
      "path": "/changelog",
      "status": 200,
      "bytes": 620259,
      "ms": 1406,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/releases",
      "status": 404,
      "bytes": 16408,
      "ms": 194,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/whats-new",
      "status": 404,
      "bytes": 16408,
      "ms": 204,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/docs/sandbox",
      "status": 404,
      "bytes": 16408,
      "ms": 340,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/sandbox",
      "status": 404,
      "bytes": 16408,
      "ms": 187,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/developers/sandbox",
      "status": 404,
      "bytes": 16408,
      "ms": 189,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/docs/dashboard/emails/send-test-emails",
      "status": 200,
      "bytes": 338729,
      "ms": 98,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/security",
      "status": 200,
      "bytes": 304146,
      "ms": 642,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/setup.md",
      "status": 200,
      "bytes": 10902,
      "ms": 236,
      "contentType": "text/markdown",
      "hops": 0
    },
    {
      "path": "/install.sh",
      "status": 200,
      "bytes": 12392,
      "ms": 361,
      "contentType": "application/x-sh",
      "hops": 0
    },
    {
      "path": "/docs/llms.txt",
      "status": 200,
      "bytes": 60159,
      "ms": 460,
      "contentType": "text/plain",
      "hops": 0
    },
    {
      "path": "/support/llms.txt",
      "status": 200,
      "bytes": 3050,
      "ms": 446,
      "contentType": "text/plain",
      "hops": 0
    },
    {
      "path": "/support/agent.md",
      "status": 200,
      "bytes": 13408,
      "ms": 336,
      "contentType": "text/markdown",
      "hops": 0
    },
    {
      "path": "/support",
      "status": 200,
      "bytes": 318243,
      "ms": 1317,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/docs/webhooks/introduction",
      "status": 200,
      "bytes": 328794,
      "ms": 93,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/docs/send-with-nextjs",
      "status": 200,
      "bytes": 451579,
      "ms": 89,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/",
      "status": 200,
      "bytes": 8340,
      "ms": 83,
      "contentType": "text/markdown",
      "hops": 0
    },
    {
      "path": "/",
      "status": 304,
      "bytes": 0,
      "ms": 208,
      "contentType": "",
      "hops": 0
    },
    {
      "path": "/aws-probe-5a36f3ef766b",
      "status": 404,
      "bytes": 16408,
      "ms": 241,
      "contentType": "text/html",
      "hops": 0
    },
    {
      "path": "/aws-probe-5a36f3ef766b",
      "status": 404,
      "bytes": 16408,
      "ms": 199,
      "contentType": "text/html",
      "hops": 0
    }
  ],
  "usable": {
    "kind": "api"
  }
}