{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"d770e7d1-beeb-4ed4-8acb-070ce9755289","name":"ZADA-Core","description":"ZADA-Core is the API collection that offers the service for the credential issuers or verifiers(tenant clients). By using those APIs, the issuers can offer a credential and get its metadata. For verifiers, they can submit a verification request, get the verification and check its status. Besides, this API collection also allows the tenant clients to create and connect the connection, list and edit the webhooks.\n\nTo use this API collection, please select the environment as zada-core(test).\n\n## \\---------------------------\n\n# API-Authenticate\n\nAsk the server to get a token and return this token to the issuer (tenant client). The token can only be valid for 600 seconds.\n\n#### Authentication\n\nSend the request with tenantId and password to get a token.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"token\":\"...\",\n\n\"iat\": ...,\n\n\"exp\": ...\n\n}\n\n#### Error Codes\n\n###### 1.Login issue:\n\n{\n\n\"success\": false,\n\n\"error\": \"Invalid User Error\"\n\n}\n\n## \\---------------------------\n\n# API-Create Connection:\n\nSend a request to create one connection channel for the issuers (tenant client).\n\n#### Authentication\n\nSet the values of both the name and isMultiParty, then sending a request to create this connection channel. Once the value are not set, the system will create the connection with the initial value. Each request creates a new connection. Returns various parameters of this new connection such as connectionId.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"connection\": {\n\n\"connectionId\": \"...\",\n\n\"state\": \"Invited\",\n\n\"createdAtUtc\": \"...\",\n\n\"multiParty\": false,\n\n\"zadaURL\":\"...\",\n\n\"zadaDeepLink\":\"...\",\n\n\"zadaQR\":\"...\" }\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n## \\---------------------------\n\n# API-Get All Connections:\n\nList all existing connection channels and get them connected.\n\n#### Authentication\n\nSend request to get all existing connections working. Returns various parameters of these existing connections.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"connections\": \\[...\\]\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n## \\---------------------------\n\n# API-Get Connection:\n\nSend the request to get connected with a specific connection.\n\n#### Authentication\n\nEnter the specific connectionId, send the request with this ID and get connected with this connection.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"connection\": {\n\n\"connectionId\": \"...\",\n\n\"name\":\"...\",\n\n\"myDid\": \"...\",\n\n\"theirDid\": \"...\",\n\n\"myKey\":\"...\",\n\n\"theirKey\":\"...\",\n\n\"state\": \"Connected\",\n\n\"createdAtUtc\": \"...\",\n\n\"multiParty\": false,\n\n\"zadaURL\":\"...\",\n\n\"zadaDeepLink\":\"...\",\n\n\"zadaQR\":\"...\" }\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n###### 2.ConnectionId issue:\n\n{\n\n\"success\": false,\n\n\"error\": \"{\n\n\"error\":\"Connection record not found\",\"errorType\":\"ApiException\" }\"\n\n}\n\n## \\---------------------------\n\n# API-Offer Credential:\n\nLet the issuer to offer a credential to a holder by a specific connection.\n\n#### Authentication\n\nEnter the definitionId and connectionId, set up the credentialValues. The metafile is optional. The system sends a request to offer a credential by a specific connection. Returns message about various parameters of this Credential.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"message\": {\n\n\"issuedAtUtc\": \"...\",\n\n\"zadaURL\":\"http://.../credentailId\",\n\n\"zadaDeepLink\":\"zada://network.../credentailId\",\n\n\"zadaQR\":\"https://...\"metadata\":\"credentailId\"}\" }\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n###### 2\\. DefinitionId issue:\n\n{\n\n\"success\": false,\n\n\"error\":\"{\"error\":\"Unhandled exception: definitionRecord cannot be null. (Parameter 'definitionRecord')\",\"errorType\":\"ArgumentNullException\" }\"\n\n}\n\n###### 3\\. ConnectionId issue:\n\n{\n\n\"success\": false,\n\n\"error\": \"Invalid parameters!\"\n\n}\n\n###### 4\\. CredentialValues issue:\n\n{\n\n\"success\": false,\n\n\"error\": \"Unexpected end of JSON input\"\n\n\"success\": false,\n\n\"error\": \"Invalid parameters!\"\n\n}\n\n## \\---------------------------\n\n# API-Get Credential Metadata:\n\nGet the URL of a specific credential's metadata.\n\n#### Authentication\n\nEnter the credentialId, send a request to get the credential metadata. The metadata expiry after 1 hour. Returns the metafile's url.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"metafile_url\": \"https:...\",\n\n\"expriry\": \"1 hour(s)\"\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n###### 2.CredentialId issue\n\n{\n\n\"success\": false\n\n}\n\n## \\---------------------------\n\n# API-Submit Verification Request:\n\nLet the verifier to send a request to verify a specific credential.\n\n#### Authentication\n\nEnter the connectionId and policyId to send a request for asking a verification. Returns various parameters of this verification.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"status\": {\n\n\"connectionId\": \"...\",\n\n\"verificationId\": \"...\",\n\n\"definitionId\": \"...\",\n\n\"state\": \"Requested\",\n\n\"createdAtUtc\": \"...\",\n\n\"updatedAtUtc\": \"...\",\n\n\"policy\": {\n\n\"name\": \"...\",\n\n\"version\": \"...\",\n\n\"attributes\": \\[{\n\n\"policyName\": \"Travel Pass\",\n\n\"attributeNames\": \\[\n\n\"Name\",\n\n\"Age\",\n\n\"Social Number\",\n\n\"Test Result\",\n\n\"Vaccination\" \\],\n\n\"restrictions\": \\[{\n\n}\\] }\\],\n\n\"predicates\": \\[\\],\n\n\"revocationRequirement\": {\n\n\"validAt\": \"...\",\n\n\"validNow\": false}\n\n}}\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n###### 2.ConnectionId issue:\n\n{\n\n\"success\": false,\n\n\"error\": \"{\"error\":\"Connection record not found\",\"errorType\":\"ApiException\"}\"\n\n}\n\n###### 2.PolicyId issue:\n\n{\n\n\"success\": false,\n\n\"error\":\"{\"error\":\"Invalid format for 'policyId'\",\"errorType\":\"ApiException\"}\"\n\n}\n\n## \\---------------------------\n\n# API-Get Verifications:\n\nLet the verifier to get the verification for this specific credential.\n\n#### Authentication\n\nEnter both of the connectionId and definitionId, send request to get the verification. Returns the various parameters of this verification.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"status\": {\n\n\"connectionId\": \"...\",\n\n\"verificationId\": \"...\",\n\n\"definitionId\": \"...\",\n\n\"state\": \"Requested\",\n\n\"createdAtUtc\": \"...\",\n\n\"updatedAtUtc\": \"...\",\n\n\"policy\": {\n\n\"name\": \"...\",\n\n\"version\": \"...\",\n\n\"attributes\": \\[{\n\n\"policyName\": \"Travel Pass\",\n\n\"attributeNames\": \\[\n\n\"Name\",\n\n\"Age\",\n\n\"Social Number\",\n\n\"Test Result\",\n\n\"Vaccination\" \\],\n\n\"restrictions\": \\[{\n\n}\\] }\\],\n\n\"predicates\": \\[\\],\n\n\"revocationRequirement\": {\n\n\"validAt\": \"...\",\n\n\"validNow\": false}\n\n}}\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n## \\---------------------------\n\n# API-Get Verification Status:\n\nGet the status of a specific verification\n\n#### Authentication\n\nEnter the verificationId, send the request to get the status of this verification. Returns the various parameters of this verification.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"status\": {\n\n\"connectionId\": \"...\",\n\n\"verificationId\": \"...\",\n\n\"definitionId\": \"...\",\n\n\"state\": \"Requested\",\n\n\"createdAtUtc\": \"...\",\n\n\"updatedAtUtc\": \"...\",\n\n\"policy\": {\n\n\"name\": \"...\",\n\n\"version\": \"...\",\n\n\"attributes\": \\[{\n\n\"policyName\": \"Travel Pass\",\n\n\"attributeNames\": \\[\n\n\"Name\",\n\n\"Age\",\n\n\"Social Number\",\n\n\"Test Result\",\n\n\"Vaccination\" \\],\n\n\"restrictions\": \\[{\n\n}\\] }\\],\n\n\"predicates\": \\[\\],\n\n\"revocationRequirement\": {\n\n\"validAt\": \"...\",\n\n\"validNow\": false}\n\n}}\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n###### 2.VerificationId issue\n\n{\n\n\"success\": false,\n\n\"error\": \"{\"error\":\"Verification record not found\",\"errorType\":\"ApiException\"}\"\n\n}\n\n## \\---------------------------\n\n# API-List Webhooks:\n\nList all the existing webhooks.\n\n#### Authentication\n\nSend request to list all the webhooks. Returns the various parameters of these webhooks.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"webhooks\": \\[\\]\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n## \\---------------------------\n\n# API-Create Webhook:\n\nCreate a webhook that based on the endpointUrl.\n\n#### Authentication\n\nEnter the endpointUrl, the parameter is optional. Send request to create a new webhook with this endpointUrl. Returns the various parameters of this webhooks.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"webhook\": {\n\n\"url\":\"http:.../webhook\",\n\n\"type\": \"Notification\",\n\n\"enabled\": true,\n\n\"id\": \"10537\" }\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n## \\---------------------------\n\n# API-Delete Webhook:\n\nDelete a existing webhook.\n\n#### Authentication\n\nEnter the webhook's id, send request to delete this webhook. Returns the result of deleting.\n\n###### Output:\n\n{\n\n\"success\": true,\n\n\"message\": \"webhook removed!\"\n\n}\n\n#### Error Codes\n\n###### 1.Token expired:\n\n{\n\n\"success\": false,\n\n\"hasTokenExpired\": true,\n\n\"message\": \"Invalid Token!\"\n\n}\n\n###### 2\\. WebhookId issue\n\n{\n\n\"success\": false,\n\n\"error\":\"{\"error\":\"Unhandled exception: Value cannot be null. (Parameter 'entity')\",\"errorType\":\"ArgumentNullException\"}\"\n\n}\n\n## \\---------------------------\n\n# API-Submit Cold Verification:\n\nVerify Credential through scanning QR of credential.\n\n#### Authentication\n\nEnter the credential values (base64), signature (base64), tenantId and keyVersion.\n\n{\n\n\"success\": true,\n\n\"verified\": true\n\n}\n\n#### Error Codes\n\n###### 1.Invalid User:\n\n{\n\n\"success\": false,\n\n\"message\": \"Invalid User Error\"\n\n}\n\n###### 2.Invalid Params:\n\n{\n\n\"success\": false,\n\n\"message\": \"Invalid Params\"\n\n}\n\n###### 3\\. Not Verified\n\n{\n\n\"success\": false,\n\n\"verified\": false,\n\n\"message\": \"\",\n\n}","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"8801337","team":2148852,"collectionId":"d770e7d1-beeb-4ed4-8acb-070ce9755289","publishedId":"U16kq4zH","public":true,"publicUrl":"https://documenter-api.postman.tech/view/8801337/U16kq4zH","privateUrl":"https://go.postman.co/documentation/8801337-d770e7d1-beeb-4ed4-8acb-070ce9755289","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.1","publishDate":"2021-10-04T20:53:29.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[{"name":"zada-core (test)","id":"d9ded26d-7721-4c16-a36d-004307ea6869","owner":"8801337","values":[{"key":"host","value":"https://test.zadanetwork.com","enabled":true},{"key":"token","value":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI4NDFhOTg3YS04NDA4LTRmNWUtOTNjMC01NjQ0ZmQ0Z2Y4MjgiLCJyb2xlcyI6IltcImFsbFwiXSIsImlhdCI6MTY1Njk1MjMwMSwiZXhwIjoxNjU2OTUyOTAxfQ.zElJhY74gHg2fkrITv6qM-IEVRlfCYyjtIAt6wBmBHg","enabled":true}],"published":true}],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/7064ab89c96be9159d16355c6113edddc9a4ef785807943f27e3fce9c312872e","favicon":""},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"},{"label":"zada-core (test)","value":"8801337-d9ded26d-7721-4c16-a36d-004307ea6869"}],"canonicalUrl":"https://documenter.gw.postman.com/view/metadata/U16kq4zH"}