TransUnion Verification API

Used to verify one or more PASSporT JSON Web Tokens (or Identity headers). Also, referred to as the STI Verification Service (STI-VS).

Operations 1

POST /verification Verification (STI-VS) Request #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/transunion-verification-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

transunion-verification-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  x-logo:
    url: https://raw.githubusercontent.com/neustar/tcs-apis/main/docs/newNeustarLogo.jpeg
    altText: 3GPP Authentication & Verification Service APIs
  title: 3GPP-based Call Authentication Verification API
  description: 'Note: The above download will output the 3GPP-based Call Authentication APIs in OpenAPI format.<br><br>Definition of the Application Server HTTP messages and data types for signing and verification using the Ms reference point. These APIs are designed to be compliant with the referenced 3GPP specification, while also including several optional enhancements.  Such enhancements may or may not be brought back into the 3GPP CT1 working group for consideration.'
  contact: {}
  version: 1.0, TS 24.229, Release 17.10.0
servers:
- url: http://localhost:8080/stir/v1
  description: signing resource URI
tags:
- name: verification
  description: Used to verify one or more PASSporT JSON Web Tokens (or Identity headers).  Also, referred to as the STI Verification Service (STI-VS).
paths:
  /verification:
    post:
      tags:
      - verification
      summary: Verification (STI-VS) Request
      operationId: verificationPost
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/verificationRequest'
      x-code-samples:
      - lang: curl
        label: SHAKEN
        source: "Request: \n{\n  \"verificationRequest\": {\n    \"identityHeader\": \"eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxNTcxNTU1MDAwMCJdfSwiaWF0IjoxNjcxNTYyNTA2LCJvcmlnIjp7InRuIjoiMTcwMzU1NTAwMDEifSwib3JpZ2lkIjoiMjA4ODQ0OGMtNzE4ZS00OTMwLWJlNWQtMGVjOWIyNWQyZjAwIn0.JCjexv3fvANmT8ovwLwnnbYDMqwgIyoHgm2sCBUs8I8ZcDiRcGJSDXItMqayFwNuEOIyAax1r-RFlmioRiIxaQ;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"shaken\\\"\",\n    \"from\": {\n      \"tn\": \n        \"17035550001\"\n    },\n    \"to\": {\n      \"tn\": \n        \"15715550000\"\n    },\n    \"time\": 1671468206\n  }\n}\nResponse: \n{\n  \"verificationResponse\": {\n    \"verstatValue\": \"TN-Validation-Passed\",\n    \"verifyResults\": [\n        {\n            \"verifyResult\": {\n                \"ppt\": \"shaken\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"attest\": \"A\",\n                    \"dest\": {\n                        \"tn\": [\n                            \"15715550000\"\n                        ]\n                    },\n                    \"iat\": 1671562506,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    },\n                    \"origid\": \"2088448c-718e-4930-be5d-0ec9b25d2f00\"\n                }\n            }\n        }\n    ]\n  }\n}\n"
      - lang: curl
        label: SHAKEN w/1-Diversion
        source: "Request: \n{\n  \"verificationRequest\": {\n    \"identityHeader\": \"eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxNTcxNTU1MDAwMCJdfSwiaWF0IjoxNjcxNjQzMjQ1LCJvcmlnIjp7InRuIjoiMTcwMzU1NTAwMDEifSwib3JpZ2lkIjoiMjA4ODQ0OGMtNzE4ZS00OTMwLWJlNWQtMGVjOWIyNWQyZjAwIn0.xVehgHokyfGi1Rz8sTnE3AtRrzgI-Z8DjDPozxbyMHu_AlZsR0HSssRLuAnfC_JqGWl3WLTXrA2UsQKdine7Aw;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"shaken\\\"\",\n    \"identityHeaders\": [\n        \"eyJhbGciOiJFUzI1NiIsInBwdCI6ImRpdiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJkZXN0Ijp7InRuIjpbIjEyMTU1NTU1MTIxMiJdfSwiZGl2Ijp7InRuIjoiMTU3MTU1NTAwMDAifSwiaWF0IjoxNjcxNjQzMzQyLCJvcmlnIjp7InRuIjoiMTcwMzU1NTAwMDEifX0._dDZvZEVZSMBdnJxUUOozAPhl6wvrLB9T26wl52dsmktQQl8JN7HpqADM8bInrbbbom6I6MID57K2Lk12W0GbA;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"div\\\"\"\n    ],\n    \"from\": {\n      \"tn\": \n        \"17035550001\"\n    },\n    \"to\": {\n      \"tn\": \n        \"15715550000\"\n    },\n    \"dest\": {\n      \"tn\": \n        \"17325551212\"\n    },\n    \"time\": 1664216863,\n    \"protectedHeaders\": \"[Diversion: sip:121555551212@10.10.100.12;reason=unknown;privacy=off]\"\n  }\n}\nResponse: \n{\n  \"verificationResponse\": {\n    \"verstatValue\": \"TN-Validation-Passed\",\n    \"verifyResults\": [\n        {\n            \"verifyResult\": {\n                \"ppt\": \"shaken\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"attest\": \"A\",\n                    \"dest\": {\n                        \"tn\": [\n                            \"15715550000\"\n                        ]\n                    },\n                    \"iat\": 1671643245,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    },\n                    \"origid\": \"2088448c-718e-4930-be5d-0ec9b25d2f00\"\n                }\n            }\n        },\n        {\n            \"verifyResult\": {\n                \"ppt\": \"div\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"dest\": {\n                        \"tn\": [\n                            \"121555551212\"\n                        ]\n                    },\n                    \"div\": {\n                        \"tn\": \"15715550000\"\n                    },\n                    \"iat\": 1671643342,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    }\n                }\n            }\n        }\n    ],\n    \"divResult\": [\n        {\n            \"div\": {\n                \"tn\": \"15715550000\"\n            },\n            \"verstatValue\": \"TN-Validation-Passed\"\n        }\n    ]\n  }\n}\n"
      - lang: curl
        label: SHAKEN w/2-Diversion
        source: "Request: \n{\n  \"verificationRequest\": {\n    \"identityHeader\": \"eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxNTcxNTU1MDAwMCJdfSwiaWF0IjoxNjcxNjQ5NTQ4LCJvcmlnIjp7InRuIjoiMTcwMzU1NTAwMDEifSwib3JpZ2lkIjoiMjA4ODQ0OGMtNzE4ZS00OTMwLWJlNWQtMGVjOWIyNWQyZjAwIn0.oNEsH0whKfXsLijddY99wM5hzyT5ausMF84fV8QGOdItsjUInzP4WubnqydibAkMeb40ZoAfCiWm6O9aQHkfYw;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"shaken\\\"\",\n    \"identityHeaders\": [\n        \"eyJhbGciOiJFUzI1NiIsInBwdCI6ImRpdiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJkZXN0Ijp7InRuIjpbIjEyMTU1NTU1MTIxMiJdfSwiZGl2Ijp7InRuIjoiMTU3MTU1NTAwMDAifSwiaWF0IjoxNjcxNjQ5NTkyLCJvcmlnIjp7InRuIjoiMTcwMzU1NTAwMDEifX0.sli710c0b3qBm452InpGO1_AC9QIN2YeYsYD21ciel1iavTiBPeK0_xdj413lCMW0Mv8LFU9f8PW8jQzQhhCJA;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"div\\\"\",\n        \"eyJhbGciOiJFUzI1NiIsInBwdCI6ImRpdiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJkZXN0Ijp7InRuIjpbIjEyMTU1NTU1MTIxMyJdfSwiZGl2Ijp7InRuIjoiMTIxNTU1NTUxMjEyIn0sImlhdCI6MTY3MTY0OTY2OSwib3JpZyI6eyJ0biI6IjE3MDM1NTUwMDAxIn19.nDbddr0rmu5OHZ8oezA88x_c0EwRWLKmU9gaFeIAwzrDItJ5RVzTlr1KiZTDUh31NP75RzjhqAdHXyX_FkrDyQ;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"div\\\"\"\n    ],\n    \"from\": {\n      \"tn\": \n        \"17035550001\"\n    },\n    \"to\": {\n      \"tn\": \n        \"15715550000\"\n    },\n    \"dest\": {\n      \"tn\": \n        \"121555551213\"\n    },\n    \"time\": 1664216863,\n    \"protectedHeaders\": [\n        \"Diversion: sip:121555551212@10.10.100.12;reason=unknown;privacy=off\",\n        \"Diversion: sip:15715550000@10.10.100.10;reason=unknown;privacy=off\"\n    ]\n  }\n}\nResponse: \n{\n  \"verificationResponse\": {\n    \"verstatValue\": \"TN-Validation-Passed\",\n    \"verifyResults\": [\n        {\n            \"verifyResult\": {\n                \"ppt\": \"shaken\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"attest\": \"A\",\n                    \"dest\": {\n                        \"tn\": [\n                            \"15715550000\"\n                        ]\n                    },\n                    \"iat\": 1671649548,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    },\n                    \"origid\": \"2088448c-718e-4930-be5d-0ec9b25d2f00\"\n                }\n            }\n        },\n        {\n            \"verifyResult\": {\n                \"ppt\": \"div\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"dest\": {\n                        \"tn\": [\n                            \"121555551212\"\n                        ]\n                    },\n                    \"div\": {\n                        \"tn\": \"15715550000\"\n                    },\n                    \"iat\": 1671649592,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    }\n                }\n            }\n        },\n        {\n            \"verifyResult\": {\n                \"ppt\": \"div\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"dest\": {\n                        \"tn\": [\n                            \"121555551213\"\n                        ]\n                    },\n                    \"div\": {\n                        \"tn\": \"121555551212\"\n                    },\n                    \"iat\": 1671649669,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    }\n                }\n            }\n        }\n    ],\n    \"divResult\": [\n        {\n            \"div\": {\n                \"tn\": \"15715550000\"\n            },\n            \"verstatValue\": \"TN-Validation-Passed\"\n        },\n        {\n            \"div\": {\n                \"tn\": \"121555551212\"\n            },\n            \"verstatValue\": \"TN-Validation-Passed\"\n        }\n    ]\n  }\n}\n"
      - lang: curl
        label: RPH
        source: "Request: \n{\n  \"verificationRequest\": {\n    \"identityHeaders\": [\n                        \"eyJhbGciOiJFUzI1NiIsInBwdCI6InJwaCIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAxNS4xMDAwMSJ9.eyJkZXN0Ijp7InRuIjpbIjE1NzE1NTUwMDAwIl19LCJpYXQiOjE2NzE3MzM5MjEsIm9yaWciOnsidG4iOiIxNzAzNTU1MDAwMSJ9LCJycGgiOnsiYXV0aCI6WyJlc25ldC4xIl19LCJzcGgiOiJwc2FwLWNhbGxiYWNrIn0.k5Hanlb8ckCzGYdQS6m8v1xgUv0k4QNiSI8FG3UVZtW4jT4g2u_VYcXJ9R2p5SmQp6Fz2O3eBEwjrkvUKtrTIA;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11015.10001>;alg=ES256;ppt=\\\"rph\\\"\"\n                       ],\n    \"from\": {\n      \"tn\": \n        \"17035550001\"\n    },\n    \"to\": {\n      \"tn\": \n        \"15715550000\"\n    },\n    \"time\": 1671468206,\n    \"protectedHeaders\": [\n        \"Resource-Priority: ets.0\"\n    ]\n  }\n}\nResponse: \n{\n  \"verificationResponse\": {\n    \"verifyResults\": [\n        {\n            \"verifyResult\": {\n                \"ppt\": \"rph\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"dest\": {\n                        \"tn\": [\n                            \"15715550000\"\n                        ]\n                    },\n                    \"iat\": 1671733921,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    },\n                    \"rph\": {\n                        \"auth\": [\n                            \"ets.0\"\n                        ]\n                    }\n                }\n            }\n        }\n    ],\n    \"verstatPriority\": \"RPH-Validation-Passed\"\n  }\n}\n"
      - lang: curl
        label: SHAKEN w/RPH
        source: "Request: \n{\n  \"verificationRequest\": {\n      \"identityHeader\": \"eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxNTcxNTU1MDAwMCJdfSwiaWF0IjoxNjcxNzMzNzMyLCJvcmlnIjp7InRuIjoiMTcwMzU1NTAwMDEifSwib3JpZ2lkIjoiMjA4ODQ0OGMtNzE4ZS00OTMwLWJlNWQtMGVjOWIyNWQyZjAwIn0.UAQV-eXstCgjR6_aVSWpFl3WUoHWQMPNvKMzxckfkQsZHrC-8UfdKdIDyS1UAPUhzTb9jLvDGDH4aMMI9P_NmA;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"shaken\\\"\",\n      \"identityHeaders\": [\n          \"eyJhbGciOiJFUzI1NiIsInBwdCI6InJwaCIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAxNS4xMDAwMSJ9.eyJkZXN0Ijp7InRuIjpbIjE1NzE1NTUwMDAwIl19LCJpYXQiOjE2NzE3MzM3MjMsIm9yaWciOnsidG4iOiIxNzAzNTU1MDAwMSJ9LCJycGgiOnsiYXV0aCI6WyJlc25ldC4xIl19LCJzcGgiOiJwc2FwLWNhbGxiYWNrIn0.wmUw-Kf6Jt8rUtAVcpbHxJU7praKho8epR5YEpph0iOB3T_JZIivIX-mlR1VxK9ao_2y6JfEg9Gambi3xFBqEQ;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11015.10001>;alg=ES256;ppt=\\\"rph\\\"\"\n      ],\n      \"from\": {\n        \"tn\": \n          \"17035550001\"\n      },\n      \"to\": {\n        \"tn\": \n          \"15715550000\"\n      },\n      \"time\": 1664216863,\n      \"protectedHeaders\": [\n          \"Resource-Priority:esnet.1\"\n      ]\n  }\n}\nResponse: \n{\n  \"verificationResponse\": {\n    \"verstatValue\": \"TN-Validation-Passed\",\n    \"verifyResults\": [\n        {\n            \"verifyResult\": {\n                \"ppt\": \"shaken\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"attest\": \"A\",\n                    \"dest\": {\n                        \"tn\": [\n                            \"15715550000\"\n                        ]\n                    },\n                    \"iat\": 1671733732,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    },\n                    \"origid\": \"2088448c-718e-4930-be5d-0ec9b25d2f00\"\n                }\n            }\n        },\n        {\n            \"verifyResult\": {\n                \"ppt\": \"rph\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"dest\": {\n                        \"tn\": [\n                            \"15715550000\"\n                        ]\n                    },\n                    \"iat\": 1671733723,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    },\n                    \"rph\": {\n                        \"auth\": [\n                            \"esnet.1\"\n                        ]\n                    },\n                    \"sph\": \"psap-callback\"\n                }\n            }\n        }\n    ],\n    \"verstatPriority\": \"RPH-Validation-Passed\"\n  }\n}\n"
      - lang: curl
        label: SHAKEN w/RPH-DIV
        source: "Request: \n{\n  \"verificationRequest\": {\n    \"identityHeader\":\"eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxNTcxNTU1MDAwMCJdfSwiaWF0IjoxNjcxNjQzMjQ1LCJvcmlnIjp7InRuIjoiMTcwMzU1NTAwMDEifSwib3JpZ2lkIjoiMjA4ODQ0OGMtNzE4ZS00OTMwLWJlNWQtMGVjOWIyNWQyZjAwIn0.xVehgHokyfGi1Rz8sTnE3AtRrzgI-Z8DjDPozxbyMHu_AlZsR0HSssRLuAnfC_JqGWl3WLTXrA2UsQKdine7Aw;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"shaken\\\"\",\n    \"identityHeaders\":[\n        \"eyJhbGciOiJFUzI1NiIsInBwdCI6ImRpdiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAwMS4xMDAwNSJ9.eyJkZXN0Ijp7InRuIjpbIjEyMTU1NTU1MTIxMiJdfSwiZGl2Ijp7InRuIjoiMTU3MTU1NTAwMDAifSwiaWF0IjoxNjcxNjQzMzQyLCJvcmlnIjp7InRuIjoiMTcwMzU1NTAwMDEifX0._dDZvZEVZSMBdnJxUUOozAPhl6wvrLB9T26wl52dsmktQQl8JN7HpqADM8bInrbbbom6I6MID57K2Lk12W0GbA;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11001.10005>;alg=ES256;ppt=\\\"div\\\"\",\n        \"eyJhbGciOiJFUzI1NiIsInBwdCI6InJwaCIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cHM6Ly9jYS1jbXMubmV1c3RhcmxhYi5iaXovY2NpZC9hdXRobi92Mi9jZXJ0cy8xMTAxNS4xMDAwMSJ9.eyJkZXN0Ijp7InRuIjpbIjE1NzE1NTUwMDAwIl19LCJpYXQiOjE2NzE3MzM5MjEsIm9yaWciOnsidG4iOiIxNzAzNTU1MDAwMSJ9LCJycGgiOnsiYXV0aCI6WyJlc25ldC4xIl19LCJzcGgiOiJwc2FwLWNhbGxiYWNrIn0.k5Hanlb8ckCzGYdQS6m8v1xgUv0k4QNiSI8FG3UVZtW4jT4g2u_VYcXJ9R2p5SmQp6Fz2O3eBEwjrkvUKtrTIA;info=<https://ca-cms.neustarlab.biz/ccid/authn/v2/certs/11015.10001>;alg=ES256;ppt=\\\"rph\\\"\"\n    ],\n    \"from\":{\n      \"tn\":\n        \"17035550001\"\n    },\n    \"to\":{\n      \"tn\":\n        \"15715550000\"\n    },\n    \"dest\":{\n      \"tn\":\n        \"17325551212\"\n    },\n    \"time\":1664216863,\n    \"protectedHeaders\":[\n        \"Diversion: sip:121555551212@10.10.100.12;reason=unknown;privacy=off\",\n        \"Resource-Priority:esnet.1\"\n    ]\n  }\n}\nResponse: \n{\n  \"verificationResponse\": {\n    \"verstatValue\": \"TN-Validation-Passed\",\n    \"verifyResults\": [\n        {\n            \"verifyResult\": {\n                \"ppt\": \"shaken\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"attest\": \"A\",\n                    \"dest\": {\n                        \"tn\": [\n                            \"15715550000\"\n                        ]\n                    },\n                    \"iat\": 1671643245,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    },\n                    \"origid\": \"2088448c-718e-4930-be5d-0ec9b25d2f00\"\n                }\n            }\n        },\n        {\n            \"verifyResult\": {\n                \"ppt\": \"div\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"dest\": {\n                        \"tn\": [\n                            \"121555551212\"\n                        ]\n                    },\n                    \"div\": {\n                        \"tn\": \"15715550000\"\n                    },\n                    \"iat\": 1671643342,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    }\n                }\n            }\n        },\n        {\n            \"verifyResult\": {\n                \"ppt\": \"rph\",\n                \"status\": \"pass\",\n                \"validClaims\": {\n                    \"dest\": {\n                        \"tn\": [\n                            \"15715550000\"\n                        ]\n                    },\n                    \"iat\": 1671733921,\n                    \"orig\": {\n                        \"tn\": \"17035550001\"\n                    },\n                    \"rph\": {\n                        \"auth\": [\n                            \"ets.0\"\n                        ]\n                    }\n                }\n            }\n        }\n    ],\n    \"divResult\": [\n        {\n            \"div\": {\n                \"tn\": \"15715550000\"\n            },\n            \"verstatValue\": \"TN-Validation-Passed\"\n        }\n    ],\n    \"verstatPriority\": \"RPH-Validation-Passed\"\n  }\n}\n"
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/verificationResponse'
        '400':
          description: Service error in processing request
          content:
            application/json:
              examples:
                missingRequestBody:
                  summary: Missing Request Body
                  value:
                    error: Missing request body
                missingMandatoryParameter:
                  summary: Missing Mandatory Parameter
                  value:
                    error: Missing Mandatory Parameter
                invalidParameterValue:
                  summary: Invalid Parameter Value
                  value:
                    error: Invalid Parameter Value
                failedToParseMessageBody:
                  summary: Failed To Parse Message Body
                  value:
                    error: Failed To Parse Message Body
        '406':
          description: Service error in processing request
          content:
            application/json:
              schema:
                required:
                - error
                type: object
                properties:
                  error:
                    type: string
                    example: Requested response body type is not supported
                    description: The request could not be processed due to a not supported message body format
        '404':
          description: Service error in processing request
          content:
            application/json:
              schema:
                required:
                - error
                type: object
                properties:
                  error:
                    type: string
                    example: Requested resource not found
                    description: The request could not be processed due to no resource available related to the Request-URI
        '415':
          description: Service error in processing request
          content:
            application/json:
              schema:
                required:
                - error
                type: object
                properties:
                  error:
                    type: string
                    example: Unsupported request body type
                    description: The request could not be processed due to not supported message body
        '411':
          description: Service error in processing request
          content:
            application/json:
              schema:
                required:
                - error
                type: object
                properties:
                  error:
                    type: string
                    example: Missing mandatory Content-Length headers
                    description: The request could not be processed due to a missing Content-Length header
        '405':
          description: Policy error in processing request
          content:
            application/json:
              schema:
                required:
                - error
                type: object
                properties:
                  error:
                    type: string
                    example: Method not allowed
                    description: The resource was invoked with unsupported operation
        '500':
          description: Policy error in processing request
          content:
            application/json:
              schema:
                required:
                - error
                type: object
                properties:
                  error:
                    type: string
                    example: Internal server error
                    description: The request failed due to internal error
