{
	"info": {
		"_postman_id": "3c2b54ab-3f1b-4470-a20e-ce3503e0c742",
		"name": "iProov REST API Collection",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
	},
	"item": [
		{
			"name": "Enrol",
			"item": [
				{
					"name": "Photo enrol and Verify",
					"item": [
						{
							"name": "Generate Token",
							"event": [
								{
									"listen": "test",
									"script": {
										"exec": [
											"var jsonData = JSON.parse(responseBody);\r",
											"postman.setEnvironmentVariable(\"token\", jsonData.token);"
										],
										"type": "text/javascript"
									}
								},
								{
									"listen": "prerequest",
									"script": {
										"exec": [
											"var uuid = require('uuid');",
											"postman.setEnvironmentVariable(\"user_id\", uuid.v4());"
										],
										"type": "text/javascript"
									}
								}
							],
							"request": {
								"method": "POST",
								"header": [],
								"body": {
									"mode": "raw",
									"raw": "{\r\n  \"api_key\": \"{{api_key}}\",\r\n  \"secret\": \"{{secret}}\",\r\n  \"resource\": \"onboarding\",\r\n  \"assurance_type\": \"genuine_presence\",\r\n  \"user_id\": \"{{user_id}}\"\r\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								},
								"url": {
									"raw": "https://{{tenant}}{{base_url}}/claim/enrol/token",
									"protocol": "https",
									"host": [
										"{{tenant}}{{base_url}}"
									],
									"path": [
										"claim",
										"enrol",
										"token"
									]
								}
							},
							"response": []
						},
						{
							"name": "Enrol a user image",
							"request": {
								"method": "POST",
								"header": [],
								"body": {
									"mode": "formdata",
									"formdata": [
										{
											"key": "api_key",
											"value": "{{api_key}}",
											"type": "default"
										},
										{
											"key": "secret",
											"value": "{{secret}}",
											"type": "default"
										},
										{
											"key": "rotation",
											"value": "0",
											"type": "default"
										},
										{
											"key": "image",
											"type": "file",
											"src": []
										},
										{
											"key": "token",
											"value": "{{token}}",
											"type": "default"
										},
										{
											"key": "source",
											"value": "oid",
											"type": "default"
										}
									]
								},
								"url": {
									"raw": "https://{{tenant}}{{base_url}}/claim/enrol/image",
									"protocol": "https",
									"host": [
										"{{tenant}}{{base_url}}"
									],
									"path": [
										"claim",
										"enrol",
										"image"
									]
								}
							},
							"response": []
						},
						{
							"name": "Generate Verify Token",
							"event": [
								{
									"listen": "test",
									"script": {
										"exec": [
											"var jsonData = JSON.parse(responseBody);\r",
											"postman.setEnvironmentVariable(\"verify_token\", jsonData.token);"
										],
										"type": "text/javascript"
									}
								}
							],
							"request": {
								"method": "POST",
								"header": [],
								"body": {
									"mode": "raw",
									"raw": "{\r\n  \"api_key\": \"{{api_key}}\",\r\n  \"secret\": \"{{secret}}\",\r\n  \"resource\": \"onboarding\",\r\n  \"assurance_type\": \"genuine_presence\",\r\n  \"user_id\": \"{{user_id}}\"\r\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								},
								"url": {
									"raw": "https://{{tenant}}{{base_url}}/claim/verify/token",
									"protocol": "https",
									"host": [
										"{{tenant}}{{base_url}}"
									],
									"path": [
										"claim",
										"verify",
										"token"
									]
								}
							},
							"response": []
						},
						{
							"name": "Validate Result",
							"request": {
								"method": "POST",
								"header": [],
								"body": {
									"mode": "raw",
									"raw": "{\r\n  \"api_key\": \"{{api_key}}\",\r\n  \"secret\": \"{{secret}}\",\r\n  \"user_id\": \"{{user_id}}\",\r\n  \"token\": \"{{token}}\",\r\n  \"client\": \"User-Agent: Mozilla/5.0\"\r\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								},
								"url": {
									"raw": "https://{{tenant}}{{base_url}}/claim/verify/validate",
									"protocol": "https",
									"host": [
										"{{tenant}}{{base_url}}"
									],
									"path": [
										"claim",
										"verify",
										"validate"
									]
								}
							},
							"response": []
						}
					]
				},
				{
					"name": "Capture Enrol",
					"item": [
						{
							"name": "Generate Token",
							"event": [
								{
									"listen": "test",
									"script": {
										"exec": [
											"var jsonData = JSON.parse(responseBody);\r",
											"postman.setEnvironmentVariable(\"token\", jsonData.token);"
										],
										"type": "text/javascript"
									}
								},
								{
									"listen": "prerequest",
									"script": {
										"exec": [
											"var uuid = require('uuid');",
											"postman.setEnvironmentVariable(\"user_id\", uuid.v4());"
										],
										"type": "text/javascript"
									}
								}
							],
							"request": {
								"method": "POST",
								"header": [],
								"body": {
									"mode": "raw",
									"raw": "{\r\n  \"api_key\": \"{{api_key}}\",\r\n  \"secret\": \"{{secret}}\",\r\n  \"resource\": \"onboarding\",\r\n  \"assurance_type\": \"genuine_presence\",\r\n  \"user_id\": \"{{user_id}}\"\r\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								},
								"url": {
									"raw": "https://{{tenant}}{{base_url}}/claim/enrol/token",
									"protocol": "https",
									"host": [
										"{{tenant}}{{base_url}}"
									],
									"path": [
										"claim",
										"enrol",
										"token"
									]
								}
							},
							"response": []
						},
						{
							"name": "Validate Result",
							"request": {
								"method": "POST",
								"header": [],
								"body": {
									"mode": "raw",
									"raw": "{\r\n  \"api_key\": \"{{api_key}}\",\r\n  \"secret\": \"{{secret}}\",\r\n  \"user_id\": \"{{user_id}}\",\r\n  \"token\": \"{{token}}\",\r\n  \"client\": \"User-Agent: Mozilla/5.0\",\r\n  \"activate\": true\r\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								},
								"url": {
									"raw": "https://{{tenant}}{{base_url}}/claim/enrol/validate",
									"protocol": "https",
									"host": [
										"{{tenant}}{{base_url}}"
									],
									"path": [
										"claim",
										"enrol",
										"validate"
									]
								}
							},
							"response": []
						}
					]
				}
			]
		},
		{
			"name": "Verify",
			"item": [
				{
					"name": "Generate Token",
					"event": [
						{
							"listen": "test",
							"script": {
								"exec": [
									"var jsonData = JSON.parse(responseBody);\r",
									"postman.setEnvironmentVariable(\"token\", jsonData.token);\r",
									"postman.setEnvironmentVariable(\"user_id\", jsonData.user_id);"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"api_key\": \"{{api_key}}\",\r\n  \"secret\": \"{{secret}}\",\r\n  \"resource\": \"login\",\r\n  \"assurance_type\": \"genuine_presence\",\r\n  \"user_id\": \"{{user_id}}\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/claim/verify/token",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"claim",
								"verify",
								"token"
							]
						}
					},
					"response": []
				},
				{
					"name": "Validate result",
					"request": {
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"api_key\": \"{{api_key}}\",\r\n  \"secret\": \"{{secret}}\",\r\n  \"user_id\": \"{{user_id}}\",\r\n  \"token\": \"{{token}}\",\r\n  \"client\": \"User-Agent: Mozilla/5.0\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/claim/verify/validate",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"claim",
								"verify",
								"validate"
							]
						}
					},
					"response": []
				}
			]
		},
		{
			"name": "Management",
			"item": [
				{
					"name": "Obtain OAuth2 Token",
					"event": [
						{
							"listen": "test",
							"script": {
								"exec": [
									"var jsonData = JSON.parse(responseBody);\r",
									"postman.setEnvironmentVariable(\"access_token\", jsonData.access_token);"
								],
								"type": "text/javascript"
							}
						}
					],
					"request": {
						"auth": {
							"type": "basic",
							"basic": [
								{
									"key": "username",
									"value": "{{OAuth Username}}",
									"type": "string"
								},
								{
									"key": "password",
									"value": "{{OAuthPassword}}",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [],
						"body": {
							"mode": "urlencoded",
							"urlencoded": [
								{
									"key": "grant_type",
									"value": "client_credentials",
									"type": "default"
								}
							],
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/{{api_key}}/access_token",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"{{api_key}}",
								"access_token"
							]
						}
					},
					"response": []
				},
				{
					"name": "Get availability",
					"event": [
						{
							"listen": "prerequest",
							"script": {
								"exec": [
									""
								],
								"type": "text/javascript"
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					},
					"request": {
						"method": "GET",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/availability?api_key={{api_key}}",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"availability"
							],
							"query": [
								{
									"key": "api_key",
									"value": "{{api_key}}"
								}
							]
						}
					},
					"response": []
				},
				{
					"name": "Get User",
					"request": {
						"auth": {
							"type": "oauth2",
							"oauth2": [
								{
									"key": "addTokenTo",
									"value": "header",
									"type": "string"
								}
							]
						},
						"method": "GET",
						"header": [],
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/users/{{user_id}}",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"users",
								"{{user_id}}"
							]
						}
					},
					"response": []
				},
				{
					"name": "Suspend a user",
					"request": {
						"auth": {
							"type": "oauth2",
							"oauth2": [
								{
									"key": "addTokenTo",
									"value": "header",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [],
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/users/{{user_id}}/suspend",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"users",
								"{{user_id}}",
								"suspend"
							]
						}
					},
					"response": []
				},
				{
					"name": "Activate a user",
					"request": {
						"auth": {
							"type": "oauth2",
							"oauth2": [
								{
									"key": "addTokenTo",
									"value": "header",
									"type": "string"
								}
							]
						},
						"method": "POST",
						"header": [],
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/users/{{user_id}}/activate",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"users",
								"{{user_id}}",
								"activate"
							]
						}
					},
					"response": []
				},
				{
					"name": "Update user",
					"request": {
						"auth": {
							"type": "oauth2",
							"oauth2": [
								{
									"key": "addTokenTo",
									"value": "header",
									"type": "string"
								}
							]
						},
						"method": "PUT",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n  \"user_id\": \"{{user_id}}\",\r\n  \"name\": \"example\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/users/{{user_id}}",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"users",
								"{{user_id}}"
							]
						}
					},
					"response": []
				},
				{
					"name": "Delete User",
					"request": {
						"auth": {
							"type": "oauth2",
							"oauth2": [
								{
									"key": "addTokenTo",
									"value": "header",
									"type": "string"
								}
							]
						},
						"method": "DELETE",
						"header": [],
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/users/{{user_id}}",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"users",
								"{{user_id}}"
							]
						}
					},
					"response": []
				},
				{
					"name": "Invalidate iProovToken",
					"request": {
						"auth": {
							"type": "noauth"
						},
						"method": "POST",
						"header": [],
						"body": {
							"mode": "raw",
							"raw": "{\r\n    \"reason\": \"example\"\r\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						},
						"url": {
							"raw": "https://{{tenant}}{{base_url}}/claim/{{token}}/invalidate",
							"protocol": "https",
							"host": [
								"{{tenant}}{{base_url}}"
							],
							"path": [
								"claim",
								"{{token}}",
								"invalidate"
							]
						}
					},
					"response": []
				}
			]
		}
	],
	"event": [
		{
			"listen": "prerequest",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		},
		{
			"listen": "test",
			"script": {
				"type": "text/javascript",
				"exec": [
					""
				]
			}
		}
	],
	"variable": [
		{
			"key": "tenant",
			"value": "eu.rp.secure.iproov.me"
		},
		{
			"key": "base_url",
			"value": "/api/v2"
		},
		{
			"key": "api_key",
			"value": ""
		},
		{
			"key": "secret",
			"value": ""
		},
		{
			"key": "oauth_password",
			"value": ""
		},
		{
			"key": "oauth_username",
			"value": ""
		},
		{
			"key": "user_id",
			"value": "",
			"type": "default"
		},
		{
			"key": "token",
			"value": "",
			"type": "default"
		}
	]
}