{
  "api_contract": "sourcey.catalog-api/v1",
  "release_id": "sha256:5f55a0147eca9a82d821b7cfb73339dd8059c146b9acbb6ed66c9e3d40a8e1b0",
  "artifact_sha256": "sha256:ec393385ec4e7be15a393d925f0df78d54a12787f2995a84fad1b570583dac06",
  "data": {
    "revision_contract": "sourcey.agent-readiness-revision/v1alpha1",
    "agent_readiness_profile_id": "arp_01kzf0m4xm8n4vc1f7z6qs2yh5",
    "entity_id": "ent_01kyyts97tg62epymp01r8t62x",
    "scope": {
      "product": {
        "key": "twilio-messaging-api",
        "name": "Twilio Messaging API"
      },
      "funnel": {
        "key": "message-operations",
        "name": "Message operations"
      }
    },
    "catalog_binding": {
      "base_release_id": "sha256:8986cb1640fd748dd005e5c94c7b02d3f44a3d39ff6b72573091bd81af84c61e",
      "entity_revision_digest": "sha256:6789395a68188d85e262606330dbb20d4dcfd49f918934a99993ca476c86ca81"
    },
    "declaration_revision_digest": "sha256:773c0377718a4a16744632b021acffc989f89e356e398aad409db9c039dd892e",
    "declaration": {
      "declaration_id": "declaration_twilio_messaging_api_operations",
      "provenance": {
        "repository": "sourcey/agent-ready-services",
        "commit": "ca383f7867c18d91567fcb8326be55f7411d9554",
        "path": "entities/tw/twilio.yaml",
        "git_blob_oid": "fd6a1d3dfa32ff65fea88976f1decb9d809ead58",
        "blob_digest": "sha256:20a176cc3ebb5373112b22e3393e5c5b47241df5dd1aa631f042bced235b1ecf"
      },
      "status": "community_declared"
    },
    "lifecycle": "active",
    "effective_from": "2026-09-06T08:47:58Z",
    "signals": [
      {
        "stage": "evaluate",
        "signal_code": "eligibility_decidability",
        "selector_group_id": "eligibility_decidability-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:25.401Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "service-terms"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:2ab66f5d7a7110bbcd71009b65250082e8da5427f09426eb382e57c0161b0e5f",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4175ce231687864b8caee230901fe5e4b68acfe71bfd8cacd8da78439a6aa9b6",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:84fc283c463b410fe28c2b71b00adc95e2641c6d7a35ddfce46bab24a7e25c47",
              "sha256:9a2b37a3bdfe691dc40214e72032a2c3a1fbaac6fda95f30a7f2dc403dfe6422"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "service-terms"
            },
            "locators": [
              {
                "artifact_digest": "sha256:9a2b37a3bdfe691dc40214e72032a2c3a1fbaac6fda95f30a7f2dc403dfe6422",
                "start_byte": 58403,
                "end_byte": 59197,
                "value_digest": "sha256:a29f0d913060507026a6684678a7c7013287644d933a9a5c720e6de383dc803d"
              }
            ]
          }
        ],
        "note": "Twilio's Terms of Service explicitly states that each party represents and warrants that it has validly accepted or entered into the Agreement and has the legal power and authority to do so. It also requires compliance with anti-corruption, anti-money laundering, sanctions, and export control laws, confirming that parties/organizations are not on government sanctions or restricted party lists."
      },
      {
        "stage": "evaluate",
        "signal_code": "pricing_decidability",
        "selector_group_id": "pricing_decidability-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:50:08.099Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "pricing"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-cfa12ce6e4f5f5ff16c4a65698f5d4c7be599bc6f54d70a6e41dcf742e0637ac"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:6ed80517dc1bb0da4747d15db21538b6b07e2475d29ccb0fa08bdb7879b2b5ad",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:08bd4760a307405ea99a0dcf2be06bf200887ae70329ca652390ad2556ad9798",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7be4bda36bc992e89d81bb1f04dd946e76e06feee862ce70afc68e0273d09de1",
              "sha256:ae90e8328b76ee0265f077e52988f09cb41cc6fe79ca373de8f0d036764a9456"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-cfa12ce6e4f5f5ff16c4a65698f5d4c7be599bc6f54d70a6e41dcf742e0637ac"
            },
            "locators": [
              {
                "artifact_digest": "sha256:7be4bda36bc992e89d81bb1f04dd946e76e06feee862ce70afc68e0273d09de1",
                "start_byte": 20219,
                "end_byte": 21015,
                "value_digest": "sha256:eb366e4e9a798da636ffc9a3d34a7db16be457df3e6d25332e0571aaf3c011fe"
              }
            ]
          }
        ],
        "note": "Twilio provides explicit pay-as-you-go pricing for Messaging, specifying costs starting at $0.0083 per outbound/inbound SMS and RCS message (US), WhatsApp messaging starting at $0.005 plus Meta template fees, and phone number fees starting at $1.15 per month."
      },
      {
        "stage": "evaluate",
        "signal_code": "service_discovery",
        "selector_group_id": "service_discovery-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:50:00.850Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "api-overview"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:13aa2f722561f09e2938264f75f5f0f2abd405eee738abc3f16361a9d4a63557",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:854b666b44fa427b998a8cb7456f41692a381a6d00fb102dd6d41641dd746a99",
              "sha256:9181985827b6c05ea98c021b2283bf945895e98565690c0d72609d67e4ddab41",
              "sha256:9d3d164ec81e9018b0d60d6e7cd4b59b972bd3cda8baf3f526a8050d4a916de1"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-overview"
            },
            "locators": [
              {
                "artifact_digest": "sha256:9181985827b6c05ea98c021b2283bf945895e98565690c0d72609d67e4ddab41",
                "start_byte": 9549,
                "end_byte": 10348,
                "value_digest": "sha256:290b9deae2f1cd2841197f4bb9c50bd7cad4c4cdd66ee574a9594d3b3bc2a502"
              }
            ]
          }
        ],
        "note": "Twilio provides an API overview explicitly stating that Twilio Messaging corresponds to the Messaging API, which can be accessed directly over HTTPS or through Twilio SDKs available in several programming languages."
      },
      {
        "stage": "evaluate",
        "signal_code": "structured_evaluation_discovery",
        "selector_group_id": "structured_evaluation_discovery-primary",
        "value": "unknown",
        "observed_at": "2026-09-06T08:50:57.585Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "api-overview"
          },
          {
            "node_kind": "resource",
            "node_id": "authentication"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [],
        "note": "The retained excerpts for Twilio Messaging API are human documentation pages; they contain no first-party statement that structured discovery artifacts are absent, and no artifact was captured or verified either way."
      },
      {
        "stage": "evaluate",
        "signal_code": "terms_access",
        "selector_group_id": "terms_access-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:25.401Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "service-terms"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:2ab66f5d7a7110bbcd71009b65250082e8da5427f09426eb382e57c0161b0e5f",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:26df4fde2be1cd5e62ecfeb16cf648b4201a301f8cf2233402e09f8b698b634b",
              "sha256:4175ce231687864b8caee230901fe5e4b68acfe71bfd8cacd8da78439a6aa9b6",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:9a2b37a3bdfe691dc40214e72032a2c3a1fbaac6fda95f30a7f2dc403dfe6422"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "service-terms"
            },
            "locators": [
              {
                "artifact_digest": "sha256:9a2b37a3bdfe691dc40214e72032a2c3a1fbaac6fda95f30a7f2dc403dfe6422",
                "start_byte": 38379,
                "end_byte": 39177,
                "value_digest": "sha256:126ef74f00f38ff7f6fc7b8b5dc391fe5af52b0672fc04b9561cf7d923934a75"
              },
              {
                "artifact_digest": "sha256:9a2b37a3bdfe691dc40214e72032a2c3a1fbaac6fda95f30a7f2dc403dfe6422",
                "start_byte": 85655,
                "end_byte": 86448,
                "value_digest": "sha256:82218b487add935c3c093412bb005d7cbc23d36b9c5411107fc56ef45b7d2f2e"
              }
            ]
          }
        ],
        "note": "Twilio provides publicly retrievable and readable Terms of Service covering customer responsibilities, Acceptable Use Policy compliance, service and country-specific terms, representations and warranties, and order of precedence."
      },
      {
        "stage": "evaluate",
        "signal_code": "verified_web_agent_access",
        "selector_group_id": "verified_web_agent_access-primary",
        "value": "unknown",
        "observed_at": "2026-09-06T08:50:57.585Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "api-overview"
          },
          {
            "node_kind": "resource",
            "node_id": "authentication"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [],
        "note": "The retained excerpts for Twilio Messaging API do not state a web-agent or crawler access policy for the assessed resources in either direction."
      },
      {
        "stage": "sign_up",
        "signal_code": "access_control_operability",
        "selector_group_id": "access_control_operability-primary",
        "value": "unknown",
        "observed_at": "2026-09-06T08:50:57.128Z",
        "tested_surfaces": [
          {
            "node_kind": "endpoint",
            "node_id": "registration"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [],
        "note": "The retained evidence does not provide enough information to determine if an agent can operate access controls and safe handoffs deterministically."
      },
      {
        "stage": "sign_up",
        "signal_code": "access_entrypoint_stability",
        "selector_group_id": "access_entrypoint_stability-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:15.522Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:9c080b95b5750ad97cfaf713ae4e31eebb6b028849dc8bd7359041ae2f80d681",
                "capture_rung": "headless"
              }
            ],
            "artifact_digests": [
              "sha256:032c5f31299cdd81eef83c75bc863eb9ad2d062e62d664b7c6dffdcaa0af7cea",
              "sha256:31f4727888f1f5b1a7d4b97007ad6cad838d2f80cefc530e25636f752cc90fc7",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:b29e1f0a8930523bdfb2c98ed01909535b636e6c10b1bc2eb1cc596151ccb175",
              "sha256:b67105fcafbfb7223ddd4e0ca80c2efddff52b77561e4d365fe3de9b8b644c69",
              "sha256:c72b269af720ca22d14383250f7ec613964fb91585be728d7a263121750b643c"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "account-signup"
            },
            "locators": [
              {
                "artifact_digest": "sha256:b67105fcafbfb7223ddd4e0ca80c2efddff52b77561e4d365fe3de9b8b644c69",
                "start_byte": 13342,
                "end_byte": 14144,
                "value_digest": "sha256:111d453758b8f94331d0b203053c2f89d117360eb64311f424277d7e4400068d"
              }
            ]
          }
        ],
        "note": "Twilio provides a stable route to begin obtaining service access by allowing users to sign up for a Twilio free trial account without a credit card."
      },
      {
        "stage": "sign_up",
        "signal_code": "captcha_compatible_access",
        "selector_group_id": "captcha_compatible_access-primary",
        "value": "unknown",
        "observed_at": "2026-09-06T08:51:15.522Z",
        "tested_surfaces": [
          {
            "node_kind": "endpoint",
            "node_id": "registration"
          },
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [],
        "note": "The evidence does not mention whether a CAPTCHA boundary is present during the registration process."
      },
      {
        "stage": "sign_up",
        "signal_code": "delegated_identity_access",
        "selector_group_id": "delegated_identity_access-primary",
        "value": "partial",
        "observed_at": "2026-09-06T08:51:12.048Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-47aea8764f65bef5ae609e63da151056f2bd9524f1ca17ae649c7581d80055ed"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-f640bfb2a3f247e81fd4038d810324e1b4c9b8a91951aae133740a3d156b1dd0"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:52202434a442e8170046c13968bdf521c372833dcac10922b85389d27593b899",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:97a7a5482405bcedd3836b227bda10610e775860b59be2801fb182dda8f158c8",
              "sha256:a05dba3c28dda7257e6daa1ae34e0f3b2374474e63dc17077b0a6639b1cb5863",
              "sha256:d3c593e010dfafb7cd55fc413455d6a24f6f52263babf25f9c93e901342f7044",
              "sha256:f584fa41be16eec905ad0dd45b9d75d54b9b1a6d9091f54a623d247e53f0620a"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-47aea8764f65bef5ae609e63da151056f2bd9524f1ca17ae649c7581d80055ed"
            },
            "locators": [
              {
                "artifact_digest": "sha256:97a7a5482405bcedd3836b227bda10610e775860b59be2801fb182dda8f158c8",
                "start_byte": 19100,
                "end_byte": 19891,
                "value_digest": "sha256:cf47ea7d2fa98c61a9ee38523dc844dcae716513fc5d9f5ecd4327c053559800"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:ec3157d4263f334b21ab0c0bf63b31fe85ac806e5827b2bff02db3b9efe3ef1f",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4a8d3cee6799dcab9cac9cee960fe58aaed5c3e118a7e34daadab901fcaf7f18",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7a45081277c4e3d83411e348873c1f20ae2b1b5e842711b8943ce1a4acac98aa",
              "sha256:fc4ea78b9fc26b1bfc1c3b33f974eeb2e26f1ab56edbe8d55e8ac079bb23f6e8"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:4a8d3cee6799dcab9cac9cee960fe58aaed5c3e118a7e34daadab901fcaf7f18",
                "start_byte": 12253,
                "end_byte": 13043,
                "value_digest": "sha256:2f7049c24782704c54fd1e9374d05b2e066a95bf3cd13070f0b6ff423ad3f76a"
              }
            ]
          }
        ],
        "note": "Twilio provides machine credentials (API keys) that can be created and revoked via the Console or API, but standard API keys leave account-level endpoint access restricted."
      },
      {
        "stage": "sign_up",
        "signal_code": "phone_verification_compatible",
        "selector_group_id": "phone_verification_compatible-primary",
        "value": "unknown",
        "observed_at": "2026-09-06T08:51:15.522Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [],
        "note": "The evidence explicitly states that sign-up includes verifying a personal phone number, but does not document an explicit safe resumable handoff mechanism for an agent."
      },
      {
        "stage": "pay",
        "signal_code": "checkout_operability",
        "selector_group_id": "checkout_operability-primary",
        "value": "unknown",
        "observed_at": "2026-09-06T08:51:16.259Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [],
        "note": "The retained evidence describes clicking Upgrade in the Twilio Console to create a profile, add an address, load a starting balance, and add payment details, but it does not establish deterministic API or protocol checkout construction and resumption."
      },
      {
        "stage": "pay",
        "signal_code": "commitment_disclosure",
        "selector_group_id": "commitment_disclosure-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:49.040Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "pricing"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-cfa12ce6e4f5f5ff16c4a65698f5d4c7be599bc6f54d70a6e41dcf742e0637ac"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:6ed80517dc1bb0da4747d15db21538b6b07e2475d29ccb0fa08bdb7879b2b5ad",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:08bd4760a307405ea99a0dcf2be06bf200887ae70329ca652390ad2556ad9798",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7be4bda36bc992e89d81bb1f04dd946e76e06feee862ce70afc68e0273d09de1",
              "sha256:ae90e8328b76ee0265f077e52988f09cb41cc6fe79ca373de8f0d036764a9456"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-cfa12ce6e4f5f5ff16c4a65698f5d4c7be599bc6f54d70a6e41dcf742e0637ac"
            },
            "locators": [
              {
                "artifact_digest": "sha256:7be4bda36bc992e89d81bb1f04dd946e76e06feee862ce70afc68e0273d09de1",
                "start_byte": 20219,
                "end_byte": 21015,
                "value_digest": "sha256:eb366e4e9a798da636ffc9a3d34a7db16be457df3e6d25332e0571aaf3c011fe"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:f5f9f2d462b6ffd098505d75a230e7557a75363dafa2e7f95093fa522b5d6da3",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2272ff79f8e0d714bcae94d73c8cf4d24eb340a44cae167440ee65e703e052ba",
              "sha256:34c0d0d994572a82c3a46496ccb236d9c614b46bfd9b37474ec045811b52b396",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:c7035f8dcfff6f78bbf50406d397157a8f520584b0e5f1cf75e7ea67f857037a"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "pricing"
            },
            "locators": [
              {
                "artifact_digest": "sha256:34c0d0d994572a82c3a46496ccb236d9c614b46bfd9b37474ec045811b52b396",
                "start_byte": 20437,
                "end_byte": 21235,
                "value_digest": "sha256:4e1ec0c18996644c17a6bb9ff9709a1e4b62da3953cb4ec0fe964c7827a440b9"
              }
            ]
          }
        ],
        "note": "Twilio explicitly discloses pricing for Messaging service, including usage rates starting at $0.0083 to send or receive SMS/RCS messages, WhatsApp messaging starting at $0.005 plus Meta template fees, and phone numbers starting at $1.15 per month."
      },
      {
        "stage": "pay",
        "signal_code": "payment_authorization",
        "selector_group_id": "payment_authorization-primary",
        "value": "unknown",
        "observed_at": "2026-09-06T08:51:16.259Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [],
        "note": "The documentation mentions adding payment details and loading a starting balance when upgrading an account, but it does not document scoped delegation or explicit human-confirmed authorization rails with receipts."
      },
      {
        "stage": "pay",
        "signal_code": "self_service_purchase",
        "selector_group_id": "self_service_purchase-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:16.259Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:cdf52a4523c41e24b9c1474e01e84ddd70fdec0134fbf30374ea9d6199535208",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:207462e4957be6cc67321720d156b74aeae9f01039422bc675ffe96b25e24f67",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:73962c0cf05fdd38da961126219781c8eafd00a8166f27c317b388fa785dc728",
              "sha256:b67105fcafbfb7223ddd4e0ca80c2efddff52b77561e4d365fe3de9b8b644c69"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "account-signup"
            },
            "locators": [
              {
                "artifact_digest": "sha256:b67105fcafbfb7223ddd4e0ca80c2efddff52b77561e4d365fe3de9b8b644c69",
                "start_byte": 24512,
                "end_byte": 25311,
                "value_digest": "sha256:3723fd54013952cea75b87b9ea28f7e85d9b75edf0118ac30aa8c208d22680bd"
              }
            ]
          }
        ],
        "note": "Twilio documents a direct self-service upgrade path to move from a free trial to a paid account in the Twilio Console by clicking Upgrade, creating a profile, adding an address, loading a starting balance, and adding payment details without requiring a vendor decision point."
      },
      {
        "stage": "provision",
        "signal_code": "access_material_delivery",
        "selector_group_id": "access_material_delivery-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:12.048Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-47aea8764f65bef5ae609e63da151056f2bd9524f1ca17ae649c7581d80055ed"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-f640bfb2a3f247e81fd4038d810324e1b4c9b8a91951aae133740a3d156b1dd0"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:52202434a442e8170046c13968bdf521c372833dcac10922b85389d27593b899",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:97a7a5482405bcedd3836b227bda10610e775860b59be2801fb182dda8f158c8",
              "sha256:a05dba3c28dda7257e6daa1ae34e0f3b2374474e63dc17077b0a6639b1cb5863",
              "sha256:d3c593e010dfafb7cd55fc413455d6a24f6f52263babf25f9c93e901342f7044",
              "sha256:db5ab5e16846f00aa793636420600b4e9084ffc9d8f0b41c179d9ea875ac1a86"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-47aea8764f65bef5ae609e63da151056f2bd9524f1ca17ae649c7581d80055ed"
            },
            "locators": [
              {
                "artifact_digest": "sha256:97a7a5482405bcedd3836b227bda10610e775860b59be2801fb182dda8f158c8",
                "start_byte": 11828,
                "end_byte": 12069,
                "value_digest": "sha256:05aae60f3ba0c34716005bddb79eb0e0922216418428d774bd40f2b6c3a5294f"
              }
            ]
          }
        ],
        "note": "The Key resource reference states that the creation response contains the sid and secret, that the secret must be stored because it cannot be retrieved again, and that both are the credentials for API requests: usable access material delivered once to the authorized caller."
      },
      {
        "stage": "provision",
        "signal_code": "provisioning_completion",
        "selector_group_id": "provisioning_completion-primary",
        "value": "partial",
        "observed_at": "2026-09-06T08:50:30.308Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "message-operations"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:2b0b5c6218e6b2c2166c5ada3c3254c554ebf70959a5587ad23b488b89c3d7f5",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
              "sha256:70587f875813a58673b2c8820de967672aa6f5800080b22ecd90efb43e92bff1",
              "sha256:daaa5a61d38337f12a270c95e85d0971f7f5404ac04c7a53f2e4aa7530201c5f"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "message-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
                "start_byte": 27842,
                "end_byte": 28637,
                "value_digest": "sha256:84348565c2463b7ce5e15ba9c2b08edffa09954a03e373dbd15ce19a03c9a3f6"
              },
              {
                "artifact_digest": "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
                "start_byte": 48407,
                "end_byte": 49117,
                "value_digest": "sha256:13ac4fc0118d27216b36a5b9bc63f48681c1f259062a6b38243e8a585815345b"
              }
            ]
          }
        ],
        "note": "Documentation establishes that creating a Message resource returns a synchronous HTTP response containing the resource object with initial status 'queued', but the retained text does not define an asynchronous polling bound or complete reconciliation failure contract."
      },
      {
        "stage": "provision",
        "signal_code": "provisioning_operability",
        "selector_group_id": "provisioning_operability-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:50:57.585Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          },
          {
            "node_kind": "resource",
            "node_id": "message-operations"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:ec3157d4263f334b21ab0c0bf63b31fe85ac806e5827b2bff02db3b9efe3ef1f",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:0bf4f23996021581269c48bd1c2d42a1b9cb591ada0aa2768b5b554bc76e5f00",
              "sha256:4a8d3cee6799dcab9cac9cee960fe58aaed5c3e118a7e34daadab901fcaf7f18",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:fc4ea78b9fc26b1bfc1c3b33f974eeb2e26f1ab56edbe8d55e8ac079bb23f6e8"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:4a8d3cee6799dcab9cac9cee960fe58aaed5c3e118a7e34daadab901fcaf7f18",
                "start_byte": 14547,
                "end_byte": 15345,
                "value_digest": "sha256:a196ad4b55ebebabe648497b9e0ca4479c8a132fa1508ec25984e34d59949161"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:2b0b5c6218e6b2c2166c5ada3c3254c554ebf70959a5587ad23b488b89c3d7f5",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
              "sha256:7088b6855bd8e2753b3a2e828433793bc405e4c383376ba8048d4f6cb3c07d42",
              "sha256:daaa5a61d38337f12a270c95e85d0971f7f5404ac04c7a53f2e4aa7530201c5f"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "message-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
                "start_byte": 31011,
                "end_byte": 31800,
                "value_digest": "sha256:d6ec0c46d1d559cb677c0fcbb2081021b31d0b31ee3d9fec68f2ce60cddc8f18"
              }
            ]
          }
        ],
        "note": "Provisioning of a Message resource is machine-triggerable via a standard HTTP POST request to the Messages resource URI."
      },
      {
        "stage": "operate",
        "signal_code": "agent_protocol_interface",
        "selector_group_id": "agent_protocol_interface-primary",
        "value": "unknown",
        "observed_at": "2026-09-06T08:51:11.399Z",
        "tested_surfaces": [
          {
            "node_kind": "interface",
            "node_id": "messaging-api"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [],
        "note": "The retained excerpts describe REST or RPC interfaces, SDKs and CLIs for Twilio Messaging API; they contain no first-party statement that an agent-native protocol interface is absent, and several navigation excerpts mention MCP resources without establishing coverage of the assessed targets."
      },
      {
        "stage": "operate",
        "signal_code": "credential_lifecycle",
        "selector_group_id": "credential_lifecycle-primary",
        "value": "partial",
        "observed_at": "2026-09-06T08:51:14.029Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-47aea8764f65bef5ae609e63da151056f2bd9524f1ca17ae649c7581d80055ed"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-f640bfb2a3f247e81fd4038d810324e1b4c9b8a91951aae133740a3d156b1dd0"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:28eeae84738fd4364820874583e3c910dddc74ef22a0cce475d9f8347430c04f",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:0b6ff3173506458103ad9ab23e1630ffda466f94c1d55cd8b9f412ab8a176fc5",
              "sha256:235db8f303cfa111fb6a6c91c6212434b7a6eb9f188f0baecf6e51b86a98e3ab",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:8f22a0d3f9079ad2fae88e96770316d4ba8f13668382f650383e07a88c1e5e7d"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-f640bfb2a3f247e81fd4038d810324e1b4c9b8a91951aae133740a3d156b1dd0"
            },
            "locators": [
              {
                "artifact_digest": "sha256:8f22a0d3f9079ad2fae88e96770316d4ba8f13668382f650383e07a88c1e5e7d",
                "start_byte": 7944,
                "end_byte": 8744,
                "value_digest": "sha256:3de490a3e8cd0f99b59672cb8bf3b93f72af8d52537821b609c8734e73f3754d"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:52202434a442e8170046c13968bdf521c372833dcac10922b85389d27593b899",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:97a7a5482405bcedd3836b227bda10610e775860b59be2801fb182dda8f158c8",
              "sha256:a05dba3c28dda7257e6daa1ae34e0f3b2374474e63dc17077b0a6639b1cb5863",
              "sha256:d3c593e010dfafb7cd55fc413455d6a24f6f52263babf25f9c93e901342f7044",
              "sha256:f584fa41be16eec905ad0dd45b9d75d54b9b1a6d9091f54a623d247e53f0620a"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-47aea8764f65bef5ae609e63da151056f2bd9524f1ca17ae649c7581d80055ed"
            },
            "locators": [
              {
                "artifact_digest": "sha256:97a7a5482405bcedd3836b227bda10610e775860b59be2801fb182dda8f158c8",
                "start_byte": 19100,
                "end_byte": 19891,
                "value_digest": "sha256:cf47ea7d2fa98c61a9ee38523dc844dcae716513fc5d9f5ecd4327c053559800"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:ec3157d4263f334b21ab0c0bf63b31fe85ac806e5827b2bff02db3b9efe3ef1f",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4a8d3cee6799dcab9cac9cee960fe58aaed5c3e118a7e34daadab901fcaf7f18",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7a45081277c4e3d83411e348873c1f20ae2b1b5e842711b8943ce1a4acac98aa",
              "sha256:fc4ea78b9fc26b1bfc1c3b33f974eeb2e26f1ab56edbe8d55e8ac079bb23f6e8"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:4a8d3cee6799dcab9cac9cee960fe58aaed5c3e118a7e34daadab901fcaf7f18",
                "start_byte": 12253,
                "end_byte": 13043,
                "value_digest": "sha256:2f7049c24782704c54fd1e9374d05b2e066a95bf3cd13070f0b6ff423ad3f76a"
              }
            ]
          }
        ],
        "note": "Twilio documentation provides APIs and console endpoints to create, list, and revoke/delete API keys as well as rotate and promote Auth Tokens, covering rotation and revocation. However, full credential lifecycle recovery semantics for compromised credentials are not explicitly established in the retained text."
      },
      {
        "stage": "operate",
        "signal_code": "failure_contract",
        "selector_group_id": "failure_contract-primary",
        "value": "partial",
        "observed_at": "2026-09-06T08:51:11.399Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "api-errors"
          },
          {
            "node_kind": "resource",
            "node_id": "delivery-status"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:5f837dc698437c7bc9859cb58530843351cc0e7de1989c7398d624ff6a479487",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:36fcbafc6c54ed15daf4f7d470a8dc19758fdf756b6235c2bf5403ba000bb106",
              "sha256:3b3de013095d0c06c846d35e96a6c76b2745744472c41948a05cf58513f71e94",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7a692fc3002e8fc657f976dbf9f0723ab87f4521e7326110b31f48d6ecd62b3e"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "delivery-status"
            },
            "locators": [
              {
                "artifact_digest": "sha256:36fcbafc6c54ed15daf4f7d470a8dc19758fdf756b6235c2bf5403ba000bb106",
                "start_byte": 23937,
                "end_byte": 24733,
                "value_digest": "sha256:7897a0bb9ac6dd5217e93e8f8f6f85b9060ea6803535b97c5e23bff16f5f1be4"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:dc977599475084c4bd42de9f6f70dc51d5431d8d7aaf8d75df7c838f8a1c7ef9",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:14286474dbc97bd2ce45e9afc0516fb5639b02c49439aa3ebd735d1e18abfdfa",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:a2ff9d33535165d648704c7d9ddf93b495731603869e3a506e70726d8a6fe130",
              "sha256:f3f927b25131cdefd92917d9c6b3798c4924ecf5227f93e194da7ef49d10c6fb"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:14286474dbc97bd2ce45e9afc0516fb5639b02c49439aa3ebd735d1e18abfdfa",
                "start_byte": 13518,
                "end_byte": 14301,
                "value_digest": "sha256:0bcbe9f55a68a73ec151f7f698b359594246f1e09eb4bf59f287e7488a1a6092"
              }
            ]
          }
        ],
        "note": "Twilio documents error status codes, exception schemas and delivery status callbacks; the selected quotes do not establish retry, idempotency, cancellation or reconciliation semantics for the Message resource."
      },
      {
        "stage": "operate",
        "signal_code": "operation_authentication",
        "selector_group_id": "operation_authentication-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:14.029Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-47aea8764f65bef5ae609e63da151056f2bd9524f1ca17ae649c7581d80055ed"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-f640bfb2a3f247e81fd4038d810324e1b4c9b8a91951aae133740a3d156b1dd0"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:28eeae84738fd4364820874583e3c910dddc74ef22a0cce475d9f8347430c04f",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:0b6ff3173506458103ad9ab23e1630ffda466f94c1d55cd8b9f412ab8a176fc5",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:4fe55fa5d5d1c142331e42aec241e95a209517ce21fdcb14ba03456cb98a7beb",
              "sha256:8f22a0d3f9079ad2fae88e96770316d4ba8f13668382f650383e07a88c1e5e7d"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-f640bfb2a3f247e81fd4038d810324e1b4c9b8a91951aae133740a3d156b1dd0"
            },
            "locators": [
              {
                "artifact_digest": "sha256:8f22a0d3f9079ad2fae88e96770316d4ba8f13668382f650383e07a88c1e5e7d",
                "start_byte": 8745,
                "end_byte": 9538,
                "value_digest": "sha256:82c76a81efb8f8d2aa98784b34163d46d6e5ec1ae53c399318f8a4469fd76e2d"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:52202434a442e8170046c13968bdf521c372833dcac10922b85389d27593b899",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:054c43c0f47c51ab97ba69ea3262ae7e7496903203f35c1e71fd8966eee83838",
              "sha256:97a7a5482405bcedd3836b227bda10610e775860b59be2801fb182dda8f158c8",
              "sha256:a05dba3c28dda7257e6daa1ae34e0f3b2374474e63dc17077b0a6639b1cb5863",
              "sha256:d3c593e010dfafb7cd55fc413455d6a24f6f52263babf25f9c93e901342f7044"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-47aea8764f65bef5ae609e63da151056f2bd9524f1ca17ae649c7581d80055ed"
            },
            "locators": [
              {
                "artifact_digest": "sha256:97a7a5482405bcedd3836b227bda10610e775860b59be2801fb182dda8f158c8",
                "start_byte": 9212,
                "end_byte": 9979,
                "value_digest": "sha256:86ff41196ea1355d7dc3fd10a8df5d109ea913f6e6522e53a689597e12c6a07a"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:ec3157d4263f334b21ab0c0bf63b31fe85ac806e5827b2bff02db3b9efe3ef1f",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4a8d3cee6799dcab9cac9cee960fe58aaed5c3e118a7e34daadab901fcaf7f18",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:90045a647b31a06c004e0f70332b1a4efd0bd1bdc6ae1432b0deadefdc01b6b5",
              "sha256:fc4ea78b9fc26b1bfc1c3b33f974eeb2e26f1ab56edbe8d55e8ac079bb23f6e8"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:4a8d3cee6799dcab9cac9cee960fe58aaed5c3e118a7e34daadab901fcaf7f18",
                "start_byte": 9859,
                "end_byte": 10653,
                "value_digest": "sha256:a6d3afab5d0c6108fc04d1f31f8c160af069f1d7ae388634bc65cb2b7263ce96"
              }
            ]
          }
        ],
        "note": "Twilio supports request-time authentication using HTTP Basic authentication with API Key SID and API Key secret, as well as scoped authority using Standard or Restricted API keys."
      },
      {
        "stage": "operate",
        "signal_code": "operation_contract",
        "selector_group_id": "operation_contract-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:11.399Z",
        "tested_surfaces": [
          {
            "node_kind": "interface",
            "node_id": "messaging-api"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:2b0b5c6218e6b2c2166c5ada3c3254c554ebf70959a5587ad23b488b89c3d7f5",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:0a387712ccf090b54a2b8d319db07c4e810c1863792af615ac2429a0f061818b",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
              "sha256:daaa5a61d38337f12a270c95e85d0971f7f5404ac04c7a53f2e4aa7530201c5f"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "message-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
                "start_byte": 32539,
                "end_byte": 33338,
                "value_digest": "sha256:3e8d56c7ceaf3ddfbd87926ff71371f23b633f757a5b94bbe150483b301df34a"
              },
              {
                "artifact_digest": "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
                "start_byte": 78341,
                "end_byte": 79140,
                "value_digest": "sha256:7d067883dcde79a82d323c059626ac3458b4da7b684de8b6f493344f8f2abcb9"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:5f837dc698437c7bc9859cb58530843351cc0e7de1989c7398d624ff6a479487",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:36fcbafc6c54ed15daf4f7d470a8dc19758fdf756b6235c2bf5403ba000bb106",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7a692fc3002e8fc657f976dbf9f0723ab87f4521e7326110b31f48d6ecd62b3e",
              "sha256:fb4b40c7f022cbb61040e4e372a1101c972158402d3cdb8c0c78b450ace51a4f"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "delivery-status"
            },
            "locators": [
              {
                "artifact_digest": "sha256:36fcbafc6c54ed15daf4f7d470a8dc19758fdf756b6235c2bf5403ba000bb106",
                "start_byte": 23148,
                "end_byte": 23936,
                "value_digest": "sha256:dbc158853b777725911e0b7cd85d5d179c56c50f14e37472dbf7f3789b7b7a50"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:13aa2f722561f09e2938264f75f5f0f2abd405eee738abc3f16361a9d4a63557",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:854b666b44fa427b998a8cb7456f41692a381a6d00fb102dd6d41641dd746a99",
              "sha256:9181985827b6c05ea98c021b2283bf945895e98565690c0d72609d67e4ddab41",
              "sha256:9d3d164ec81e9018b0d60d6e7cd4b59b972bd3cda8baf3f526a8050d4a916de1"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-overview"
            },
            "locators": [
              {
                "artifact_digest": "sha256:9181985827b6c05ea98c021b2283bf945895e98565690c0d72609d67e4ddab41",
                "start_byte": 9549,
                "end_byte": 10348,
                "value_digest": "sha256:290b9deae2f1cd2841197f4bb9c50bd7cad4c4cdd66ee574a9594d3b3bc2a502"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:dc977599475084c4bd42de9f6f70dc51d5431d8d7aaf8d75df7c838f8a1c7ef9",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:14286474dbc97bd2ce45e9afc0516fb5639b02c49439aa3ebd735d1e18abfdfa",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:61e0c3692a30d450b1f7ca3ca23dadb545223b8ee930cb9c9454e128aeeac5e0",
              "sha256:a2ff9d33535165d648704c7d9ddf93b495731603869e3a506e70726d8a6fe130"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:14286474dbc97bd2ce45e9afc0516fb5639b02c49439aa3ebd735d1e18abfdfa",
                "start_byte": 14302,
                "end_byte": 15024,
                "value_digest": "sha256:95251a5c0c8a02a130b2f917a0aa41c347ec7f53d235dc62d8fe5da772d28af8"
              }
            ]
          }
        ],
        "note": "Essential targets have documented REST request endpoints, parameter types, JSON/XML schemas, HTTP status codes, status callback parameters, and deletion side effects."
      },
      {
        "stage": "operate",
        "signal_code": "target_interface_access",
        "selector_group_id": "target_interface_access-primary",
        "value": "yes",
        "observed_at": "2026-09-06T08:51:11.399Z",
        "tested_surfaces": [
          {
            "node_kind": "interface",
            "node_id": "messaging-api"
          }
        ],
        "assessment_method": {
          "name": "public-semantic-assessment",
          "version": "2026-09-06",
          "method_digest": "sha256:02ec902925d3816c86a32a3d15dc2e7af6ce9931c24b9cf264063e596952d1c4"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:dc977599475084c4bd42de9f6f70dc51d5431d8d7aaf8d75df7c838f8a1c7ef9",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:14286474dbc97bd2ce45e9afc0516fb5639b02c49439aa3ebd735d1e18abfdfa",
              "sha256:4617bd9a99c86f96e31fe0bff10bfde9e41ed7378332340ccafa8e0e28360abe",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:a2ff9d33535165d648704c7d9ddf93b495731603869e3a506e70726d8a6fe130"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:14286474dbc97bd2ce45e9afc0516fb5639b02c49439aa3ebd735d1e18abfdfa",
                "start_byte": 8799,
                "end_byte": 9588,
                "value_digest": "sha256:55ee23ca9deeb7e65716bb51a6e4a11ead1c2f149e45574fe10dce35c4837d15"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:13aa2f722561f09e2938264f75f5f0f2abd405eee738abc3f16361a9d4a63557",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:854b666b44fa427b998a8cb7456f41692a381a6d00fb102dd6d41641dd746a99",
              "sha256:9181985827b6c05ea98c021b2283bf945895e98565690c0d72609d67e4ddab41",
              "sha256:9d3d164ec81e9018b0d60d6e7cd4b59b972bd3cda8baf3f526a8050d4a916de1"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-overview"
            },
            "locators": [
              {
                "artifact_digest": "sha256:9181985827b6c05ea98c021b2283bf945895e98565690c0d72609d67e4ddab41",
                "start_byte": 9549,
                "end_byte": 10348,
                "value_digest": "sha256:290b9deae2f1cd2841197f4bb9c50bd7cad4c4cdd66ee574a9594d3b3bc2a502"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:5f837dc698437c7bc9859cb58530843351cc0e7de1989c7398d624ff6a479487",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:21aaaf3ffbb0011bcc670398370fc07d12216f3e1946eccf14a1ed5d8c88b82c",
              "sha256:36fcbafc6c54ed15daf4f7d470a8dc19758fdf756b6235c2bf5403ba000bb106",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7a692fc3002e8fc657f976dbf9f0723ab87f4521e7326110b31f48d6ecd62b3e"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "delivery-status"
            },
            "locators": [
              {
                "artifact_digest": "sha256:36fcbafc6c54ed15daf4f7d470a8dc19758fdf756b6235c2bf5403ba000bb106",
                "start_byte": 21553,
                "end_byte": 22350,
                "value_digest": "sha256:f7b5d365f80ee89f89860d95b365e0ea2d67a307b5cea5024c9dfd6023b7297b"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:2b0b5c6218e6b2c2166c5ada3c3254c554ebf70959a5587ad23b488b89c3d7f5",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
              "sha256:715bc87a7db4c3339d5b68a98e09776c9a58b5e911a58b6eda670646b754bb1a",
              "sha256:daaa5a61d38337f12a270c95e85d0971f7f5404ac04c7a53f2e4aa7530201c5f"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "message-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:5d47c739617c38e2fc1f29a18ff2db3fab96953bfb29dfd3b6739610b81103c5",
                "start_byte": 21536,
                "end_byte": 22332,
                "value_digest": "sha256:95d4b724ed2f43c72a38ebae0c0815e0784ffa70c89ca78d972c176583a367d0"
              }
            ]
          }
        ],
        "note": "Every assessed target is accessible via Twilio's HTTP REST API endpoints, Twilio CLI, and language-specific SDKs."
      }
    ],
    "revision_digest": "sha256:ee6ef3e43e31bfb046ea5697f5abe679cae6f01a9a407ebf4c2a5e282e7bb1d9"
  }
}