components:
  schemas:
    verificationResponse:
      title: verificationResponse
      properties:
        verificationResponse:
          type: object
          description: JSON structure of the verification response
          properties:
            requestId:
              type: string
              description: An opaque identifier that is reflected from the request to support troubleshooting and fault analysis
              example: '45690'
            displayName:
              type: string
              description: The display name, reflected from the request, but possibly modified by Call Validation Treatment
              example: '[V]John Smith'
            divResult:
              type: array
              description: Parameter informing of the result of the verification of diverting identities. For each verified identity, the "verstat" parameter is added to the verified identity. The “divResult” parameter is an array of one or more [div, verstatValue] tuples
              items:
                type: object
                properties:
                  div:
                    type: object
                    properties:
                      tn:
                        type: string
                        description: Allowed characters as for local-number-digits and global-number-digits. The number needs to be in canonical form. See “from”, “to” or “dest” above for accepted format
                        example: '12155551212'
                      uri:
                        type: string
                        description: Used if the “from”, “to” or “dest” is given in a SIP URI. See “from”, “to” or “dest” above for accepted formats
                        example: null
                  verstatValue:
                    type: string
                    example: TN-Validation-Passed
            verstatValue:
              type: string
              description: Parameter informing of the result of the verification of originating identity. To be used in the "verstat" parameter added to the verified identity. The parameter is mandatory if the request contains a PASSporT "shaken" JSON Web Token
              example: TN-Validation-Passed
            verstatPriority:
              type: string
              description: Parameter informing of the result of the verification of the Resource-Priority header field and optionally the header field value "psap-callback" of the Priority header field
              example: RPH-Validation-Passed
            verifyResults:
              description: Each array entry contains the verification results of a PASSporT contained in the request
              type: array
              items:
                type: object
                required:
                - verifyResult
                properties:
                  verifyResult:
                    description: Contains the verification results of a single Identity header field contained in the identityHeader parameter or an entry of the identityHeaders array of the verification request.The ppt and status parameters are always present. The inclusion of the other parameters in the tuple depends on the value of the status parameter.
                    type: object
                    required:
                    - ppt
                    - status
                    properties:
                      ppt:
                        type: string
                        description: Identifies the type of PASSporT associated with this verifyResult entry
                      status:
                        type: string
                        description: Identifies the verification result of the PASSporT associated with this verifyResult entry
                      reasonCode:
                        type: integer
                        description: Identifies the failure reason code of the failing PASSporT. Optional since this is included only when the verifyResult "status" parameter has a value of "fail"
                      reasonText:
                        type: string
                        description: Identifies the failure text associated with the failure reason code. Optional since this is included only when the verifyResult "status" parameter has a value of "fail"
                      reasonDescription:
                        type: string
                        description: Provides a more detailed description of the Verification Service failure. This is included, if available, only when the verifyResult "status" parameter has a value of "fail"
                      passport:
                        type: string
                        description: Contains the failing PASSporT. Optional since this is included only when the verifyResult "status" parameter has a value of "fail"
                      validClaims:
                        type: object
                        description: This parameter contains the payload of the verified PASSporT. Optional since this is included only when the verifyResult "status" parameter has a value of "pass"
              example:
              - verifyResult:
                  ppt: shaken
                  status: pass
                  validClaims:
                    attest: B
                    dest:
                      tn:
                      - '12155551212'
                      uri: null
                    iat: 1664199282
                    orig:
                      tn: '12155551211'
                    origid: 123e4567-e89b-12d3-a456-426655440000
              - verifyResult:
                  ppt: div
                  status: pass
                  validClaims:
                    dest:
                      tn:
                      - '12155551213'
                      uri: null
                    iat: 1664199282
                    orig:
                      tn: '12155551211'
                    div:
                      tn: '121555551212'
                      hi: null
              - verifyResult:
                  ppt: rph
                  status: pass
                  validClaims:
                    dest:
                      tn:
                      - '12155551212'
                      uri: null
                    iat: 1664199282
                    orig:
                      tn: '12155551211'
                    rph:
                      auth:
                      - esnet.0
    verificationRequest:
      title: verificationRequest
      properties:
        verificationRequest:
          description: JSON structure of the verification request
          type: object
          required:
          - identityHeader
          - to
          - time
          - from
          properties:
            identityHeader:
              type: string
              description: This parameter contains a "shaken" Identity header field value to be verified
              example: kjhytrciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cDovL05FVS1DMDJGRzJLN01MODU6ODA4MC9jY2lkL2F1dGhuL3YyL2NlcnRzLzExMDAxLjEwMDAxIn0.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxNTcxNTU1MDAwMCJdfSwiaWF0IjoxNjQ5NTM2NTMxLCJvcmlnIjp7InVyaSI6InNpcDphbGljZUBleGFtcGxlLmNvbSJ9LCJvcmlnaWQiOiJjODcyNDU3NS1iNzgxLTExZWMtYjU3NC0wMjQyYWMxMTAwMDIifQ.piGZhwqwWaKM4cOcrDTMeFKOY5UlekVDlKZTxlge4x0ERnSe9uW4400gaoVFdpGiTOzoCt9QdSfwLV_hcmvT0g;info=<http://NEU-C02FG2K7ML85:8080/ccid/authn/v2/certs/11001.10001>;alg=ES256;ppt="shaken"
            identityHeaders:
              type: array
              items:
                type: string
              description: This parameter contains one or more "div" and/or "rph" Identity header field values to be verified
              example:
              - mjhtrrciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cDovL05FVS1DMDJGRzJLN01MODU6ODA4MC9jY2lkL2F1dGhuL3YyL2NlcnRzLzExMDAxLjEwMDAxIn0.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxNTcxNTU1MDAwMCJdfSwiaWF0IjoxNjQ5NTM2NTMxLCJvcmlnIjp7InVyaSI6InNpcDphbGljZUBleGFtcGxlLmNvbSJ9LCJvcmlnaWQiOiJjODcyNDU3NS1iNzgxLTExZWMtYjU3NC0wMjQyYWMxMTAwMDIifQ.piGZhwqwWaKM4cOcrDTMeFKOY5UlekVDlKZTxlge4x0ERnSe9uW4400gaoVFdpGiTOzoCt9QdSfwLV_hcmvT0g;info=<http://NEU-C02FG2K7ML85:8080/ccid/authn/v2/certs/11001.10001>;alg=ES256;ppt="div"
              - eyJhbGciOiJFUzI1NiIsInBwdCI6InNoYWtlbiIsInR5cCI6InBhc3Nwb3J0IiwieDV1IjoiaHR0cDovL05FVS1DMDJGRzJLN01MODU6ODA4MC9jY2lkL2F1dGhuL3YyL2NlcnRzLzExMDAxLjEwMDAxIn0.eyJhdHRlc3QiOiJBIiwiZGVzdCI6eyJ0biI6WyIxNTcxNTU1MDAwMCJdfSwiaWF0IjoxNjQ5NTM2NTMxLCJvcmlnIjp7InVyaSI6InNpcDphbGljZUBleGFtcGxlLmNvbSJ9LCJvcmlnaWQiOiJjODcyNDU3NS1iNzgxLTExZWMtYjU3NC0wMjQyYWMxMTAwMDIifQ.piGZhwqwWaKM4cOcrDTMeFKOY5UlekVDlKZTxlge4x0ERnSe9uW4400gaoVFdpGiTOzoCt9QdSfwLV_hcmvT0g;info=<http://NEU-C02FG2K7ML85:8080/ccid/authn/v2/certs/11001.10001>;alg=ES256;ppt="rph"
            to:
              type: object
              description: The destination identity taken from the To header field. Used when no "div" claim is included
              properties:
                tn:
                  type: string
                  description: Allowed characters as for local-number-digits and global-number-digits. The number must be in canonical form. Accepted input format (note that a server implementation may support more formats) - <ol>

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/transunion/refs/heads/main/openapi/transunion-verification-api-openapi.yml