Step 1) oVASP sets an attestation

endpoint
`POST` {{baseUrl}}/api/v1/server/set_v3_attestation
params
"ta_account":"0xF937c412e7172c2c8978cEdD850DDD08e0D95e60"
"user_account":"0x96ee3769a2422215626b8a32594e8fbd5dd1b61a"
"jurisdiction":"196"
"coin_blockchain":"ETH"
"coin_token":"USDC"
"coin_address":"0x5481fabc980af705c556517426c81a963af5657d"
"coin_memo":"end-to-end walkthrough"
  • user_account is the originator/sender user account_address from Create Shyft User

  • jurisdiction is the originator/sender VASP jurisdiction id from Get Jurisdictions

response body (200 OK)
[]

Corresponding webhook event

Handling tips
  • oVASPs can opt to ignore attestation events posted by their own trust anchor account (ta_account)

  • bVASPs should check whether the destination wallet address (coin_address) is owned by them. bVASPs can then respond.

eventType
"eventType": "NEW_ATTESTATION"
params
{
    "eventType": "NEW_ATTESTATION"
    "ta_account": "0x5dF773edfCd625A7705bE05541AAC3762E82d6F5"
    "jurisdiction": "210"
    "effective_time": "1636380874"
    "expiry_time": "1699625674"
    "is_managed": "1"
    "attestation_hash": "0x4752a9f25760aa20c83857bce4672e967685755821e627bbbdc68c58d20fa5eb"
    "transaction_hash": "0x6c4f8de50275d3b251b981fed07388f2d7cef0a8eef9c1fa8fa155e496381aec"
    "user_account": "0x4B2EaF716F285d881460c366085F15d5c6C98e58"
    "public_data": "0x31312f303920746573206164647265737370726f6f66732077697468206b6576696e2030303032"
    "public_data_decoded": "11/09 tes addressproofs with kevin 0002"
    "documents_matrix_encrypted": "0x373839633835643233623732383633303063303436303236623934383436343532613061323435393765373039616463323339336262363739373235363537653238393062316336396636343962366437626639376362633465366636663066663966373837666364373033666666393664383739646337366537656264653337616137396462393562623362336637646463616365643937366562663831616262306433623537656433363935356263616639613161343062373132393965306134646131313462616332353039383061346263356435343964636164343830393239323132356134383439343930313235323432346134613439323937396566343834613461343932393239323561313234373639313630646134323834333331636662303765343437363030303661323264313432646236636339303435363336373065653163313436373730326530643634373163396530303434656138303131643463326334653430326461383133343833396437663237633666623561383361666132386138386231333434396430333965336465613137643038393661303562333730343137353939626339626266346533623362363538636262356130376261623061346333316332386436326631336664373439613863653334656430343461646365326263356637363039623133393165326631663366663166663430626537306136356630"
    "documents_matrix_encrypted_decoded": "789c85d23b7286300c046026b94846452a0a24597e709adc2393bb679725657e2890b1c69f649b6d7bf97cbc4e6f6f0ff9f787fcd703fff96d879dc76e7ebde37aa79db95bb3b3f7ddcaced976ebf81abb0d3b57ed36955bcaf9a1a40b71299e0a4da114bac250980a4bc5d549dcad4809292125a48494901252424a4a492979ef484a4a49292925a124769160da4284331cfb07e44760006a22d142db6cc904563670ee1c1467702e0d6471c9e0044ea8011d4c2c4e402da8134839d7f27c6fb5a83afa28a88b13449d039e3dea17d0896a05b370417599bc9bbf4e3b3b658cbb5a07bab0a4c31c28d62f13fd749a8ce34ed044adce2bc5f7609b1391e2f1f3ff1ff40be70a65f0"
    "availability_address_encrypted": "0x2020202020202020202020202020202020202020202020202020202020202020"
    "availability_address_encrypted_decoded": null
    "version_code": "3"
    "coin_blockchain": "BTC"
    "coin_token": "BTC"
    "coin_address": "1GfYCdni4jKeWtCrauEP5hfReZLsAL9VXP"
    "coin_memo": "20221109 e2e walkthrough"
}
The attestation can also be confirmed in the Veriscope web-app.
Attestations