{
  "contract": "sourcey.site-record/v1alpha1",
  "release_id": "sha256:b78f22c5ea873b3115531a2e15e6015144e93a27e087127457856629b2908c98",
  "snapshot_id": "sha256:59a215f5c3c95e3452980d6aea6165704b8b608d180f09bfe23d3a7bc06b5b76",
  "artifact_sha256": "sha256:b76be265264024bb68f072dade46e90059a19d0a7d1e97335c9a218ed7e58a86",
  "data": {
    "entity_id": "ent_01kyh8fpe1572wzf5nnqqg7rd2",
    "entity_slug": "brevo",
    "profile": {
      "projection_contract": "sourcey.agent-readiness-projection/v1alpha1",
      "agent_readiness_profile_id": "arp_01m4t8d81d0pkm4s7nw07nb8xf",
      "entity_id": "ent_01kyh8fpe1572wzf5nnqqg7rd2",
      "scope": {
        "product": {
          "key": "brevo-transactional-email",
          "name": "Brevo Transactional Email"
        },
        "job": {
          "key": "email-send",
          "name": "Send an email"
        }
      },
      "catalog_binding": {
        "base_release_id": "sha256:b8d2307bdb2bd192cdb6e4a0586bf54e4c306eb8bae6a6f3c48ddff04bcdcee1",
        "entity_revision_digest": "sha256:926e7d804d42546b0492c5ccf55d9e07f20e4f95e41db4a3f610903aba2e579e"
      },
      "declaration_revision_digest": "sha256:d0589ae8c3dfb29f09e67fa8e5f6c489e0fc191415e5d0a1e7e2f20ca4379618",
      "declaration": {
        "declaration_id": "declaration_brevo_brevo_transactional_email_email_send",
        "provenance": {
          "repository": "sourcey/agent-ready-services",
          "commit": "c875d400e9985de5f4b218335de854008faf9b25",
          "path": "entities/br/brevo.yaml",
          "git_blob_oid": "ac05c9892c610be7c173225549722a2130812b4e",
          "blob_digest": "sha256:35d2b73dd85d7356d51cfaf476406a51717f83ffe5ffac580d60f9fba8b3f471"
        },
        "status": "community_declared"
      },
      "surface_catalog": {
        "participants": [
          {
            "participant_id": "brevo",
            "roles": [
              "access_operator",
              "identity_provider",
              "operations_provider",
              "payment_provider",
              "provisioning_provider",
              "subject"
            ],
            "identity": {
              "entity_id": "ent_01kyh8fpe1572wzf5nnqqg7rd2"
            }
          }
        ],
        "resources": [
          {
            "resource_id": "account-signup",
            "uri": "https://onboarding.brevo.com/account/register",
            "roles": [
              "access"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          },
          {
            "resource_id": "api-reference",
            "uri": "https://developers.brevo.com/docs/send-a-transactional-email",
            "roles": [
              "discovery",
              "documentation",
              "operations",
              "provisioning"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          },
          {
            "resource_id": "authentication",
            "uri": "https://developers.brevo.com/docs/api-key-authentication",
            "roles": [
              "authentication",
              "documentation"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          },
          {
            "resource_id": "pricing",
            "uri": "https://www.brevo.com/pricing/",
            "roles": [
              "pricing"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          },
          {
            "resource_id": "service-terms",
            "uri": "https://www.brevo.com/legal/termsofuse/",
            "roles": [
              "terms"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          }
        ],
        "endpoints": [
          {
            "endpoint_id": "registration",
            "uri": "https://onboarding.brevo.com/account/register",
            "transport": "http",
            "roles": [
              "registration"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          },
          {
            "endpoint_id": "sending-approval",
            "uri": "https://app.brevo.com",
            "transport": "http",
            "roles": [
              "access_request"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          },
          {
            "endpoint_id": "service-api",
            "uri": "https://api.brevo.com/v3",
            "transport": "http",
            "roles": [
              "service"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          }
        ],
        "interfaces": [
          {
            "interface_id": "api-authentication",
            "modality": "network_api",
            "functions": [
              "authentication"
            ],
            "endpoint_ids": [],
            "resource_ids": [
              "authentication"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          },
          {
            "interface_id": "service-api",
            "modality": "network_api",
            "functions": [
              "service_operation"
            ],
            "endpoint_ids": [
              "sending-approval",
              "service-api"
            ],
            "resource_ids": [
              "api-reference"
            ],
            "operated_by_participant_id": "brevo",
            "standard_bindings": []
          }
        ],
        "relations": [
          {
            "relation_id": "authentication-authenticates-api",
            "kind": "authenticates",
            "from": {
              "node_kind": "interface",
              "node_id": "api-authentication"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "service-api"
            }
          },
          {
            "relation_id": "reference-describes-api",
            "kind": "describes",
            "from": {
              "node_kind": "resource",
              "node_id": "api-reference"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "service-api"
            }
          },
          {
            "relation_id": "signup-precedes-authentication",
            "kind": "precedes",
            "from": {
              "node_kind": "resource",
              "node_id": "account-signup"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "api-authentication"
            }
          }
        ],
        "surface_exclusions": [
          {
            "exclusion_id": "free-job-no-checkout",
            "role": "checkout",
            "rationale": "Brevo's Free plan is free forever with no credit card needed and sends up to 300 emails a day once Brevo approves the account for sending."
          },
          {
            "exclusion_id": "separate-eligibility-resource",
            "role": "eligibility",
            "rationale": "Access conditions are published within the vendor's terms; no separate eligibility resource is declared."
          }
        ]
      },
      "lifecycle": "active",
      "effective_from": "2026-10-13T09:10:55.199Z",
      "revision_digest": "sha256:aff33ec659a7e2e5427410327a7808839752ae57a462e68b260cd60df9846a02",
      "policy_digest": "sha256:b612172aad277b54461de84e006815126f2df566563954b02f4432a39cad89ac",
      "policy_version": "kind-2026-10-12.2",
      "policy_as_of": "2026-10-05T00:00:00Z",
      "job": {
        "job_id": "email-send",
        "job_digest": "sha256:f4d22987188313b7144bc863b20ba62e50ff206e4928c8dab6f98f15ee14d0dc",
        "category": "email",
        "name": "Send an email",
        "statement": "Send an email whose body carries the run's nonce to a Sourcey-controlled mailbox."
      },
      "interface_id": "service-api",
      "label": "probed",
      "label_run_at": null,
      "grade": {
        "letter": "D",
        "statement": "Access depends on sales or approval.",
        "steps": [
          {
            "step": "discover",
            "outcome": "machine",
            "timing": null
          },
          {
            "step": "authority",
            "outcome": "workaround",
            "timing": "setup"
          },
          {
            "step": "onboard",
            "outcome": "gated",
            "timing": null
          },
          {
            "step": "pay",
            "outcome": "not_applicable",
            "timing": null
          },
          {
            "step": "confirm",
            "outcome": "machine",
            "timing": null
          },
          {
            "step": "sustain",
            "outcome": "workaround",
            "timing": "setup"
          }
        ],
        "job": "reachable",
        "approvals": [],
        "workarounds": [
          {
            "step": "authority",
            "timing": "setup"
          },
          {
            "step": "sustain",
            "timing": "setup"
          }
        ]
      },
      "discovery": [
        {
          "fact": "agent_documentation",
          "value": "https://developers.brevo.com/llms.txt",
          "descriptor_url": "https://developers.brevo.com/llms.txt",
          "attempt_digest": "sha256:997f0c38c1bb5b814b3845874923d5a2539146fdd90a42e14093641d60a0bb44",
          "adapter": {
            "namespace": "llms.txt",
            "version": "1"
          }
        },
        {
          "fact": "documentation_route",
          "value": "https://api.brevo.com/",
          "descriptor_url": "https://developers.brevo.com/docs/getting-started.md",
          "attempt_digest": "sha256:3191ee48588fa1a54687eb76da7205178e9f43fcd243873733f03e23fa513e0a",
          "adapter": {
            "namespace": "llms.txt",
            "version": "route"
          }
        }
      ],
      "discovery_run_at": null,
      "run": {
        "started_at": "2026-10-13T09:10:11.715Z",
        "finished_at": "2026-10-13T09:10:55.199Z",
        "discovery_reads": 31,
        "exchanges": [
          {
            "purpose": "probe_operation",
            "role": "request",
            "method": "POST",
            "url": "https://api.brevo.com/v3/smtp/email",
            "started_at": "2026-10-13T09:10:34.011Z",
            "finished_at": "2026-10-13T09:10:34.295Z",
            "response": {
              "status": 401,
              "media_type": "application/json",
              "content_bytes": 72,
              "content_digest": "sha256:9f7d277b264cf5d4b02ae8edcac88e6f8c7833c4f8353be3ac42a79a6de56412"
            },
            "transport_error": null,
            "exchange_digest": "sha256:9c9dd2d33794e1710cfa8695c7aa05ff41751ae586da2a34ff54de0b1bfbc8ea"
          },
          {
            "purpose": "probe_resource_metadata",
            "role": "request",
            "method": "GET",
            "url": "https://api.brevo.com/.well-known/oauth-protected-resource/v3/smtp/email",
            "started_at": "2026-10-13T09:10:38.415Z",
            "finished_at": "2026-10-13T09:10:38.689Z",
            "response": {
              "status": 404,
              "media_type": "application/octet-stream",
              "content_bytes": 0,
              "content_digest": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
            },
            "transport_error": null,
            "exchange_digest": "sha256:7743dabba912be4917b90aa7ab427a56d48541644b85797e0536a7b8c3e73604"
          },
          {
            "purpose": "probe_resource_metadata",
            "role": "request",
            "method": "GET",
            "url": "https://api.brevo.com/.well-known/oauth-protected-resource",
            "started_at": "2026-10-13T09:10:41.820Z",
            "finished_at": "2026-10-13T09:10:42.087Z",
            "response": {
              "status": 404,
              "media_type": "application/octet-stream",
              "content_bytes": 0,
              "content_digest": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
            },
            "transport_error": null,
            "exchange_digest": "sha256:a474a9d1d0cff8c10f6fbe262af85eef5e8afcd814688485d3e8468e4393d329"
          },
          {
            "purpose": "probe_page",
            "role": "request",
            "method": "GET",
            "url": "https://onboarding.brevo.com/account/register",
            "started_at": "2026-10-13T09:10:45.419Z",
            "finished_at": "2026-10-13T09:10:45.723Z",
            "response": {
              "status": 200,
              "media_type": "text/html",
              "content_bytes": 4672,
              "content_digest": "sha256:c0ec33f6079e589e11db58c060e469f3bb58c5211a3d786c9ef7ebc75656ceee"
            },
            "transport_error": null,
            "exchange_digest": "sha256:ce9483c4675e93fef46a7a700d54a1285c8f60c17e1d2a554ec4226e0d2971eb"
          },
          {
            "purpose": "probe_page",
            "role": "request",
            "method": "GET",
            "url": "https://app.brevo.com",
            "started_at": "2026-10-13T09:10:49.770Z",
            "finished_at": "2026-10-13T09:10:50.089Z",
            "response": {
              "status": 200,
              "media_type": "text/html",
              "content_bytes": 113702,
              "content_digest": "sha256:da95ddb26290a4d190bf0ac17baea6e7ce7f55f5c354fa4f1a8bc17695a80bc0"
            },
            "transport_error": null,
            "exchange_digest": "sha256:8f9c45c8669f756bffc1c41b0f9a8f6ecacb975ef13a9a8ebd44ec5a0ce0ce87"
          }
        ],
        "assertions": []
      },
      "last_run_at": "2026-10-13T09:10:55.199Z",
      "publication": {
        "visibility": "discoverable",
        "reasons": []
      },
      "provenance": {
        "dispute": "none",
        "vendor_attestation": {
          "status": "none"
        },
        "basis_event_ids": []
      },
      "canonical_url": "https://sourcey.com/c/brevo/agent-readiness/brevo-transactional-email/email-send",
      "projection_digest": "sha256:ec35a9a6920dd43421f09b76c8344d0753cefc706c782f99e0f34d31341a5960"
    }
  }
}
