{
  "format": "agent-article-v0",
  "article_id": "EA-221",
  "canonical_url": "/tools/ea-221-transactional-email-api-agent",
  "page_type": "reference",
  "claim_ids": [],
  "evidence_ids": [
    "EVD-EA-221-URL-5057CA91CAA3",
    "EVD-EA-221-URL-FE61B8992345",
    "EVD-EA-221-URL-80250F6E9B30",
    "EVD-EA-221-URL-64B5D04F5802",
    "EVD-EA-221-URL-5CE7F040BCDC",
    "EVD-EA-221-URL-3375B9931229",
    "EVD-EA-221-URL-052B4CFC3701",
    "EVD-EA-221-URL-83C9975D716F",
    "EVD-EA-221-URL-5DA292FF1B92",
    "EVD-EA-221-URL-9B1CC81C37C9",
    "EA-221-R11-RESEARCH",
    "EA-221-R11-WEB-READBACK"
  ],
  "unknown_ids": [
    "EA-221-UNKNOWN-01"
  ],
  "operational_object_ids": [],
  "provider": [],
  "models": [],
  "plans": [],
  "surfaces": [],
  "regions": [],
  "current_status": "CURRENT",
  "observation_status": "SPEC_ONLY",
  "freshness": "CURRENT",
  "last_verified": "2026-10-04",
  "supersedes": [],
  "superseded_by": [],
  "provenance": [
    "EA-221-GAP-FIRST-20261004",
    "SRC-EA-221-URL-5057CA91CAA3",
    "SRC-EA-221-URL-FE61B8992345",
    "SRC-EA-221-URL-80250F6E9B30",
    "SRC-EA-221-URL-64B5D04F5802",
    "SRC-EA-221-URL-5CE7F040BCDC",
    "SRC-EA-221-URL-3375B9931229",
    "SRC-EA-221-URL-052B4CFC3701",
    "SRC-EA-221-URL-83C9975D716F",
    "SRC-EA-221-URL-5DA292FF1B92",
    "SRC-EA-221-URL-9B1CC81C37C9",
    "WEBBODY-EA0221-R8-7489C82B"
  ],
  "article_sources": [
    {
      "id": "EVD-EA-221-URL-5057CA91CAA3",
      "evidence_class": "RESEARCH",
      "title": "M1",
      "href": "https://resend.com/docs/dashboard/domains/introduction",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-5057CA91CAA3"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M1 https://resend.com/docs/dashboard/domains/introduction"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-FE61B8992345",
      "evidence_class": "RESEARCH",
      "title": "M2",
      "href": "https://resend.com/docs/dashboard/emails/idempotency-keys",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-FE61B8992345"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M2 https://resend.com/docs/dashboard/emails/idempotency-keys"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-80250F6E9B30",
      "evidence_class": "RESEARCH",
      "title": "M3",
      "href": "https://resend.com/docs/webhooks/verify-webhooks-requests",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-80250F6E9B30"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M3 https://resend.com/docs/webhooks/verify-webhooks-requests"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-64B5D04F5802",
      "evidence_class": "RESEARCH",
      "title": "M4",
      "href": "https://resend.com/docs/webhooks/retries-and-replays",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-64B5D04F5802"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M4 https://resend.com/docs/webhooks/retries-and-replays"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-5CE7F040BCDC",
      "evidence_class": "RESEARCH",
      "title": "M5",
      "href": "https://postmarkapp.com/developer/webhooks/delivery-webhook",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-5CE7F040BCDC"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M5 https://postmarkapp.com/developer/webhooks/delivery-webhook"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-3375B9931229",
      "evidence_class": "RESEARCH",
      "title": "M6",
      "href": "https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_EventDestination.html",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-3375B9931229"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M6 https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_EventDestination.html"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-052B4CFC3701",
      "evidence_class": "RESEARCH",
      "title": "M7",
      "href": "https://postmarkapp.com/developer/api/suppressions-api",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-052B4CFC3701"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M7 https://postmarkapp.com/developer/api/suppressions-api"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-83C9975D716F",
      "evidence_class": "RESEARCH",
      "title": "M8",
      "href": "https://resend.com/changelog/suppression-list-support",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-83C9975D716F"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M8 https://resend.com/changelog/suppression-list-support"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-5DA292FF1B92",
      "evidence_class": "RESEARCH",
      "title": "M9",
      "href": "https://www.rfc-editor.org/rfc/rfc9989.html",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-5DA292FF1B92"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M9 https://www.rfc-editor.org/rfc/rfc9989.html"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EVD-EA-221-URL-9B1CC81C37C9",
      "evidence_class": "RESEARCH",
      "title": "M10",
      "href": "https://www.twilio.com/docs/sendgrid/for-developers/tracking-events/getting-started-event-webhook-security-features",
      "supports": [],
      "limit": "元の監査済み資料に記載された参照先です。URLの復元は、資料の最新性や全主張の支持を新たに検証したことを意味しません。",
      "origin_class": "SOURCE_PACKET_REFERENCE",
      "source_or_experiment_ids": [
        "SRC-EA-221-URL-9B1CC81C37C9"
      ],
      "supporting_locators": [
        "SOURCES",
        "- M10 https://www.twilio.com/docs/sendgrid/for-developers/tracking-events/getting-started-event-webhook-security-features"
      ],
      "scope": "SOURCES",
      "provenance_status": "SOURCE_PACKET_REFERENCE_PROJECTED"
    },
    {
      "id": "EA-221-R11-RESEARCH",
      "evidence_class": "RESEARCH",
      "title": "EA-221 監査済みresearch / canonical revision binding",
      "supports": [
        "Resendのidempotency keyは24時間の窓で同一requestの再送を抑える。長期停滞後の重複防止には組織outboxの照合が必要である。[M2]\nSESのSENDは配送の試行開始で、suppressionにより配達しない場合もある。Postmarkのdeliveryはrecipient serverの受付であり、inbox到達ではない。[M5,M6]\nResend署名はraw bodyを検証する。retry/replayをdedupし、SendGridのECDSA方式とは別adapterにする。suppressionのscopeと解除条件はproviderごとに照合する。[M3,M4,M7,M8,M10]\n現行DMARC RFC9989はauthor domainと認証identifierのalignmentを定義し、RFC7489/9091をobsoleteとする。domain認証は本文の正しさや業務承認の証拠ではない。[M9]"
      ],
      "limit": "canonical監査・revision bindingの存在を示す。外部ソースcurrentnessが本文またはcontrol-planeで確定していない場合は、currentnessをUNKNOWNのまま保持する。",
      "checked_at": "2026-10-04",
      "origin_class": "AUDITED_CANONICAL_RESEARCH_PACKET",
      "source_or_experiment_ids": [
        "EA-221-GAP-FIRST-20261004"
      ],
      "supporting_locators": [
        "EA-221-GAP-FIRST-20261004",
        "content/staging/EA-221.md"
      ],
      "scope": "監査済みEA本文・canonical revision・既存Source Graph relationの範囲。欠損currentnessは推測で閉じない。",
      "provenance_status": "AUDIT_PASS_CANONICAL_BINDING"
    },
    {
      "id": "EA-221-R11-WEB-READBACK",
      "evidence_class": "IMPL",
      "title": "EA-221 Web body identity / canonical readback",
      "supports": [
        "canonical staging bodyのSHA-256一致とR9 canonical ledger readbackをProduction projectionの入力として検証する。"
      ],
      "limit": "body identity/readbackは本文claim自体の真偽や外部ソースの最新性を追加保証しない。",
      "checked_at": "2026-10-04",
      "origin_class": "IMPLEMENTATION_READBACK",
      "source_or_experiment_ids": [
        "WEBBODY-EA0221-R8-7489C82B"
      ],
      "supporting_locators": [
        "WEBBODY-EA0221-R8-7489C82B",
        "content/staging/EA-221.md",
        "EA-221-GAP-FIRST-20261004"
      ],
      "scope": "R9/R10 canonical readback後のProduction生成時body identity。",
      "provenance_status": "CANONICAL_READBACK_BODY_HASH_MATCH"
    }
  ],
  "research_sections": [
    {
      "heading": "PUBLIC_CLAIM",
      "text": "Agentのdraftを送信操作へ変換する際は、全recipientと本文・添付の承認、domain認証、重複防止、配送event、suppressionを個別に追跡する。"
    },
    {
      "heading": "ESTABLISHED",
      "text": "Resendのidempotency keyは24時間の窓で同一requestの再送を抑える。長期停滞後の重複防止には組織outboxの照合が必要である。[M2]\nSESのSENDは配送の試行開始で、suppressionにより配達しない場合もある。Postmarkのdeliveryはrecipient serverの受付であり、inbox到達ではない。[M5,M6]\nResend署名はraw bodyを検証する。retry/replayをdedupし、SendGridのECDSA方式とは別adapterにする。suppressionのscopeと解除条件はproviderごとに照合する。[M3,M4,M7,M8,M10]\n現行DMARC RFC9989はauthor domainと認証identifierのalignmentを定義し、RFC7489/9091をobsoleteとする。domain認証は本文の正しさや業務承認の証拠ではない。[M9]"
    },
    {
      "heading": "INFERENCE",
      "text": "To/Cc/Bcc、subject、body、添付hashとrevisionを承認に結び付け、変更後は再承認する記録は組織提案である。providerの有限key保持を永続exactly-once保証へ移さない。"
    },
    {
      "heading": "FAILURE_ENVELOPE",
      "text": "成功後timeout、key TTL越え、未承認Bcc/添付、header injection、event重複・遅延・順序反転、bounce/complaint履歴消去、抑止先の自動解除を試験する。"
    },
    {
      "heading": "AVAILABILITY_GATES",
      "text": "実domain/DNS/From/Return-Path、recipient権限、署名SDK、region・quota、outbox容量、provider key/抑止scope、費用とcallbackを確認する。[M1–M4,M7,M8]"
    },
    {
      "heading": "SECURITY_PRIVACY_AUDIT_OPERABILITY",
      "text": "keyと本文/添付を保護し、公開claimを送信権限としない。outcome不明ならprovider IDとoutboxを照合し、新しいkeyで無限再送しない。signature有効性だけで業務操作を再実行しない。"
    },
    {
      "heading": "UNKNOWN_AND_STOP_CONDITION",
      "text": "SMTP/API・DNS・実webhook・inboxは未試験。native MIME/SQLiteと合成gateは実配送の証拠ではない。SMTPのCRLFによるnative期待差は保存し、canonical approval textとwire bytesを分ける。"
    },
    {
      "heading": "SOURCES",
      "text": "- M1 https://resend.com/docs/dashboard/domains/introduction\n- M2 https://resend.com/docs/dashboard/emails/idempotency-keys\n- M3 https://resend.com/docs/webhooks/verify-webhooks-requests\n- M4 https://resend.com/docs/webhooks/retries-and-replays\n- M5 https://postmarkapp.com/developer/webhooks/delivery-webhook\n- M6 https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_EventDestination.html\n- M7 https://postmarkapp.com/developer/api/suppressions-api\n- M8 https://resend.com/changelog/suppression-list-support\n- M9 https://www.rfc-editor.org/rfc/rfc9989.html\n- M10 https://www.twilio.com/docs/sendgrid/for-developers/tracking-events/getting-started-event-webhook-security-features\n\nEVIDENCE_AS_OF: 2026-10-04。"
    }
  ],
  "human_url": "/tools/ea-221-transactional-email-api-agent",
  "markdown_url": "/agent/article.md?path=%2Ftools%2Fea-221-transactional-email-api-agent",
  "json_url": "/agent/article.json?path=%2Ftools%2Fea-221-transactional-email-api-agent"
}