{
  "api_contract": "sourcey.catalog-api/v1",
  "release_id": "sha256:f94358e3c57b6e575ca58c8031b9b7552cbfdb411f937b8ecdc3b042c4980a77",
  "artifact_sha256": "sha256:7472396c2449279d33e7a0fb2426f02a89991501262d1db8c04c81d57bdf9021",
  "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:cad9f851ab1bb553246eb2fb2b2803a4741814a33ccf28997014247439b9013d",
      "entity_revision_digest": "sha256:6789395a68188d85e262606330dbb20d4dcfd49f918934a99993ca476c86ca81"
    },
    "declaration_revision_digest": "sha256:3b099a62c294cdf195c5df386cceeb6b7e7ea039816c5d6e1ce50e0319cfaf93",
    "declaration": {
      "declaration_id": "declaration_twilio_messaging_api_operations",
      "provenance": {
        "repository": "sourcey/agent-ready-services",
        "commit": "62b512f0c49352e55a399ba53866a5effa431d71",
        "path": "vendors/tw/twilio.yaml",
        "git_blob_oid": "235c1eb240db47dcc54c468982c95904cf9ba2f0",
        "blob_digest": "sha256:5d039e3faedb3c975e9d311f32b6c7c2d7d121bb1429ad8b03b906ff2f7ebe8a"
      },
      "status": "community_declared"
    },
    "lifecycle": "active",
    "effective_from": "2026-08-20T14:33:24.000Z",
    "signals": [
      {
        "stage": "evaluate",
        "signal_code": "eligibility_decidability",
        "selector_group_id": "eligibility_decidability-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:56:04.824Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "service-terms"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:30548c9c64f17a316e5431bbba908700be7c8f5151f62e19753a061eaa76be05",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:134203d2e4993312e9cc4a791ac04375337256a1635a3de2bd827afd7d0c86b0",
              "sha256:345d443359e6c678576ff03647a581dbff08261ca70fa1e90630122f0a023cb4",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:9392a9bfa57743b5e6c87dcfc2d0ea274543c4fc694a3de54ecc4a55e07496e9"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "service-terms"
            },
            "locators": [
              {
                "artifact_digest": "sha256:345d443359e6c678576ff03647a581dbff08261ca70fa1e90630122f0a023cb4",
                "start_byte": 27821,
                "end_byte": 28627,
                "value_digest": "sha256:1cdbdf3077c1f70865500741cc39cbdabde7198cfddf77a4d2f027a810616134"
              },
              {
                "artifact_digest": "sha256:345d443359e6c678576ff03647a581dbff08261ca70fa1e90630122f0a023cb4",
                "start_byte": 58256,
                "end_byte": 59055,
                "value_digest": "sha256:761a88056dfb8125f57c9670ea47a02289eabd966bf4e5ff29dd1dfa81f56490"
              }
            ]
          }
        ],
        "note": "Twilio's Terms of Service explicitly define material eligibility conditions including legal power and authority to accept the agreement, entity domicile identification, and representations regarding authority, but specific product-level eligibility criteria are not fully detailed in the provided excerpt."
      },
      {
        "stage": "evaluate",
        "signal_code": "pricing_decidability",
        "selector_group_id": "pricing_decidability-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:29.598Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "pricing"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-cfa12ce6e4f5f5ff16c4a65698f5d4c7be599bc6f54d70a6e41dcf742e0637ac"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:6651edc718e5c7d7a7e005b7c66c45d7e66d29ce4de084e2c5293b6815f66f62",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:09118ac61a3b1374b27acf891c427719865ce585ccf9f4876cad8feb987c8359",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:50c7b2ca383d5e6cc1bbcb5e017ce0b420d83c9e9edd4c9441b05b32396b304e",
              "sha256:c92fb4629fcdc7c65f1d33ec4b68a31883b601b12141fc2f32294fe7c0ab8903"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-cfa12ce6e4f5f5ff16c4a65698f5d4c7be599bc6f54d70a6e41dcf742e0637ac"
            },
            "locators": [
              {
                "artifact_digest": "sha256:c92fb4629fcdc7c65f1d33ec4b68a31883b601b12141fc2f32294fe7c0ab8903",
                "start_byte": 20984,
                "end_byte": 21780,
                "value_digest": "sha256:90e0eb4c9d41a3400eca65612d4b839e6124bbbfdf78f907d0aa5eb7af216804"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:4a696fd5b705ed19914eaf51a65fc04bdbd809d02db59d3e6430ae3297ea513b",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:0b0a928a27cf70c1d1c2e3282d4d8eac70d43b60b02802c6dce3ae26cc1aa525",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:848bf5051ea872c8d1cf03efa9b00e199acaf2cfb7b578d417c63ad8e29a85ad",
              "sha256:e6ef75954ee426ff685abacc70fd3152eb1753c10730aaf81e84c129af88ac95"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "pricing"
            },
            "locators": [
              {
                "artifact_digest": "sha256:0b0a928a27cf70c1d1c2e3282d4d8eac70d43b60b02802c6dce3ae26cc1aa525",
                "start_byte": 21204,
                "end_byte": 22003,
                "value_digest": "sha256:7e74c205518a87fc35cf01d5b32029baba512527a8bff63209e60809931c9c66"
              }
            ]
          }
        ],
        "note": "Twilio provides explicit pay-as-you-go pricing variables for SMS ($0.0083) and WhatsApp ($0.005) messaging, alongside phone number fees ($1.15/month)."
      },
      {
        "stage": "evaluate",
        "signal_code": "service_discovery",
        "selector_group_id": "service_discovery-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:55:57.856Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "api-overview"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:687d73713f91e857e4de18dbec8f0a58c987350b8a38c134c720937873f2b07d",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:0158a79129b3b507fe2419374e647ce2f64227629d05317c5db5df8e9885bdaf",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:906f42acbecc08c1a28d17af29cb2a88de513768efcb6b3e50fc7927da81154f",
              "sha256:ceb4a7cc589ab12743a688279df586846d8abcf7ab3e7a16a81378f36d050d75"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-overview"
            },
            "locators": [
              {
                "artifact_digest": "sha256:ceb4a7cc589ab12743a688279df586846d8abcf7ab3e7a16a81378f36d050d75",
                "start_byte": 9462,
                "end_byte": 10257,
                "value_digest": "sha256:86e51185153e2352cde45907ad9a82e3ceb2070304b167d6945d2f944f5f6988"
              },
              {
                "artifact_digest": "sha256:ceb4a7cc589ab12743a688279df586846d8abcf7ab3e7a16a81378f36d050d75",
                "start_byte": 8674,
                "end_byte": 9461,
                "value_digest": "sha256:deebb7a2bc89204786ecfb497ab3984261321f4309723921b00cc793a3c374b0"
              }
            ]
          }
        ],
        "note": "The Twilio API overview documentation outlines stable REST APIs and SDK entrypoints for the Messaging API."
      },
      {
        "stage": "evaluate",
        "signal_code": "terms_access",
        "selector_group_id": "terms_access-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:04.824Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "service-terms"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:30548c9c64f17a316e5431bbba908700be7c8f5151f62e19753a061eaa76be05",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:345d443359e6c678576ff03647a581dbff08261ca70fa1e90630122f0a023cb4",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:9392a9bfa57743b5e6c87dcfc2d0ea274543c4fc694a3de54ecc4a55e07496e9",
              "sha256:f776822d26b23bbcf458c27d9e2a32a24f7476a3285316d6d87b728d4133212d"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "service-terms"
            },
            "locators": [
              {
                "artifact_digest": "sha256:345d443359e6c678576ff03647a581dbff08261ca70fa1e90630122f0a023cb4",
                "start_byte": 39052,
                "end_byte": 39850,
                "value_digest": "sha256:95cc4e16441ff0ce516c36ad4e81401722d1e727fede6988b0548b3353bd004b"
              },
              {
                "artifact_digest": "sha256:345d443359e6c678576ff03647a581dbff08261ca70fa1e90630122f0a023cb4",
                "start_byte": 85481,
                "end_byte": 86277,
                "value_digest": "sha256:c9a8b46c06a17bf49e9e99cb978b188bfd07c2f607b538a4b99383f83694b046"
              }
            ]
          }
        ],
        "note": "Applicable terms of service are retrievable and readable, detailing customer responsibilities, acceptable use policy incorporation, and document order of precedence."
      },
      {
        "stage": "sign_up",
        "signal_code": "access_control_operability",
        "selector_group_id": "access_control_operability-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:13.615Z",
        "tested_surfaces": [
          {
            "node_kind": "endpoint",
            "node_id": "registration"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [],
        "note": "The retained evidence describes Console home page options and trial flows, but does not state whether the access control form inputs, navigation, and validation can be operated deterministically by an agent."
      },
      {
        "stage": "sign_up",
        "signal_code": "access_entrypoint_stability",
        "selector_group_id": "access_entrypoint_stability-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:13.615Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:d8a53085ce2d0b5474ec94a0705e6eaaf5cfcac47e84b6994a5a40d64b808544",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2a55d984cf86baa1fa3962a0cc03f549b46d566bebb52b2f3f5d5761a4845066",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:c0082758c42910611a0b48a195c5e39c722193190f05807962f07692a229f496",
              "sha256:c75f7cb7ec5c15e570e3ddc73e53c0a11ab564d3446b24728938dd36fa7642fc"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "account-signup"
            },
            "locators": [
              {
                "artifact_digest": "sha256:2a55d984cf86baa1fa3962a0cc03f549b46d566bebb52b2f3f5d5761a4845066",
                "start_byte": 14063,
                "end_byte": 14862,
                "value_digest": "sha256:5872bbd7c957cec8168e46f6644d2b6fac19033606d6d84360520689ce1125e1"
              }
            ]
          }
        ],
        "note": "Twilio explicitly provides a stable route to begin obtaining service access by instructing users to sign up for a Twilio trial account, which opens the Twilio Console."
      },
      {
        "stage": "sign_up",
        "signal_code": "captcha_compatible_access",
        "selector_group_id": "captcha_compatible_access-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:13.615Z",
        "tested_surfaces": [
          {
            "node_kind": "endpoint",
            "node_id": "registration"
          },
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [],
        "note": "The retained evidence across both captured targets describes trial setup, phone verification steps, and account options, but does not state whether a CAPTCHA is present or if an agent-compatible route exists."
      },
      {
        "stage": "sign_up",
        "signal_code": "delegated_identity_access",
        "selector_group_id": "delegated_identity_access-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:55:58.442Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:b5ef335e6ca4501b5cc6a291248879abc5bc4d13fa89f6b75d8172c10a65914d",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7e2762cec81c100ffa752716135d0d55dd5f3fc63606e7c8a987d287c51a17b5",
              "sha256:dc0018f8c5124764e2a27657fa1e1e58f657da71661a104f00a6ce1f9b6b85e3"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
                "start_byte": 12179,
                "end_byte": 12975,
                "value_digest": "sha256:315e1eaa60dce4986f009ed837dcf9a13a91963cdcbc3ea152b91effd8af6ea8"
              },
              {
                "artifact_digest": "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
                "start_byte": 12976,
                "end_byte": 13773,
                "value_digest": "sha256:946eb471cb78c10afedfc251bf362233d0bcec2df6b0b247b87a770a82fb2860"
              }
            ]
          }
        ],
        "note": "Twilio supports machine credentials such as API keys (Main, Standard, and Restricted) that can be generated or revoked, but obtaining them via the Console involves manual credential management."
      },
      {
        "stage": "sign_up",
        "signal_code": "phone_verification_compatible",
        "selector_group_id": "phone_verification_compatible-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:13.615Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [],
        "note": "The sign-up process explicitly requires verifying a personal phone number via SMS, but the retained text does not define a supported, resumable handoff mechanism for an agent following human verification."
      },
      {
        "stage": "pay",
        "signal_code": "checkout_operability",
        "selector_group_id": "checkout_operability-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:13.615Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [],
        "note": "The retained documentation describes clicking Upgrade in the Twilio Console to create a profile, add an address, load a starting balance, and enter payment details. However, the evidence does not detail deterministic API/protocol flow steps for checkout hand off approval and resumption."
      },
      {
        "stage": "pay",
        "signal_code": "commitment_disclosure",
        "selector_group_id": "commitment_disclosure-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:29.598Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "pricing"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-cfa12ce6e4f5f5ff16c4a65698f5d4c7be599bc6f54d70a6e41dcf742e0637ac"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:6651edc718e5c7d7a7e005b7c66c45d7e66d29ce4de084e2c5293b6815f66f62",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:09118ac61a3b1374b27acf891c427719865ce585ccf9f4876cad8feb987c8359",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:50c7b2ca383d5e6cc1bbcb5e017ce0b420d83c9e9edd4c9441b05b32396b304e",
              "sha256:c92fb4629fcdc7c65f1d33ec4b68a31883b601b12141fc2f32294fe7c0ab8903"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-cfa12ce6e4f5f5ff16c4a65698f5d4c7be599bc6f54d70a6e41dcf742e0637ac"
            },
            "locators": [
              {
                "artifact_digest": "sha256:c92fb4629fcdc7c65f1d33ec4b68a31883b601b12141fc2f32294fe7c0ab8903",
                "start_byte": 20984,
                "end_byte": 21780,
                "value_digest": "sha256:90e0eb4c9d41a3400eca65612d4b839e6124bbbfdf78f907d0aa5eb7af216804"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:4a696fd5b705ed19914eaf51a65fc04bdbd809d02db59d3e6430ae3297ea513b",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:0b0a928a27cf70c1d1c2e3282d4d8eac70d43b60b02802c6dce3ae26cc1aa525",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:848bf5051ea872c8d1cf03efa9b00e199acaf2cfb7b578d417c63ad8e29a85ad",
              "sha256:e6ef75954ee426ff685abacc70fd3152eb1753c10730aaf81e84c129af88ac95"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "pricing"
            },
            "locators": [
              {
                "artifact_digest": "sha256:0b0a928a27cf70c1d1c2e3282d4d8eac70d43b60b02802c6dce3ae26cc1aa525",
                "start_byte": 21204,
                "end_byte": 22003,
                "value_digest": "sha256:7e74c205518a87fc35cf01d5b32029baba512527a8bff63209e60809931c9c66"
              }
            ]
          }
        ],
        "note": "Twilio discloses pricing for Messaging API before authorization. It provides a pay-as-you-go model with no contracts or commitments, detailing SMS/RCS starting at $0.0083 per outbound/inbound message plus carrier fees, WhatsApp 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-08-20T15:56:13.615Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [],
        "note": "The evidence states that upgrading involves adding payment details and loading a starting balance in the Twilio Console, but it does not specify a documented rail supporting scoped agent delegation or explicit human-confirmed authorization with receipts."
      },
      {
        "stage": "pay",
        "signal_code": "self_service_purchase",
        "selector_group_id": "self_service_purchase-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:13.615Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:d8a53085ce2d0b5474ec94a0705e6eaaf5cfcac47e84b6994a5a40d64b808544",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2a55d984cf86baa1fa3962a0cc03f549b46d566bebb52b2f3f5d5761a4845066",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:c16a377e493a3efbee30be79ada29b1ade9a1d5c00679c68b04c2cba8569517c",
              "sha256:c75f7cb7ec5c15e570e3ddc73e53c0a11ab564d3446b24728938dd36fa7642fc"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "account-signup"
            },
            "locators": [
              {
                "artifact_digest": "sha256:2a55d984cf86baa1fa3962a0cc03f549b46d566bebb52b2f3f5d5761a4845066",
                "start_byte": 24409,
                "end_byte": 25206,
                "value_digest": "sha256:4a88f64aa79b0867729d887d34181fa80ca035a1b40064f22536f00f1131030b"
              }
            ]
          }
        ],
        "note": "Twilio documents a direct self-service path to move from a free trial to a paid account. Users can click the Trial banner or Upgrade in the Console, create a profile, add an address, load a starting balance, and add payment details to upgrade without a vendor decision point."
      },
      {
        "stage": "provision",
        "signal_code": "access_material_delivery",
        "selector_group_id": "access_material_delivery-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:55:58.442Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:b5ef335e6ca4501b5cc6a291248879abc5bc4d13fa89f6b75d8172c10a65914d",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7e2762cec81c100ffa752716135d0d55dd5f3fc63606e7c8a987d287c51a17b5",
              "sha256:b27e376ba372824b18d110b42e515909f1d78d28e2d39af33b54577102cec03c"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
                "start_byte": 12179,
                "end_byte": 12975,
                "value_digest": "sha256:315e1eaa60dce4986f009ed837dcf9a13a91963cdcbc3ea152b91effd8af6ea8"
              }
            ]
          }
        ],
        "note": "Twilio declares that Standard and Restricted API keys can be created through its REST API, but the retained excerpt does not fully specify secret response and transfer semantics."
      },
      {
        "stage": "provision",
        "signal_code": "provisioning_completion",
        "selector_group_id": "provisioning_completion-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:56:58.069Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "message-operations"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:aee73407fb9dee4d0325327809fa9935996765afeb0f1930f570bd99b9a38c4b",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:19adf53bf1ea7c9bfbcfd544358a9198084cd48e5a280be7ce8bf32bd0cb746a",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:ba9ae102530331975cc7907d87cfe2cc156eb636736aa6d8444378095341fb88",
              "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "message-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b",
                "start_byte": 25449,
                "end_byte": 26149,
                "value_digest": "sha256:cfd0a3a3b6be5bdfdbb7088ec0a095009163b239031945072ec3b38fe2fcc9be"
              },
              {
                "artifact_digest": "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b",
                "start_byte": 27742,
                "end_byte": 28539,
                "value_digest": "sha256:e8dea81dd6b5ca6f856c83edf74b4b09712cff9dbe54a1dd94b68d1c75c8682e"
              }
            ]
          }
        ],
        "note": "The REST API creates Message resources and returns a status property with explicit message states such as queued or sending. Current evidence leaves asynchronous reconciliation and documented bounds unresolved."
      },
      {
        "stage": "provision",
        "signal_code": "provisioning_operability",
        "selector_group_id": "provisioning_operability-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:58.069Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          },
          {
            "node_kind": "resource",
            "node_id": "message-operations"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:b5ef335e6ca4501b5cc6a291248879abc5bc4d13fa89f6b75d8172c10a65914d",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7e2762cec81c100ffa752716135d0d55dd5f3fc63606e7c8a987d287c51a17b5",
              "sha256:818b448dbac5543f3a70686600ccc783479d8e29d75add302693273cd9cde1b0"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
                "start_byte": 14557,
                "end_byte": 15357,
                "value_digest": "sha256:0d4aa79fc566963c22c33e0ae58213dce96ca007a4e992ff64b1f1d6b2d6a628"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:aee73407fb9dee4d0325327809fa9935996765afeb0f1930f570bd99b9a38c4b",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:19adf53bf1ea7c9bfbcfd544358a9198084cd48e5a280be7ce8bf32bd0cb746a",
              "sha256:1a08e35a7925021256bc95b7bbb8c704a479abb8ab10efa1cad1c6e9fb06df4a",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "message-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b",
                "start_byte": 30899,
                "end_byte": 31697,
                "value_digest": "sha256:f218b3d88b133dc6860ad959a9658785a8e51b9306ea0cf5d80c844adf4ca739"
              }
            ]
          }
        ],
        "note": "Provisioning of outgoing messages can be initiated directly by sending an HTTP POST request to the Account Messages list resource URI."
      },
      {
        "stage": "operate",
        "signal_code": "credential_lifecycle",
        "selector_group_id": "credential_lifecycle-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:55:58.442Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:b5ef335e6ca4501b5cc6a291248879abc5bc4d13fa89f6b75d8172c10a65914d",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7e2762cec81c100ffa752716135d0d55dd5f3fc63606e7c8a987d287c51a17b5",
              "sha256:bf207fdd713cc9a399f0c5a3b34be53978a38e590ff4a8a9640b45ecd1aa3a10"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
                "start_byte": 11381,
                "end_byte": 12178,
                "value_digest": "sha256:9825c3a1e3f3647fc748016712807e26deff63ef5175893883a9087518b1949f"
              },
              {
                "artifact_digest": "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
                "start_byte": 12179,
                "end_byte": 12975,
                "value_digest": "sha256:315e1eaa60dce4986f009ed837dcf9a13a91963cdcbc3ea152b91effd8af6ea8"
              }
            ]
          }
        ],
        "note": "Twilio documents that API keys can be used to authenticate requests and can be revoked if compromised or no longer used to prevent unauthorized access. However, full automated credential lifecycle including programmatic rotation or recovery paths for main account secrets is not completely established."
      },
      {
        "stage": "operate",
        "signal_code": "failure_contract",
        "selector_group_id": "failure_contract-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:56:48.949Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "api-errors"
          },
          {
            "node_kind": "resource",
            "node_id": "delivery-status"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:e6d5078591e2e0ffa12b18b6610b3c14073234dc470f47e7d8244d25e8c65801",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:6b4c3ce4d82817cc9e123c5283ba8a7a7a71265adbd727a10a6072ed39007234",
              "sha256:7e02086aed9b7f6e201ec8b35710a8010c670a6b3251834091a46e91af2998f2",
              "sha256:aca4d38cf4a595d65ff20169f82046345324fef13cf68f3adb986682c24a250a"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:6b4c3ce4d82817cc9e123c5283ba8a7a7a71265adbd727a10a6072ed39007234",
                "start_byte": 13469,
                "end_byte": 14259,
                "value_digest": "sha256:3410285c57f5f1d6081b982139de8a27fe430b5a8c2aa314987076506831a242"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:aebf6466c996e39af116abb2343bb09f211ff423f2e2423ed99893c8f36c82b4",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:99baee3768e5d9595bca1774b4243de1584d4bbd2345198b85895ae56dfdc400",
              "sha256:add00b2bdb06076958abfd093f325351956ac5e9a24207f60cb8c9639195cb3b",
              "sha256:d3be67ed04b909e23c2ca1d0ebcc646a495199932d52ba0729d82d93ed44cc3a"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "delivery-status"
            },
            "locators": [
              {
                "artifact_digest": "sha256:99baee3768e5d9595bca1774b4243de1584d4bbd2345198b85895ae56dfdc400",
                "start_byte": 23076,
                "end_byte": 23872,
                "value_digest": "sha256:250c06b81ef666b3c826055a8c7f0349ba2e5309f697b06a15c87bce6fe1ebfb"
              }
            ]
          }
        ],
        "note": "Twilio documents API error status codes (e.g., 400 Bad Request, 404 Not Found, 429 Too Many Requests, 500/503), error response structures (status, message, code, more_info), and delivery status callback tracking via MessageStatus and ErrorCode. Complete failure semantics such as explicit idempotency bounds or cancellation guarantees remain partially covered."
      },
      {
        "stage": "operate",
        "signal_code": "operation_authentication",
        "selector_group_id": "operation_authentication-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:55:58.442Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "authentication"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:b5ef335e6ca4501b5cc6a291248879abc5bc4d13fa89f6b75d8172c10a65914d",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7d5bd3209e6389b32e73865258453ee50792cb047b7d4dd8f11c216c4093ff62",
              "sha256:7e2762cec81c100ffa752716135d0d55dd5f3fc63606e7c8a987d287c51a17b5"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "authentication"
            },
            "locators": [
              {
                "artifact_digest": "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
                "start_byte": 9784,
                "end_byte": 10582,
                "value_digest": "sha256:003865b3079fd309517ab2068c94249c58d0526882e35cb707e440a0f8aece17"
              },
              {
                "artifact_digest": "sha256:2d1ea43258b75dd593fd11dd06fb8cf499f48841d8d286289187e2c04bcc3c8c",
                "start_byte": 11381,
                "end_byte": 12178,
                "value_digest": "sha256:9825c3a1e3f3647fc748016712807e26deff63ef5175893883a9087518b1949f"
              }
            ]
          }
        ],
        "note": "Twilio supports request-time authentication using API Key and API Key Secret (recommended) via HTTP Basic authentication, providing standard or restricted fine-grained access permissions across API endpoints."
      },
      {
        "stage": "operate",
        "signal_code": "operation_contract",
        "selector_group_id": "operation_contract-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:58.069Z",
        "tested_surfaces": [
          {
            "node_kind": "interface",
            "node_id": "messaging-api"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:687d73713f91e857e4de18dbec8f0a58c987350b8a38c134c720937873f2b07d",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:24c0bd622b727a4f241c9b668fb147fb43c4184eb4ae4de871f86f2f05520949",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:906f42acbecc08c1a28d17af29cb2a88de513768efcb6b3e50fc7927da81154f",
              "sha256:ceb4a7cc589ab12743a688279df586846d8abcf7ab3e7a16a81378f36d050d75"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-overview"
            },
            "locators": [
              {
                "artifact_digest": "sha256:ceb4a7cc589ab12743a688279df586846d8abcf7ab3e7a16a81378f36d050d75",
                "start_byte": 9462,
                "end_byte": 10257,
                "value_digest": "sha256:86e51185153e2352cde45907ad9a82e3ceb2070304b167d6945d2f944f5f6988"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:aebf6466c996e39af116abb2343bb09f211ff423f2e2423ed99893c8f36c82b4",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:99baee3768e5d9595bca1774b4243de1584d4bbd2345198b85895ae56dfdc400",
              "sha256:add00b2bdb06076958abfd093f325351956ac5e9a24207f60cb8c9639195cb3b",
              "sha256:d3be67ed04b909e23c2ca1d0ebcc646a495199932d52ba0729d82d93ed44cc3a"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "delivery-status"
            },
            "locators": [
              {
                "artifact_digest": "sha256:99baee3768e5d9595bca1774b4243de1584d4bbd2345198b85895ae56dfdc400",
                "start_byte": 23076,
                "end_byte": 23872,
                "value_digest": "sha256:250c06b81ef666b3c826055a8c7f0349ba2e5309f697b06a15c87bce6fe1ebfb"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:aee73407fb9dee4d0325327809fa9935996765afeb0f1930f570bd99b9a38c4b",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:19adf53bf1ea7c9bfbcfd544358a9198084cd48e5a280be7ce8bf32bd0cb746a",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:8a26571b358108aad60b2ae7013909fc6b1cb83eac9a287c1bd05999958b7793",
              "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "message-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b",
                "start_byte": 75082,
                "end_byte": 75871,
                "value_digest": "sha256:5a5575bd58f48afc525bb9869ce1d54db3c691e79ca096941b72fec7d9affa48"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:e6d5078591e2e0ffa12b18b6610b3c14073234dc470f47e7d8244d25e8c65801",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:6b4c3ce4d82817cc9e123c5283ba8a7a7a71265adbd727a10a6072ed39007234",
              "sha256:aca4d38cf4a595d65ff20169f82046345324fef13cf68f3adb986682c24a250a",
              "sha256:ba9e03c39600e49bacb26315cba4426fa4a3ef55540b3100e12f9e168e1e8a8c"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:6b4c3ce4d82817cc9e123c5283ba8a7a7a71265adbd727a10a6072ed39007234",
                "start_byte": 8724,
                "end_byte": 9522,
                "value_digest": "sha256:cb93c83735beaef472a069c037e2b995e7013a8dbf3a40edc1884f643d7e3eb9"
              }
            ]
          }
        ],
        "note": "The API inputs, outputs, and effects are stably documented across the target resources, including request parameters, JSON/XML response schemas, status codes, HATEOAS URIs, status callback payloads, and CRUD message operations."
      },
      {
        "stage": "operate",
        "signal_code": "target_interface_access",
        "selector_group_id": "target_interface_access-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:58.069Z",
        "tested_surfaces": [
          {
            "node_kind": "interface",
            "node_id": "messaging-api"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:687d73713f91e857e4de18dbec8f0a58c987350b8a38c134c720937873f2b07d",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:24c0bd622b727a4f241c9b668fb147fb43c4184eb4ae4de871f86f2f05520949",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:906f42acbecc08c1a28d17af29cb2a88de513768efcb6b3e50fc7927da81154f",
              "sha256:ceb4a7cc589ab12743a688279df586846d8abcf7ab3e7a16a81378f36d050d75"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-overview"
            },
            "locators": [
              {
                "artifact_digest": "sha256:ceb4a7cc589ab12743a688279df586846d8abcf7ab3e7a16a81378f36d050d75",
                "start_byte": 9462,
                "end_byte": 10257,
                "value_digest": "sha256:86e51185153e2352cde45907ad9a82e3ceb2070304b167d6945d2f944f5f6988"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:aee73407fb9dee4d0325327809fa9935996765afeb0f1930f570bd99b9a38c4b",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:19adf53bf1ea7c9bfbcfd544358a9198084cd48e5a280be7ce8bf32bd0cb746a",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:cc5111bb3e939280d662943d598b9f62897a90f934663115f1053c16b11b4e91",
              "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "message-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:fbb805ff844cc12c790d8b9c1ab13d2d736d0aa9c3ca724f1afb0552f17ea18b",
                "start_byte": 78119,
                "end_byte": 78918,
                "value_digest": "sha256:7d067883dcde79a82d323c059626ac3458b4da7b684de8b6f493344f8f2abcb9"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:aebf6466c996e39af116abb2343bb09f211ff423f2e2423ed99893c8f36c82b4",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:99baee3768e5d9595bca1774b4243de1584d4bbd2345198b85895ae56dfdc400",
              "sha256:b8808753212c5d440376c09614305d17990a71075a850e7f244d89ae700e5d03",
              "sha256:d3be67ed04b909e23c2ca1d0ebcc646a495199932d52ba0729d82d93ed44cc3a"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "delivery-status"
            },
            "locators": [
              {
                "artifact_digest": "sha256:99baee3768e5d9595bca1774b4243de1584d4bbd2345198b85895ae56dfdc400",
                "start_byte": 21475,
                "end_byte": 22274,
                "value_digest": "sha256:c3dc5ab9b19f6d65c9d3f5c4c124b90af0e00e2280b422b5b99c64e086629848"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:e6d5078591e2e0ffa12b18b6610b3c14073234dc470f47e7d8244d25e8c65801",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:6b4c3ce4d82817cc9e123c5283ba8a7a7a71265adbd727a10a6072ed39007234",
              "sha256:6b8395220a6d8aa0b6e80c02ba2c44cf23fbaf100491e099e86e08439737654c",
              "sha256:aca4d38cf4a595d65ff20169f82046345324fef13cf68f3adb986682c24a250a"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:6b4c3ce4d82817cc9e123c5283ba8a7a7a71265adbd727a10a6072ed39007234",
                "start_byte": 9523,
                "end_byte": 10319,
                "value_digest": "sha256:15402f376b44e2a7c8a93c917c53185ba45d851dcc1a2bf0433d92beac359cfe"
              }
            ]
          }
        ],
        "note": "All essential assessment targets are accessible via stable, documented interfaces including REST HTTP APIs, Twilio SDKs across major programming languages, and the Twilio CLI."
      }
    ],
    "revision_digest": "sha256:c0bcfd7a8e706ede6bbe61f28f40ec034e533142fa48a8e1499c32029401c51f"
  }
}
