{
  "title": "Number Verification offline teaching fixtures",
  "source_article": "https://yenra.com/mobile-web-services/",
  "specification": "CAMARA Number Verification 2.1.0, release r3.2",
  "specification_url": "https://github.com/camaraproject/NumberVerification/blob/r3.2/code/API_definitions/number-verification.yaml",
  "instructions": "Synthetic examples for testing application decision logic locally. No live API URL or credentials are included. The cases envelope is a Yenra teaching format, not a provider request format. Provider onboarding and user authorization must be implemented separately. Classify successful Boolean responses as match/mismatch, and incomplete or invalid responses as unavailable.",
  "request": {
    "phoneNumber": "+12025550123"
  },
  "cases": [
    {
      "name": "match",
      "http_status": 200,
      "body": {
        "devicePhoneNumberVerified": true
      },
      "expected_app_outcome": "match"
    },
    {
      "name": "mismatch",
      "http_status": 200,
      "body": {
        "devicePhoneNumberVerified": false
      },
      "expected_app_outcome": "mismatch"
    },
    {
      "name": "permission_error",
      "http_status": 403,
      "body": null,
      "note": "Error body omitted; consult the provider error contract.",
      "expected_app_outcome": "unavailable"
    },
    {
      "name": "timeout",
      "http_status": null,
      "body": null,
      "expected_app_outcome": "unavailable"
    },
    {
      "name": "invalid_response",
      "http_status": 200,
      "body": {
        "devicePhoneNumberVerified": "true"
      },
      "note": "String deliberately violates the Boolean response type.",
      "expected_app_outcome": "unavailable"
    }
  ]
}
