{"openapi":"3.0.2","info":{"title":"boi-Das API","description":"Download Postman Collection: <a class=\"pc-css\" target=\"_blank\" href=\"../boidas-backend.postman_collection.zip\">Download</a><br><br>\nboi-Das API\n","version":"1.45"},"servers":[{"url":"https://[BOIDAS_URL]"}],"paths":{"/api/v1/oauth/token":{"post":{"security":[{"basicAuth":[]}],"tags":["Authorization"],"summary":"/api/v1/oauth/token","description":"Creates and retrieves a token for accessing the API. These tokens expire after 10 days.\n<br><br>\n**For on premises installations, the configured client_id and client_secret values for the boidasAPI oauth application are displayed on the screen during the docker containers initialization stage alongside the rest of the initialization processes log lines.**\n  ```\n  boidas-service-local    | BOI-DAS API SUPERUSER: admin\n  boidas-service-local    | BOI-DAS API OAUTH2 CLIENT_ID: uYjiqNPlYZIR3X3VZ6dNPUJi\n  boidas-service-local    | BOI-DAS API OAUTH2 CLIENT_SECRET: XUClkf4wMdLnLS2RvHo9r\n  boidas-service-local    | BOI-DAS API SUPERUSER TOKEN: pqWqjvCSwruOiBzR\n  ```\n  Due to security updates, BOI-DAS API OAUTH2 CLIENT_SECRET will only be printed in the console log when the container is deployed for the first time. Save this information in a secure place as it will not be shown again.  \n  \n**For cloud instances of boi-Das, these credentials are provided together with the rest of the needed information to use the service at the time of the service delivery by the Veridas team.**\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["grant_type","username","password"],"properties":{"grant_type":{"type":"string","description":"Type of the token","default":"password"},"username":{"type":"string","description":"Username of the user that is requesting the token","example":"user"},"password":{"type":"string","description":"Password of the user that is requesting the token","example":"pass"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"access_token":{"type":"string","example":"BqRADePHLW7s8G9WrwmpErPxMZu4C0rbEF7YNKreaq"},"expires_in":{"type":"number","example":864000},"token_type":{"type":"string","example":"Bearer"}}}}}},"401":{"$ref":"#/components/responses/InvalidClient"},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/oauth/token\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Basic REPLACE_BASIC_AUTH\");\nrequest.AddParameter(\"application/json\", \"{\\\"grant_type\\\":\\\"password\\\",\\\"username\\\":\\\"user\\\",\\\"password\\\":\\\"pass\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.post(\"https://[boidas_url]/api/v1/oauth/token\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Basic REPLACE_BASIC_AUTH\")\n  .body(\"{\\\"grant_type\\\":\\\"password\\\",\\\"username\\\":\\\"user\\\",\\\"password\\\":\\\"pass\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"grant_type\": \"password\",\n  \"username\": \"user\",\n  \"password\": \"pass\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://[boidas_url]/api/v1/oauth/token\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Basic REPLACE_BASIC_AUTH\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/oauth/token');\n$request->setMethod(HTTP_METH_POST);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Basic REPLACE_BASIC_AUTH'\n]);\n\n$request->setBody('{\"grant_type\":\"password\",\"username\":\"user\",\"password\":\"pass\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"grant_type\\\":\\\"password\\\",\\\"username\\\":\\\"user\\\",\\\"password\\\":\\\"pass\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Basic REPLACE_BASIC_AUTH\"\n    }\n\nconn.request(\"POST\", \"/api/v1/oauth/token\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/oauth/token\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Basic REPLACE_BASIC_AUTH'\nrequest.body = \"{\\\"grant_type\\\":\\\"password\\\",\\\"username\\\":\\\"user\\\",\\\"password\\\":\\\"pass\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request POST \\\n  --url 'https://[boidas_url]/api/v1/oauth/token' \\\n  --header 'Authorization: Basic REPLACE_BASIC_AUTH' \\\n  --header 'content-type: application/json' \\\n  --data '{\"grant_type\":\"password\",\"username\":\"user\",\"password\":\"pass\"}'"}]}},"/api/v1/alive":{"get":{"security":[],"tags":["Global checks"],"summary":"/api/v1/alive","description":"Checks if the service is up.","responses":{"204":{"description":"NO CONTENT"},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/alive\");\nvar request = new RestRequest(Method.GET);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/alive\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/alive\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/alive');\n$request->setMethod(HTTP_METH_GET);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nconn.request(\"GET\", \"/api/v1/alive\")\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/alive\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/alive'"}]}},"/api/v1/validation/{validation_id}":{"get":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}","description":"Retrieves a validation.\n","parameters":[{"$ref":"#/components/parameters/accept-boidas"},{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdValidationResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]},"delete":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}","description":"Deletes a validation and all the related files.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"204":{"description":"NO CONTENT"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.delete(\"https://[boidas_url]/api/v1/validation/{validation_id}\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"DELETE\", \"https://[boidas_url]/api/v1/validation/{validation_id}\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}');\n$request->setMethod(HTTP_METH_DELETE);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"DELETE\", \"/api/v1/validation/{validation_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request DELETE \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/ocr":{"put":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/ocr","description":"Updates the document ocr.\n<br><br>\nThis endpoint cannot be used once the validation is accepted or rejected.\n<br><br>\nRestricted to users with operator, supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"correctedOcr":{"type":"array","items":{"type":"object"},"example":[{"name":"PD_Name_Out","confirmedText":"Antonio Luis"},{"name":"PD_LastName_Out","confirmedText":"Garcia Lozano"}],"description":"Strings with the corrected ocr fields\n"},"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/InvalidData"},{"$ref":"#/components/schemas/ValidationError"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotAllowed"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/ocr\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"correctedOcr\\\":[{\\\"name\\\":\\\"PD_Name_Out\\\",\\\"confirmedText\\\":\\\"Antonio Luis\\\"},{\\\"name\\\":\\\"PD_LastName_Out\\\",\\\"confirmedText\\\":\\\"Garcia Lozano\\\"}],\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.put(\"https://[boidas_url]/api/v1/validation/{validation_id}/ocr\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"correctedOcr\\\":[{\\\"name\\\":\\\"PD_Name_Out\\\",\\\"confirmedText\\\":\\\"Antonio Luis\\\"},{\\\"name\\\":\\\"PD_LastName_Out\\\",\\\"confirmedText\\\":\\\"Garcia Lozano\\\"}],\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"correctedOcr\": [\n    {\n      \"name\": \"PD_Name_Out\",\n      \"confirmedText\": \"Antonio Luis\"\n    },\n    {\n      \"name\": \"PD_LastName_Out\",\n      \"confirmedText\": \"Garcia Lozano\"\n    }\n  ],\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://[boidas_url]/api/v1/validation/{validation_id}/ocr\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/ocr');\n$request->setMethod(HTTP_METH_PUT);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"correctedOcr\":[{\"name\":\"PD_Name_Out\",\"confirmedText\":\"Antonio Luis\"},{\"name\":\"PD_LastName_Out\",\"confirmedText\":\"Garcia Lozano\"}],\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"correctedOcr\\\":[{\\\"name\\\":\\\"PD_Name_Out\\\",\\\"confirmedText\\\":\\\"Antonio Luis\\\"},{\\\"name\\\":\\\"PD_LastName_Out\\\",\\\"confirmedText\\\":\\\"Garcia Lozano\\\"}],\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"PUT\", \"/api/v1/validation/{validation_id}/ocr\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/ocr\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"correctedOcr\\\":[{\\\"name\\\":\\\"PD_Name_Out\\\",\\\"confirmedText\\\":\\\"Antonio Luis\\\"},{\\\"name\\\":\\\"PD_LastName_Out\\\",\\\"confirmedText\\\":\\\"Garcia Lozano\\\"}],\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PUT \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/ocr' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"correctedOcr\":[{\"name\":\"PD_Name_Out\",\"confirmedText\":\"Antonio Luis\"},{\"name\":\"PD_LastName_Out\",\"confirmedText\":\"Garcia Lozano\"}],\"documentsToProcess\":2}'"}]},"get":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/ocr","description":"Retrieves the document ocr originally obtained by the Document Analysis service.","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OCRResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/ocr\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/ocr\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/ocr\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/ocr');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/ocr\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/ocr\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/ocr' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/scores":{"get":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/scores","description":"Retrieves the scores obtained in document and biometry analysis.","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScoresResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/scores\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/scores\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/scores\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/scores');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/scores\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/scores\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/scores' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/acceptance":{"put":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/acceptance","description":"Updates the validation to accepted (approved) status.\n<br><br>\nRestricted to users with operator, supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ValidationError"},{"$ref":"#/components/schemas/OnboardingUnansweredQuestionsError"},{"$ref":"#/components/schemas/OnboardingNotAllQuestionsAreApproved"},{"$ref":"#/components/schemas/OnboardingNotAllBiometryQuestionsAreApproved"},{"$ref":"#/components/schemas/OnboardingNotAllDocumentQuestionsAreApproved"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotAllowed"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/acceptance\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.put(\"https://[boidas_url]/api/v1/validation/{validation_id}/acceptance\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://[boidas_url]/api/v1/validation/{validation_id}/acceptance\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/acceptance');\n$request->setMethod(HTTP_METH_PUT);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"PUT\", \"/api/v1/validation/{validation_id}/acceptance\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/acceptance\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PUT \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/acceptance' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/rejection":{"put":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/rejection","description":"Updates the validation to rejected status.\n<br><br>\nRestricted to users with operator, supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["Reason"],"properties":{"Reason":{"type":"string","example":"Document is damaged","description":"String with the reason for rejection\n"}}}}}},"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotAllowed"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/rejection\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"Reason\\\":\\\"Document is damaged\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.put(\"https://[boidas_url]/api/v1/validation/{validation_id}/rejection\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"Reason\\\":\\\"Document is damaged\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"Reason\": \"Document is damaged\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://[boidas_url]/api/v1/validation/{validation_id}/rejection\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/rejection');\n$request->setMethod(HTTP_METH_PUT);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"Reason\":\"Document is damaged\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"Reason\\\":\\\"Document is damaged\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"PUT\", \"/api/v1/validation/{validation_id}/rejection\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/rejection\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"Reason\\\":\\\"Document is damaged\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PUT \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/rejection' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"Reason\":\"Document is damaged\"}'"}]}},"/api/v1/validation/{validation_id}/inconclusive":{"put":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/inconclusive","description":"Updates the validation to inconclusive status.\n<br><br>\nRestricted to users with operator, supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"204":{"description":"NO CONTENT"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotAllowed"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/inconclusive\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.put(\"https://[boidas_url]/api/v1/validation/{validation_id}/inconclusive\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://[boidas_url]/api/v1/validation/{validation_id}/inconclusive\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/inconclusive');\n$request->setMethod(HTTP_METH_PUT);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"PUT\", \"/api/v1/validation/{validation_id}/inconclusive\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/inconclusive\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PUT \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/inconclusive' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/pending":{"put":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/pending","description":"Updates the validation to pending status.\n<br><br>\nOnly available if [ENABLE_RECOVER_STATE](../../onpremise_installation/docker-installation/#general-configuration:~:text=ENABLE_RECOVER_STATE) is enabled.\n<br><br>\n- Reverting **accepted (approved)** onboardings to pending is restricted to users with supervisor or administrator roles.\n- Reverting **inconclusive** onboardings to pending is available to users with operator, supervisor, or administrator roles.\n<br>\n[Read more about this feature here.](../../annexes/user_guide/#main-header:~:text=Configurable%20validation%20action%3A-,Return%20to%20Pending,-If%20enabled%20in)\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotAllowed"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/pending\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.put(\"https://[boidas_url]/api/v1/validation/{validation_id}/pending\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://[boidas_url]/api/v1/validation/{validation_id}/pending\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/pending');\n$request->setMethod(HTTP_METH_PUT);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"PUT\", \"/api/v1/validation/{validation_id}/pending\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/pending\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PUT \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/pending' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/activity":{"get":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/activity","description":"Retrieves the activity registry from a given validation.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivityResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/activity\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/activity\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/activity\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/activity');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/activity\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/activity\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/activity' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/comment":{"post":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/comment","description":"Creates a comment for an existing validation.\n<br><br>\nRestricted to users with operator, supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"comment":{"type":"string","example":"test comment","description":"String with the comment\n"}}}}}},"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/comment\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"comment\\\":\\\"test comment\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.post(\"https://[boidas_url]/api/v1/validation/{validation_id}/comment\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"comment\\\":\\\"test comment\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"comment\": \"test comment\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://[boidas_url]/api/v1/validation/{validation_id}/comment\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/comment');\n$request->setMethod(HTTP_METH_POST);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"comment\":\"test comment\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"comment\\\":\\\"test comment\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"POST\", \"/api/v1/validation/{validation_id}/comment\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/comment\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"comment\\\":\\\"test comment\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request POST \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/comment' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"comment\":\"test comment\"}'"}]},"get":{"tags":["Main flow"],"summary":"/api/v1/validation/{validation_id}/comment","description":"Retrieves the comments of a validation.","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CommentResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/comment\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/comment\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/comment\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/comment');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/comment\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/comment\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/comment' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation","description":"Retrieves validations.\n<br>\n","parameters":[{"$ref":"#/components/parameters/status"},{"$ref":"#/components/parameters/from"},{"$ref":"#/components/parameters/to"},{"$ref":"#/components/parameters/statusChangedBefore"},{"$ref":"#/components/parameters/statusChangedAfter"},{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/perPage"},{"$ref":"#/components/parameters/include"},{"$ref":"#/components/parameters/notificationSent"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdValidationArrayResponse"}}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/InvalidParameter"},{"$ref":"#/components/schemas/InvalidDateFormat"},{"$ref":"#/components/schemas/InvalidDatetimeFormat"},{"$ref":"#/components/schemas/UnknownStateError"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation?status=SOME_STRING_VALUE&from=SOME_STRING_VALUE&to=SOME_STRING_VALUE&statusChangedBefore=SOME_STRING_VALUE&statusChangedAfter=SOME_STRING_VALUE&page=SOME_STRING_VALUE&perPage=SOME_STRING_VALUE&include=SOME_STRING_VALUE&notificationSent=SOME_BOOLEAN_VALUE\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation?status=SOME_STRING_VALUE&from=SOME_STRING_VALUE&to=SOME_STRING_VALUE&statusChangedBefore=SOME_STRING_VALUE&statusChangedAfter=SOME_STRING_VALUE&page=SOME_STRING_VALUE&perPage=SOME_STRING_VALUE&include=SOME_STRING_VALUE&notificationSent=SOME_BOOLEAN_VALUE\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation?status=SOME_STRING_VALUE&from=SOME_STRING_VALUE&to=SOME_STRING_VALUE&statusChangedBefore=SOME_STRING_VALUE&statusChangedAfter=SOME_STRING_VALUE&page=SOME_STRING_VALUE&perPage=SOME_STRING_VALUE&include=SOME_STRING_VALUE&notificationSent=SOME_BOOLEAN_VALUE\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setQueryData([\n  'status' => 'SOME_STRING_VALUE',\n  'from' => 'SOME_STRING_VALUE',\n  'to' => 'SOME_STRING_VALUE',\n  'statusChangedBefore' => 'SOME_STRING_VALUE',\n  'statusChangedAfter' => 'SOME_STRING_VALUE',\n  'page' => 'SOME_STRING_VALUE',\n  'perPage' => 'SOME_STRING_VALUE',\n  'include' => 'SOME_STRING_VALUE',\n  'notificationSent' => 'SOME_BOOLEAN_VALUE'\n]);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation?status=SOME_STRING_VALUE&from=SOME_STRING_VALUE&to=SOME_STRING_VALUE&statusChangedBefore=SOME_STRING_VALUE&statusChangedAfter=SOME_STRING_VALUE&page=SOME_STRING_VALUE&perPage=SOME_STRING_VALUE&include=SOME_STRING_VALUE&notificationSent=SOME_BOOLEAN_VALUE\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation?status=SOME_STRING_VALUE&from=SOME_STRING_VALUE&to=SOME_STRING_VALUE&statusChangedBefore=SOME_STRING_VALUE&statusChangedAfter=SOME_STRING_VALUE&page=SOME_STRING_VALUE&perPage=SOME_STRING_VALUE&include=SOME_STRING_VALUE&notificationSent=SOME_BOOLEAN_VALUE\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation?status=SOME_STRING_VALUE&from=SOME_STRING_VALUE&to=SOME_STRING_VALUE&statusChangedBefore=SOME_STRING_VALUE&statusChangedAfter=SOME_STRING_VALUE&page=SOME_STRING_VALUE&perPage=SOME_STRING_VALUE&include=SOME_STRING_VALUE&notificationSent=SOME_BOOLEAN_VALUE' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/document/image/obverse":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/document/image/obverse","description":"Retrieves the document obverse image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/document/image/obverse\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"documentsToProcess\":2}'"}]}},"/api/v1/validation/{validation_id}/document/image/obverse/cut":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/document/image/obverse/cut","description":"Retrieves the document obverse cut image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse/cut\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse/cut\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse/cut\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse/cut');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/document/image/obverse/cut\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse/cut\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/document/image/obverse/cut' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"documentsToProcess\":2}'"}]}},"/api/v1/validation/{validation_id}/document/image/reverse":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/document/image/reverse","description":"Retrieves the document reverse image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/document/image/reverse\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"documentsToProcess\":2}'"}]}},"/api/v1/validation/{validation_id}/document/image/reverse/cut":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/document/image/reverse/cut","description":"Retrieves the document reverse cut image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse/cut\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse/cut\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse/cut\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse/cut');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/document/image/reverse/cut\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse/cut\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/document/image/reverse/cut' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"documentsToProcess\":2}'"}]}},"/api/v1/validation/{validation_id}/document/image/nfc/face":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/document/image/nfc/face","description":"Retrieves the document nfc face image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/nfc/face\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/nfc/face\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/nfc/face\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/document/image/nfc/face');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/document/image/nfc/face\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/nfc/face\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/document/image/nfc/face' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"documentsToProcess\":2}'"}]}},"/api/v1/validation/{validation_id}/document/image/face":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/document/image/face","description":"Retrieves the document face image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/face\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/face\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/face\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/document/image/face');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/document/image/face\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/face\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/document/image/face' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"documentsToProcess\":2}'"}]}},"/api/v1/validation/{validation_id}/document/image/signature":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/document/image/signature","description":"Retrieves the document signature image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/signature\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/signature\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/signature\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/document/image/signature');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/document/image/signature\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/signature\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/document/image/signature' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"documentsToProcess\":2}'"}]}},"/api/v1/validation/{validation_id}/document/image/fingerprint":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/document/image/fingerprint","description":"Retrieves the document signature fingerprint image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"documentsToProcess":{"description":"number of the additional document.","type":"integer","minimum":2}}}}}},"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/fingerprint\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"documentsToProcess\\\":2}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/fingerprint\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"documentsToProcess\\\":2}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"documentsToProcess\": 2\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/fingerprint\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/document/image/fingerprint');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"documentsToProcess\":2}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"documentsToProcess\\\":2}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/document/image/fingerprint\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/document/image/fingerprint\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"documentsToProcess\\\":2}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/document/image/fingerprint' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"documentsToProcess\":2}'"}]}},"/api/v1/validation/{validation_id}/selfie":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/selfie","description":"Retrieves the selfie image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/selfie\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/selfie\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/selfie\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/selfie');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/selfie\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/selfie\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/selfie' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/video":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/video","description":"Retrieves the selfie video.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"video/*":{"schema":{"type":"string","format":"binary"},"example":"VIDEO BINARY DATA"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/video\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/video\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/video\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/video');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/video\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/video\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/video' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/selfie-alive":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/selfie-alive","description":"Retrieves the selfie-alive image.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"image/*":{"schema":{"type":"string","format":"binary"},"example":"IMAGE BINARY DATA"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/selfie-alive\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/selfie-alive\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/selfie-alive\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/selfie-alive');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/selfie-alive\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/selfie-alive\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/selfie-alive' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/challenges/video":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/challenges/video","description":"Retrieves the challenge video.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"video/*":{"schema":{"type":"string","format":"binary"},"example":"VIDEO BINARY DATA"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/challenges/video\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/challenges/video\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/challenges/video\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/challenges/video');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/challenges/video\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/challenges/video\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/challenges/video' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/challenges/annotations":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/challenges/annotations","description":"Retrieves the challenge annotations.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"},"example":"ANNOTATIONS BINARY DATA"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/challenges/annotations\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/challenges/annotations\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/challenges/annotations\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/challenges/annotations');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/challenges/annotations\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/challenges/annotations\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/challenges/annotations' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/pdf?locale":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/pdf","description":"Retrieves the PDF file containing the details of a given validation as it is shown in the validation detail screen of the UI.\n","parameters":[{"$ref":"#/components/parameters/validation_id"},{"$ref":"#/components/parameters/locale"}],"responses":{"200":{"description":"OK","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"},"example":"PDF BINARY DATA"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/pdf?locale=\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/pdf?locale=\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/pdf?locale=\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/pdf');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setQueryData([\n  'locale' => ''\n]);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/pdf?locale=\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/pdf?locale=\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/pdf?locale=' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/identity-verification":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/identity-verification","description":"The endpoint will return the identity verification data associated to the validation.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentityVerificationResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/identity-verification\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/identity-verification\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/identity-verification\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/identity-verification');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/identity-verification\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/identity-verification\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/identity-verification' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/pep-aml":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/pep-aml","description":"The endpoint will return the identity verification data associated to the validation.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/PEPandAMLResponseNoMatch"},{"$ref":"#/components/schemas/PEPandAMLResponseMatch"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/pep-aml\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/pep-aml\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/pep-aml\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/pep-aml');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/pep-aml\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/pep-aml\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/pep-aml' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/timestamp":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/timestamp","description":"Retrieve the timestamp data in zip format. This zip file will contain two zip files, one zip with all the validation evidences and another one containing .tsr (timestamp response) and .tsq (timestamp request) files.\n","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/zip":{"schema":{"type":"string","format":"binary"},"example":"ZIP BINARY DATA"}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"409":{"description":"CONFLICT","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IncompleteValidation"}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/timestamp\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/timestamp\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/timestamp\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/timestamp');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/timestamp\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/timestamp\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/timestamp' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/validation/{validation_id}/events":{"get":{"tags":["Validations collector"],"summary":"/api/v1/validation/{validation_id}/events","description":"Retrieves events of validations status changes for a specific validation id. <br> Only available if [webhook](../../annexes/webhooks) is configured.","parameters":[{"$ref":"#/components/parameters/validation_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventsArrayResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/validation/{validation_id}/events\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/validation/{validation_id}/events\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/validation/{validation_id}/events\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/validation/{validation_id}/events');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/validation/{validation_id}/events\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/validation/{validation_id}/events\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/validation/{validation_id}/events' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/user":{"get":{"tags":["User management"],"summary":"/api/v1/user","description":"Retrieve user details or a list of users. If a username is provided as a query parameter, the API returns details for that specific user. Otherwise, it returns a list of non-admin users.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","parameters":[{"name":"username","in":"query","description":"Retrieve details for a specific user by username.","required":false,"schema":{"type":"string","example":"test_user"}}],"responses":{"200":{"description":"SUCCESS","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"username":{"type":"string","description":"The username of the retrieved user","example":"test_user"},"role":{"type":"string","description":"The role of the retrieved user","example":"agent"},"email":{"type":"string","description":"The email of the retrieved user","example":"admin@admin.com"}}},{"type":"object","properties":{"users":{"type":"array","items":{"type":"object","properties":{"username":{"type":"string","description":"Username of the user","example":"test_user"},"role":{"type":"string","description":"Role of the user","example":"agent"},"email":{"type":"string","description":"The email of the user. It is used when using “Forgot password?” functionality.","example":"admin@test.com"}}},"description":"List of users","example":{"users":[{"username":"test_user","role":"agent"},{"username":"test_user2","role":"supervisor","email":"admin@test.com"}]}}}}]}}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundUser"}}}},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/user?username=test_user\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/user?username=test_user\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/user?username=test_user\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/user');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setQueryData([\n  'username' => 'test_user'\n]);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/user?username=test_user\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/user?username=test_user\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/user?username=test_user' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]},"post":{"tags":["User management"],"summary":"/api/v1/user","description":"Registers a user which will be able to request OAuth2 tokens with a finite life for accessing the API. These users also have access to the boi-Das GUI with their corresponding role.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["username","password"],"properties":{"username":{"type":"string","description":"Username of the user to be registered","example":"test_user"},"password":{"type":"string","description":"Password of the user to be registered","example":"pass"},"role":{"type":"string","description":"The role for the new user. There are five options: administrator, supervisor, operator, agent or auditor. The default role will be \"agent\".","example":"agent"},"email":{"type":"string","description":"The email for the new user. It is used when using “Forgot password?” functionality.","example":"test@domain.com"},"firstname":{"type":"string","description":"First name of the user to be registered.","example":"test_firstname"},"lastname":{"type":"string","description":"Last name of the user to be registered.","example":"test_lastname"}}}}}},"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/UserAlreadyExistsError"},{"$ref":"#/components/schemas/BadRequestError"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/user\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"username\\\":\\\"test_user\\\",\\\"password\\\":\\\"pass\\\",\\\"role\\\":\\\"agent\\\",\\\"email\\\":\\\"test@domain.com\\\",\\\"firstname\\\":\\\"test_firstname\\\",\\\"lastname\\\":\\\"test_lastname\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.post(\"https://[boidas_url]/api/v1/user\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"username\\\":\\\"test_user\\\",\\\"password\\\":\\\"pass\\\",\\\"role\\\":\\\"agent\\\",\\\"email\\\":\\\"test@domain.com\\\",\\\"firstname\\\":\\\"test_firstname\\\",\\\"lastname\\\":\\\"test_lastname\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"username\": \"test_user\",\n  \"password\": \"pass\",\n  \"role\": \"agent\",\n  \"email\": \"test@domain.com\",\n  \"firstname\": \"test_firstname\",\n  \"lastname\": \"test_lastname\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://[boidas_url]/api/v1/user\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/user');\n$request->setMethod(HTTP_METH_POST);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"username\":\"test_user\",\"password\":\"pass\",\"role\":\"agent\",\"email\":\"test@domain.com\",\"firstname\":\"test_firstname\",\"lastname\":\"test_lastname\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"username\\\":\\\"test_user\\\",\\\"password\\\":\\\"pass\\\",\\\"role\\\":\\\"agent\\\",\\\"email\\\":\\\"test@domain.com\\\",\\\"firstname\\\":\\\"test_firstname\\\",\\\"lastname\\\":\\\"test_lastname\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"POST\", \"/api/v1/user\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/user\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"username\\\":\\\"test_user\\\",\\\"password\\\":\\\"pass\\\",\\\"role\\\":\\\"agent\\\",\\\"email\\\":\\\"test@domain.com\\\",\\\"firstname\\\":\\\"test_firstname\\\",\\\"lastname\\\":\\\"test_lastname\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request POST \\\n  --url 'https://[boidas_url]/api/v1/user' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"username\":\"test_user\",\"password\":\"pass\",\"role\":\"agent\",\"email\":\"test@domain.com\",\"firstname\":\"test_firstname\",\"lastname\":\"test_lastname\"}'"}]},"delete":{"tags":["User management"],"summary":"/api/v1/user","description":"Delete an existing user. All the user's OAuth2 tokens will be automatically invalidated.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["username"],"properties":{"username":{"type":"string","description":"Username of the user to be registered","example":"test_user"}}}}}},"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/UserAlreadyExistsError"},{"$ref":"#/components/schemas/BadRequestError"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundUser"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/user\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"username\\\":\\\"test_user\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.delete(\"https://[boidas_url]/api/v1/user\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"username\\\":\\\"test_user\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"username\": \"test_user\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"DELETE\", \"https://[boidas_url]/api/v1/user\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/user');\n$request->setMethod(HTTP_METH_DELETE);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"username\":\"test_user\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"username\\\":\\\"test_user\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"DELETE\", \"/api/v1/user\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/user\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"username\\\":\\\"test_user\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request DELETE \\\n  --url 'https://[boidas_url]/api/v1/user' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"username\":\"test_user\"}'"}]}},"/api/v1/user/role":{"put":{"tags":["User management"],"summary":"/api/v1/user/role","description":"Change a user's role.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["username","role"],"properties":{"username":{"type":"string","description":"Username of the user to be registered","example":"test_user"},"role":{"type":"string","description":"The role for the new user. There are five options: administrator, supervisor, operator, agent or auditor. The default role will be \"agent\".","example":"agent"}}}}}},"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundUser"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/user/role\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"username\\\":\\\"test_user\\\",\\\"role\\\":\\\"agent\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.put(\"https://[boidas_url]/api/v1/user/role\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"username\\\":\\\"test_user\\\",\\\"role\\\":\\\"agent\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"username\": \"test_user\",\n  \"role\": \"agent\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://[boidas_url]/api/v1/user/role\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/user/role');\n$request->setMethod(HTTP_METH_PUT);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"username\":\"test_user\",\"role\":\"agent\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"username\\\":\\\"test_user\\\",\\\"role\\\":\\\"agent\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"PUT\", \"/api/v1/user/role\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/user/role\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"username\\\":\\\"test_user\\\",\\\"role\\\":\\\"agent\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PUT \\\n  --url 'https://[boidas_url]/api/v1/user/role' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"username\":\"test_user\",\"role\":\"agent\"}'"}]}},"/api/v1/user/otp/reset":{"put":{"tags":["User management"],"summary":"/api/v1/user/otp/reset","description":"A supervisor can reset any user's OTP. When a user's OTP is reset, a new QR code will be generated and shown the next time that user logs into boidas.\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["username"],"properties":{"username":{"type":"string","description":"Username of the user to be registered","example":"test_user"}}}}}},"responses":{"204":{"description":"NO CONTENT"},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequestError"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/NotFoundUser"},{"$ref":"#/components/schemas/NotFoundOTP"}]}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/user/otp/reset\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"username\\\":\\\"test_user\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.put(\"https://[boidas_url]/api/v1/user/otp/reset\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"username\\\":\\\"test_user\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"username\": \"test_user\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://[boidas_url]/api/v1/user/otp/reset\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/user/otp/reset');\n$request->setMethod(HTTP_METH_PUT);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"username\":\"test_user\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"username\\\":\\\"test_user\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"PUT\", \"/api/v1/user/otp/reset\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/user/otp/reset\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"username\\\":\\\"test_user\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PUT \\\n  --url 'https://[boidas_url]/api/v1/user/otp/reset' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"username\":\"test_user\"}'"}]}},"/api/v1/contextual/filter":{"post":{"tags":["Contextual data filters"],"summary":"/api/v1/contextual/filter","description":"There is an option to segregate validations by user. The goal is that each user can only access validations that have specific contextual data information.\n<br><br>\nCreates a contextual data filter so the selected users will only see the validations whose contextual data is associated to the filter.\n<br><br>\nThere are two filter types. simple and advanced filters. The simple filter consists in a filter with only a key and a value fields. In case of advanced filters, they allow to filter by several contextual data key and value fields. Additionally, the advanced filters can configure how restrictive the filter is by the operator field. This operator allows the filter to match when all the key values are matched (AND operator) or when it is just one (OR operator). In the case of the OR operator, keys can be repeated only when the value is different.\n<br><br>\nThere cannot be duplicated filters with the same keys and values, and operators in case of the advanced ones.\n<br><br>\nOnce the contextual data filter has been created, when the user logs in, he will only see those validations whose contextual data contains the filter condition created.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["users"],"properties":{"users":{"type":"string","description":"List of users that will be associated with the filter. If more than one user is sent, the users must be separated by commas.","example":"user1, user2, user3"},"key":{"type":"string","description":"Key of the filter","example":"device"},"value":{"type":"string","description":"Value of the filter","example":"iphone"},"operator":{"type":"string","description":"Operator of the filter. Only necessary for multiple conditions (advanced filter). It has two possible values. AND or OR","example":"AND"},"condition":{"type":"string","description":"List of key-values that compose the filter condition. In case it is introduced multiple conditions (advanced filter), they must be separated by commas.","example":"key:value, key1:value1"}}}}}},"responses":{"201":{"description":"CREATED","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SimpleContextualFilterResponse"}}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/FilterAlreadyExistError"},{"$ref":"#/components/schemas/FilterInvalidError"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundFilter"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/contextual/filter\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"users\\\":\\\"user1, user2, user3\\\",\\\"key\\\":\\\"device\\\",\\\"value\\\":\\\"iphone\\\",\\\"operator\\\":\\\"AND\\\",\\\"condition\\\":\\\"key:value, key1:value1\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.post(\"https://[boidas_url]/api/v1/contextual/filter\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"users\\\":\\\"user1, user2, user3\\\",\\\"key\\\":\\\"device\\\",\\\"value\\\":\\\"iphone\\\",\\\"operator\\\":\\\"AND\\\",\\\"condition\\\":\\\"key:value, key1:value1\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"users\": \"user1, user2, user3\",\n  \"key\": \"device\",\n  \"value\": \"iphone\",\n  \"operator\": \"AND\",\n  \"condition\": \"key:value, key1:value1\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://[boidas_url]/api/v1/contextual/filter\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/contextual/filter');\n$request->setMethod(HTTP_METH_POST);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"users\":\"user1, user2, user3\",\"key\":\"device\",\"value\":\"iphone\",\"operator\":\"AND\",\"condition\":\"key:value, key1:value1\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"users\\\":\\\"user1, user2, user3\\\",\\\"key\\\":\\\"device\\\",\\\"value\\\":\\\"iphone\\\",\\\"operator\\\":\\\"AND\\\",\\\"condition\\\":\\\"key:value, key1:value1\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"POST\", \"/api/v1/contextual/filter\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/contextual/filter\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"users\\\":\\\"user1, user2, user3\\\",\\\"key\\\":\\\"device\\\",\\\"value\\\":\\\"iphone\\\",\\\"operator\\\":\\\"AND\\\",\\\"condition\\\":\\\"key:value, key1:value1\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request POST \\\n  --url 'https://[boidas_url]/api/v1/contextual/filter' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"users\":\"user1, user2, user3\",\"key\":\"device\",\"value\":\"iphone\",\"operator\":\"AND\",\"condition\":\"key:value, key1:value1\"}'"}]},"get":{"tags":["Contextual data filters"],"summary":"/api/v1/contextual/filter","description":"Returns a list with all the information related to all contextual data filters.\n<br><br>\nFilters can have single conditions (simple filter) or multiple conditions (advanced filter) , each one will answer a different response.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/SimpleContextualFilterResponse"},{"$ref":"#/components/schemas/AdvancedContextualFilterResponse"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/contextual/filter\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/contextual/filter\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/contextual/filter\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/contextual/filter');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/contextual/filter\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/contextual/filter\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/contextual/filter' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/contextual/filter/{filter_id}":{"put":{"tags":["Contextual data filters"],"summary":"/api/v1/contextual/filter/{filter_id}","description":"Modifies an existing contextual data filter.\n<br><br>\nThe fields that can be updated are the users associated with the filter_id and the value of the filter or the filter condition in case of an advanced filter. At least one of the parameters must be present in the request.\nIf the 'users' parameter is present, the previous users associated with the filter_id will be deleted and modified with the ones in the request.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/filter_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"users":{"type":"string","description":"List of users that will be associated with the filter. If more than one user is sent, the users must be separated by commas.","example":"user1, user2, user3"},"value":{"type":"string","description":"Value of the filter","example":"iphone"},"condition":{"type":"string","description":"List of key-values that compose the filter condition. If more than one key-value, they must be separated by commas.","example":"key:value, key1:value1"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/SimpleContextualFilterResponse"},{"$ref":"#/components/schemas/AdvancedContextualFilterResponse"}]}}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/FilterAlreadyExistError"},{"$ref":"#/components/schemas/ValidationError"},{"$ref":"#/components/schemas/FilterInvalidError"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundFilter"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"users\\\":\\\"user1, user2, user3\\\",\\\"value\\\":\\\"iphone\\\",\\\"condition\\\":\\\"key:value, key1:value1\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.put(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"users\\\":\\\"user1, user2, user3\\\",\\\"value\\\":\\\"iphone\\\",\\\"condition\\\":\\\"key:value, key1:value1\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"users\": \"user1, user2, user3\",\n  \"value\": \"iphone\",\n  \"condition\": \"key:value, key1:value1\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/contextual/filter/{filter_id}');\n$request->setMethod(HTTP_METH_PUT);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"users\":\"user1, user2, user3\",\"value\":\"iphone\",\"condition\":\"key:value, key1:value1\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"users\\\":\\\"user1, user2, user3\\\",\\\"value\\\":\\\"iphone\\\",\\\"condition\\\":\\\"key:value, key1:value1\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"PUT\", \"/api/v1/contextual/filter/{filter_id}\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Put.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"users\\\":\\\"user1, user2, user3\\\",\\\"value\\\":\\\"iphone\\\",\\\"condition\\\":\\\"key:value, key1:value1\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PUT \\\n  --url 'https://[boidas_url]/api/v1/contextual/filter/{filter_id}' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"users\":\"user1, user2, user3\",\"value\":\"iphone\",\"condition\":\"key:value, key1:value1\"}'"}]},"get":{"tags":["Contextual data filters"],"summary":"/api/v1/contextual/filter/{filter_id}","description":"Returns all the information related to a specific contextual data filter.\n<br><br>\nFilters can have single conditions (simple filter) or multiple conditions (advanced filter) , each one will answer a different response\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/filter_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/SimpleContextualFilterResponseFilterId"},{"$ref":"#/components/schemas/AdvancedContextualFilterResponseFilterId"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundFilter"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/contextual/filter/{filter_id}');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/contextual/filter/{filter_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/contextual/filter/{filter_id}' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]},"delete":{"tags":["Contextual data filters"],"summary":"/api/v1/contextual/filter/{filter_id}","description":"Deletes an existing contextual data filter.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/filter_id"}],"responses":{"204":{"description":"NO CONTENT"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundFilter"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.delete(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"DELETE\", \"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/contextual/filter/{filter_id}');\n$request->setMethod(HTTP_METH_DELETE);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"DELETE\", \"/api/v1/contextual/filter/{filter_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request DELETE \\\n  --url 'https://[boidas_url]/api/v1/contextual/filter/{filter_id}' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]},"patch":{"tags":["Contextual data filters"],"summary":"/api/v1/contextual/filter/{filter_id}","description":"Adds users to an existing contextual data filter.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/filter_id"}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"users":{"type":"string","description":"List of users that will be associated with the filter. If more than one user is sent, the users must be separated by commas.","example":"user1, user2, user3"}}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/SimpleContextualFilterResponse"},{"$ref":"#/components/schemas/AdvancedContextualFilterResponse"}]}}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ValidationError"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundFilter"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"users\\\":\\\"user1, user2, user3\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.patch(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"users\\\":\\\"user1, user2, user3\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"users\": \"user1, user2, user3\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PATCH\", \"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\nHttpRequest::methodRegister('PATCH');\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/contextual/filter/{filter_id}');\n$request->setMethod(HttpRequest::HTTP_METH_PATCH);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"users\":\"user1, user2, user3\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"users\\\":\\\"user1, user2, user3\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"PATCH\", \"/api/v1/contextual/filter/{filter_id}\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/contextual/filter/{filter_id}\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"users\\\":\\\"user1, user2, user3\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PATCH \\\n  --url 'https://[boidas_url]/api/v1/contextual/filter/{filter_id}' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"users\":\"user1, user2, user3\"}'"}]}},"/api/v1/reason":{"post":{"tags":["Reject reason"],"summary":"/api/v1/reason","description":"It is mandatory to justify the reject reason when a validation is rejected. Reject reasons allow to use a predefined list of reasons to justify the rejection of a validation.\n<br><br>\nCreates a reject reason so the users will reject onboardings via boidas spa using predefined reasons.\n<br><br>\nThere cannot be duplicated reject reasons.\n<br><br>\nOnce a reject reason is created. The boidas SPA reject flow will use the reject reasons to justify the rejection of a validation.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["rejectReason"],"properties":{"rejectReason":{"type":"string","description":"Reject reason used to reject validations.","example":"The validation has been rejected because the user is underage."}}}}}},"responses":{"201":{"description":"CREATED","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RejectReasonResponse"}}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/MaxRejectReasonsError"},{"$ref":"#/components/schemas/RejectReasonMaxLengthError"},{"$ref":"#/components/schemas/RejectReasonAlreadyExistsError"},{"$ref":"#/components/schemas/ValidationError"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/reason\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"rejectReason\\\":\\\"The validation has been rejected because the user is underage.\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.post(\"https://[boidas_url]/api/v1/reason\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"rejectReason\\\":\\\"The validation has been rejected because the user is underage.\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"rejectReason\": \"The validation has been rejected because the user is underage.\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://[boidas_url]/api/v1/reason\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/reason');\n$request->setMethod(HTTP_METH_POST);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"rejectReason\":\"The validation has been rejected because the user is underage.\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"rejectReason\\\":\\\"The validation has been rejected because the user is underage.\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"POST\", \"/api/v1/reason\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/reason\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"rejectReason\\\":\\\"The validation has been rejected because the user is underage.\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request POST \\\n  --url 'https://[boidas_url]/api/v1/reason' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"rejectReason\":\"The validation has been rejected because the user is underage.\"}'"}]},"get":{"tags":["Reject reason"],"summary":"/api/v1/reason","description":"Returns a list with all the reject reasons.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/RejectReasonArrayResponse"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/reason\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/reason\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/reason\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/reason');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/reason\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/reason\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/reason' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/reason/{reason_id}":{"get":{"tags":["Reject reason"],"summary":"/api/v1/reason/{reason_id}","description":"Returns all the information related to a specific reject reason.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/reason_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/RejectReasonResponse"}]}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundRejectReason"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/reason/{reason_id}\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/reason/{reason_id}\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/reason/{reason_id}\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/reason/{reason_id}');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/reason/{reason_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/reason/{reason_id}\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/reason/{reason_id}' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]},"delete":{"tags":["Reject reason"],"summary":"/api/v1/reason/{reason_id}","description":"Deletes an existing reject reason.\n<br><br>\nRestricted to users with supervisor or administrator roles.\n","parameters":[{"$ref":"#/components/parameters/reason_id"}],"responses":{"204":{"description":"NO CONTENT"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundRejectReason"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/reason/{reason_id}\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.delete(\"https://[boidas_url]/api/v1/reason/{reason_id}\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"DELETE\", \"https://[boidas_url]/api/v1/reason/{reason_id}\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/reason/{reason_id}');\n$request->setMethod(HTTP_METH_DELETE);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"DELETE\", \"/api/v1/reason/{reason_id}\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/reason/{reason_id}\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request DELETE \\\n  --url 'https://[boidas_url]/api/v1/reason/{reason_id}' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/prioritizations":{"get":{"tags":["Contextual Data Prioritization"],"summary":"/api/v1/prioritizations","description":"Returns all contextual data prioritizations, ordered by priority.\n<br><br>\nIf an `id` query parameter is provided, returns the specific prioritization.\n<br><br>\nRestricted to users with administrator or supervisor roles.\n","parameters":[{"in":"query","name":"id","schema":{"type":"string"},"required":false,"description":"If provided, retrieves the prioritization with this id."}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ContextualDataPrioritization"},{"type":"array","items":{"$ref":"#/components/schemas/ContextualDataPrioritization"}}]}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionDenied"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundPrioritization"}}}}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/prioritizations');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setQueryData([\n  'id' => 'SOME_STRING_VALUE'\n]);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/prioritizations?id=SOME_STRING_VALUE\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]},"post":{"tags":["Contextual Data Prioritization"],"summary":"/api/v1/prioritizations","description":"Creates a new contextual data prioritization.\n<br><br>\nThe request must include the `priority`, `key`, and `value` of the prioritization.\n<br><br>\nThe `users` field is optional. If not provided, the prioritization will be applied to all users.\n<br><br>\nRestricted to users with administrator or supervisor roles.\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextualDataPrioritizationCreate"}}}},"responses":{"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextualDataPrioritization"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextualDataPrioritizationError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionDenied"}}}}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/prioritizations\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"priority\\\":1,\\\"key\\\":\\\"test_key\\\",\\\"value\\\":\\\"test_value\\\",\\\"users\\\":\\\"username1, username2\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.post(\"https://[boidas_url]/api/v1/prioritizations\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"priority\\\":1,\\\"key\\\":\\\"test_key\\\",\\\"value\\\":\\\"test_value\\\",\\\"users\\\":\\\"username1, username2\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"priority\": 1,\n  \"key\": \"test_key\",\n  \"value\": \"test_value\",\n  \"users\": \"username1, username2\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://[boidas_url]/api/v1/prioritizations\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/prioritizations');\n$request->setMethod(HTTP_METH_POST);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"priority\":1,\"key\":\"test_key\",\"value\":\"test_value\",\"users\":\"username1, username2\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"priority\\\":1,\\\"key\\\":\\\"test_key\\\",\\\"value\\\":\\\"test_value\\\",\\\"users\\\":\\\"username1, username2\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"POST\", \"/api/v1/prioritizations\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/prioritizations\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"priority\\\":1,\\\"key\\\":\\\"test_key\\\",\\\"value\\\":\\\"test_value\\\",\\\"users\\\":\\\"username1, username2\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request POST \\\n  --url 'https://[boidas_url]/api/v1/prioritizations' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"priority\":1,\"key\":\"test_key\",\"value\":\"test_value\",\"users\":\"username1, username2\"}'"}]},"patch":{"tags":["Contextual Data Prioritization"],"summary":"/api/v1/prioritizations","description":"Updates an existing contextual data prioritization.\n<br><br>\nRestricted to users with administrator or supervisor roles.\n<br><br>\nThe request must include the `id` of the prioritization to update and at least one of `priority`, `key`, or `value`.\n","parameters":[{"in":"query","name":"id","schema":{"type":"string"},"required":true,"description":"The id of the prioritization to update."}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextualDataPrioritizationUpdate"}}}},"responses":{"200":{"description":"Updated successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextualDataPrioritization"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextualDataPrioritizationError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionDenied"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundPrioritization"}}}}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\");\nvar request = new RestRequest(Method.PATCH);\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nrequest.AddParameter(\"application/json\", \"{\\\"priority\\\":2,\\\"key\\\":\\\"updated_key\\\",\\\"value\\\":\\\"updated_value\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.patch(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\")\n  .header(\"content-type\", \"application/json\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .body(\"{\\\"priority\\\":2,\\\"key\\\":\\\"updated_key\\\",\\\"value\\\":\\\"updated_value\\\"}\")\n  .asString();"},{"lang":"Javascript","source":"const data = JSON.stringify({\n  \"priority\": 2,\n  \"key\": \"updated_key\",\n  \"value\": \"updated_value\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PATCH\", \"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\nHttpRequest::methodRegister('PATCH');\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/prioritizations');\n$request->setMethod(HttpRequest::HTTP_METH_PATCH);\n\n$request->setQueryData([\n  'id' => 'SOME_STRING_VALUE'\n]);\n\n$request->setHeaders([\n  'content-type' => 'application/json',\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$request->setBody('{\"priority\":2,\"key\":\"updated_key\",\"value\":\"updated_value\"}');\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\npayload = \"{\\\"priority\\\":2,\\\"key\\\":\\\"updated_key\\\",\\\"value\\\":\\\"updated_value\\\"}\"\n\nheaders = {\n    'content-type': \"application/json\",\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\"\n    }\n\nconn.request(\"PATCH\", \"/api/v1/prioritizations?id=SOME_STRING_VALUE\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Patch.new(url)\nrequest[\"content-type\"] = 'application/json'\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\nrequest.body = \"{\\\"priority\\\":2,\\\"key\\\":\\\"updated_key\\\",\\\"value\\\":\\\"updated_value\\\"}\"\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request PATCH \\\n  --url 'https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '{\"priority\":2,\"key\":\"updated_key\",\"value\":\"updated_value\"}'"}]},"delete":{"tags":["Contextual Data Prioritization"],"summary":"/api/v1/prioritizations","description":"Deletes a contextual data prioritization by id.\n<br><br>\nRestricted to users with administrator or supervisor roles.\n","parameters":[{"in":"query","name":"id","schema":{"type":"string"},"required":true,"description":"The id of the prioritization to delete."}],"responses":{"200":{"description":"Deleted successfully","content":{"application/json":{"schema":{"type":"object","example":{}}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextualDataPrioritizationError"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PermissionDenied"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundPrioritization"}}}}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.delete(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"DELETE\", \"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/prioritizations');\n$request->setMethod(HTTP_METH_DELETE);\n\n$request->setQueryData([\n  'id' => 'SOME_STRING_VALUE'\n]);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"DELETE\", \"/api/v1/prioritizations?id=SOME_STRING_VALUE\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Delete.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request DELETE \\\n  --url 'https://[boidas_url]/api/v1/prioritizations?id=SOME_STRING_VALUE' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/events":{"get":{"tags":["Webhook"],"summary":"/api/v1/events","description":"Retrieves events of validations status changes.\n<br>\nOnly available if [webhook](../../annexes/webhooks) is configured.\n","parameters":[{"$ref":"#/components/parameters/notificationSent"},{"$ref":"#/components/parameters/perPage"},{"$ref":"#/components/parameters/page"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventsArrayResponse"}}}},"400":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvalidParameter"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundEventId"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/events?notificationSent=SOME_BOOLEAN_VALUE&perPage=SOME_STRING_VALUE&page=SOME_STRING_VALUE\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/events?notificationSent=SOME_BOOLEAN_VALUE&perPage=SOME_STRING_VALUE&page=SOME_STRING_VALUE\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/events?notificationSent=SOME_BOOLEAN_VALUE&perPage=SOME_STRING_VALUE&page=SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/events');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setQueryData([\n  'notificationSent' => 'SOME_BOOLEAN_VALUE',\n  'perPage' => 'SOME_STRING_VALUE',\n  'page' => 'SOME_STRING_VALUE'\n]);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/events?notificationSent=SOME_BOOLEAN_VALUE&perPage=SOME_STRING_VALUE&page=SOME_STRING_VALUE\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/events?notificationSent=SOME_BOOLEAN_VALUE&perPage=SOME_STRING_VALUE&page=SOME_STRING_VALUE\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/events?notificationSent=SOME_BOOLEAN_VALUE&perPage=SOME_STRING_VALUE&page=SOME_STRING_VALUE' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/events/{event_id}":{"get":{"tags":["Webhook"],"summary":"/api/v1/events/{event_id}","description":"Retrieves a specific event of validation status change.\n<br>\nOnly available if [webhook](../../annexes/webhooks) is configured.\n","parameters":[{"$ref":"#/components/parameters/event_id"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventsResponse"}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"description":"FORBIDDEN","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"}]}}}},"404":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundEventId"}}}},"405":{"$ref":"#/components/responses/MethodNotAllowed"},"410":{"$ref":"#/components/responses/Gone"},"500":{"$ref":"#/components/responses/InternalServerError"}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/events/bbfa1d8d-14b9-47f4-908e-90c10a38cb99\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.get(\"https://[boidas_url]/api/v1/events/bbfa1d8d-14b9-47f4-908e-90c10a38cb99\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://[boidas_url]/api/v1/events/bbfa1d8d-14b9-47f4-908e-90c10a38cb99\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/events/bbfa1d8d-14b9-47f4-908e-90c10a38cb99');\n$request->setMethod(HTTP_METH_GET);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"GET\", \"/api/v1/events/bbfa1d8d-14b9-47f4-908e-90c10a38cb99\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/events/bbfa1d8d-14b9-47f4-908e-90c10a38cb99\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request GET \\\n  --url 'https://[boidas_url]/api/v1/events/bbfa1d8d-14b9-47f4-908e-90c10a38cb99' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}},"/api/v1/test-webhook":{"post":{"tags":["Webhook"],"summary":"/api/v1/test-webhook","description":"Tests the sending of a webhook event for a validation status change.\n<br><br>\nThis endpoint simulates a webhook event and attempts to send it to the configured webhook URL.\n<br><br>\nOnly available if the webhook is properly configured in settings.\n<br><br>\nRestricted to users with operator, supervisor or administrator roles.\n","responses":{"200":{"description":"Webhook event sent successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","example":"Webhook event sent successfully."}}}}}},"400":{"description":"Webhook feature is disabled or error occurred during the process.","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"message":{"type":"string","example":"Webhook feature is disabled."}}},{"type":"object","properties":{"message":{"type":"string","example":"Failed to send webhook event."}}}]}}}},"403":{"description":"Failed to authenticate or retrieve a valid token for the webhook.","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ForbiddenError"},{"$ref":"#/components/schemas/PermissionDenied"},{"type":"object","properties":{"message":{"type":"string","example":"Failed to retrieve token. Webhook authentication failed."}}}]}}}},"500":{"description":"Internal server error during the webhook sending process.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","example":"Failed to send webhook event. Error: {error details}"}}}}}}},"x-codeSamples":[{"lang":"C#","source":"var client = new RestClient(\"https://[boidas_url]/api/v1/test-webhook\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\nIRestResponse response = client.Execute(request);"},{"lang":"Java","source":"HttpResponse<String> response = Unirest.post(\"https://[boidas_url]/api/v1/test-webhook\")\n  .header(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\")\n  .asString();"},{"lang":"Javascript","source":"const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://[boidas_url]/api/v1/test-webhook\");\nxhr.setRequestHeader(\"Authorization\", \"Bearer REPLACE_BEARER_TOKEN\");\n\nxhr.send(data);"},{"lang":"Php","source":"<?php\n\n$request = new HttpRequest();\n$request->setUrl('https://[boidas_url]/api/v1/test-webhook');\n$request->setMethod(HTTP_METH_POST);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\ntry {\n  $response = $request->send();\n\n  echo $response->getBody();\n} catch (HttpException $ex) {\n  echo $ex;\n}"},{"lang":"Python","source":"import http.client\n\nconn = http.client.HTTPSConnection(\"[boidas_url]\")\n\nheaders = { 'Authorization': \"Bearer REPLACE_BEARER_TOKEN\" }\n\nconn.request(\"POST\", \"/api/v1/test-webhook\", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"},{"lang":"Ruby","source":"require 'uri'\nrequire 'net/http'\nrequire 'openssl'\n\nurl = URI(\"https://[boidas_url]/api/v1/test-webhook\")\n\nhttp = Net::HTTP.new(url.host, url.port)\nhttp.use_ssl = true\nhttp.verify_mode = OpenSSL::SSL::VERIFY_NONE\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"Authorization\"] = 'Bearer REPLACE_BEARER_TOKEN'\n\nresponse = http.request(request)\nputs response.read_body"},{"lang":"Curl","source":"curl --request POST \\\n  --url 'https://[boidas_url]/api/v1/test-webhook' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"}]}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"Bearer <oauth2_token>"},"basicAuth":{"type":"http","scheme":"basic","basicFormat":"Basic <base64-encoded(client_id:client_secret)>","description":"Basic Authentication header has to be sent to authenticate the client application (boiDas) against the oauth2 server deployed within the service.\nThe construction of this Basic Auth header is, as usual, by typing the word Basic plus the base64-encoded username:password, which corresponds to client_id:client_secret.\n"}},"parameters":{"validation_id":{"name":"validation_id","in":"path","schema":{"type":"string"},"required":true,"description":"id of the validation."},"locale":{"name":"locale","in":"path","schema":{"type":"string"},"required":false,"description":"language of the document."},"filter_id":{"name":"filter_id","in":"path","schema":{"type":"string"},"required":true,"description":"id of the filter."},"reason_id":{"name":"reason_id","in":"path","schema":{"type":"string"},"required":true,"description":"id of the reason."},"reject_id":{"name":"reject_id","in":"path","schema":{"type":"string"},"required":true,"description":"id of the reject reason."},"accept-boidas":{"name":"Accept-boidas","example":"zip","in":"header","schema":{"type":"string"},"description":"If the optional header \"Accept-boidas\" is configured with the value \"zip\", the validation data is returned in a ZIP format."},"status":{"name":"status","in":"query","schema":{"type":"string"},"description":"Filter validations by validation status.\nIt can be: confirmed(pending), inconclusive, accepted, rejected\n","example":"accepted"},"from":{"name":"from","in":"query","schema":{"type":"string"},"description":"Filter validations from createdAt validation date.\nIt is possible to define it as a date following the format YYYYMMDD or as a date and time following the format YYYY-MM-DDTHH:MM:SS\n","example":"20220323"},"to":{"name":"to","in":"query","schema":{"type":"string"},"description":"Filter validations to createdAt validation date.\nIt is possible to define it as a date following the format YYYYMMDD or as a date and time following the format YYYY-MM-DDTHH:MM:SS\n","example":"20220321"},"statusChangedBefore":{"name":"statusChangedBefore","in":"query","schema":{"type":"string"},"description":"Filter validations from validation status change date.\nIt is possible to define it as a date following the format YYYYMMDD or as a date and time following the format YYYY-MM-DDTHH:MM:SS\n","example":"20220323"},"statusChangedAfter":{"name":"statusChangedAfter","in":"query","schema":{"type":"string"},"description":"Filter validations to validation status change date.\nIt is possible to define it as a date following the format YYYYMMDD or as a date and time following the format YYYY-MM-DDTHH:MM:SS\n","example":"20220321"},"page":{"name":"page","in":"query","schema":{"type":"string"},"description":"This endpoint has few basic functionalities for pagination.\nIt is current page.\n","example":"1"},"perPage":{"name":"perPage","in":"query","schema":{"type":"string"},"description":"This endpoint has few basic functionalities for pagination.\nIt is number of items per page (to a maximum of 100).\n"},"include":{"name":"include","in":"query","schema":{"type":"string"},"description":"Retrieve certain fields of the validation\nThe options are: id,scores,nodes,createdAt,state.\n","example":"id"},"notificationSent":{"name":"notificationSent","in":"query","schema":{"type":"boolean"},"description":"Filter events depending on the result of the webhook notification.\n<br>\nOnly available if [webhook](../../annexes/webhooks) is configured.\n"},"event_id":{"name":"event_id","in":"path","schema":{"type":"string"},"required":true,"description":"Id of the event\n","example":"bbfa1d8d-14b9-47f4-908e-90c10a38cb99"}},"schemas":{"SimpleContextualFilterResponse":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"filter_id":{"type":"string","example":"a1b2"},"users":{"type":"array","items":{"type":"string"},"example":["user1","user2","user3"]},"filter":{"type":"object","properties":{"key":{"type":"string","example":"device"},"value":{"type":"string","example":"iphone"}}}}}}}},"AdvancedContextualFilterResponse":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"filter_id":{"type":"string","example":"a1b2"},"users":{"type":"array","items":{"type":"string"},"example":["user1","user2","user3"]},"operator":{"type":"string","example":"AND"},"filters":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}}},"example":[{"key":"device","value":"iphone"},{"key":"device","value":"android"}]}}}}}},"AdvancedContextualFilterResponseFilterId":{"type":"object","properties":{"data":{"type":"object","properties":{"filter_id":{"type":"string","example":"a1b2"},"users":{"type":"array","items":{"type":"string"},"example":["user1","user2","user3"]},"operator":{"type":"string","example":"AND"},"filters":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}}},"example":[{"key":"device","value":"iphone"},{"key":"device","value":"android"}]}}}}},"SimpleContextualFilterResponseFilterId":{"type":"object","properties":{"data":{"type":"object","properties":{"filter_id":{"type":"string","example":"a1b2"},"users":{"type":"array","items":{"type":"string"},"example":["user1","user2","user3"]},"filter":{"type":"object","properties":{"key":{"type":"string","example":"device"},"value":{"type":"string","example":"iphone"}}}}}}},"RejectReasonResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"reason_id":{"type":"string","example":"abcd."},"reason":{"type":"string","example":"The validation has been rejected because the user is underage."}}}}},"RejectReasonArrayResponse":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"reason_id":{"type":"string","example":"abcd."},"reason":{"type":"string","example":"The validation has been rejected because the user is underage."}}}}}},"IdentityVerificationResponse":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","example":"2021-11-15 11:00:10 +0100"},"service_name":{"type":"string","description":"Name of the state verification service used. Possible values:\n- `ES_PID_SVD` — Secretaría de Digitalización del Ministerio de Economía (Spain)\n- `RENIEC` — Registro Nacional de Identificación y Estado Civil (Peru)\n- `ReceitaFederal` — Receita Federal do Brasil (Brazil)\n- `RegistroCivil` — Registro Civil de Chile (Chile)\n","example":"ES_PID_SVD"},"request":{"type":"object","description":"The request fields vary depending on the service used:\n- **ES_PID_SVD**: `documentType`, `documentNumber`, `supportNumber`\n- **RENIEC**: `identificationID`\n- **ReceitaFederal**: `birthDate`, `cpfNumber`, `name`\n- **RegistroCivil**: `run`, `numero_serie`\n","oneOf":[{"title":"ES_PID_SVD request","properties":{"documentType":{"type":"string","example":"DNI"},"documentNumber":{"type":"string","example":"00000051T"},"supportNumber":{"type":"string","example":"AAA000000"}}},{"title":"RENIEC request","properties":{"identificationID":{"type":"string","example":"12345678"}}},{"title":"ReceitaFederal request","properties":{"birthDate":{"type":"string","example":"22 02 1984"},"cpfNumber":{"type":"string","example":"988207613-00"},"name":{"type":"string","example":"LETICIA CRISTINA DE OLIVEIRA"}}},{"title":"RegistroCivil request","properties":{"run":{"type":"string","example":"12345678-9"},"numero_serie":{"type":"string","example":"A123456789"}}}]},"response":{"type":"object","description":"The response structure varies depending on the service used.\nOn success, the response contains the service result. On failure, an `error` object is returned.\n\n**ES_PID_SVD** success:\n```json\n{ \"StatusCode\": \"00\", \"LiteralError\": \"VERIFICATION OK\" }\n```\n**ES_PID_SVD** error:\n```json\n{ \"Error\": \"VERIFICATION FAILED\" }\n```\n**RENIEC** success:\n```json\n{ \"nombres\": \"JUAN\", \"apellidoPaterno\": \"PEREZ\", \"apellidoMaterno\": \"GOMEZ\" }\n```\n**RENIEC** error:\n```json\n{ \"Error\": { \"ExceptionId\": \"404\", \"ExceptionText\": \"Person not found\" } }\n```\n**ReceitaFederal** success:\n```json\n{ \"ni\": \"98820761300\", \"nome\": \"LETICIA CRISTINA DE OLIVEIRA\", \"situacao\": \"Regular\" }\n```\n**ReceitaFederal** error:\n```json\n{ \"Error\": { \"ExceptionId\": \"403\", \"ExceptionText\": \"No token provided\" } }\n```\n**RegistroCivil** success:\n```json\n{ \"nombres\": \"JUAN\", \"apellido1\": \"PEREZ\", \"apellido2\": \"GOMEZ\", \"run\": \"12345678-9\" }\n```\n**RegistroCivil** error:\n```json\n{ \"Error\": { \"ExceptionId\": \"404\", \"ExceptionText\": \"RUN not found\" } }\n```\n"},"scores":{"type":"array","description":"List of scores returned by the state verification service.\nThe score names vary depending on the service used:\n- **ES_PID_SVD**: `ValidasScoreIdentityTestEsPidSvd`\n- **RENIEC**: `ValidasScoreRENIECCheck`, `ValidasScoreRENIECAuthenticity`\n- **ReceitaFederal**: `ValidasScoreReceitaFederalCheck`, `ValidasScoreReceitaFederalAuthenticity`\n- **RegistroCivil**: `ValidasScoreRegistroCivilCheck`, `ValidasScoreRegistroCivilValidity`\n","items":{"type":"object","properties":{"name":{"type":"string","description":"The score names vary depending on the service used.\n","example":"ValidasScoreIdentityTestEsPidSvd"},"value":{"type":"number","format":"float","example":1}}}}}}}}},"OCRResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"nodes":{"type":"array","items":{"type":"object","properties":{"fieldName":{"type":"string","example":"Nombre / Name"},"name":{"type":"string","example":"PD_Name_Out"},"text":{"type":"string","example":"JUAN"}}}}}}},"example":{"nodes":[{"fieldName":"Nombre / Name","name":"PD_Name_Out","text":"JUAN"},{"fieldName":"Apellidos / Last Names","name":"PD_LastName_Out","text":"PEREZ PEREZ"},{"fieldName":"DNI / DNI","name":"PD_IdentificationNumber_Out","text":"00000051T"},{"fieldName":"Fecha de Validez / Expiration Date","name":"DD_ExpirationDate_Out","text":"01 06 2016"},{"fieldName":"IDESP / IDESP","name":"DD_DocumentNumber_Out","text":"AAA000000"},{"fieldName":"Sexo / Gender","name":"PD_Sex_Out","text":"M"},{"fieldName":"Nacionalidad / Nationality","name":"PD_Nationality_Out","text":"ESP"},{"fieldName":"Fecha de Nacimiento / Date of Birth","name":"PD_BirthDate_Out","text":"01 01 1951"},{"fieldName":"Municipio de Nacimiento / Town of Birth ","name":"PD_BirthPlaceMunicipality_Out","text":"MADRID"},{"fieldName":"Provincia de Nacimiento / Province of Birth","name":"PD_BirthPlaceState_Out","text":"MADRID"},{"fieldName":"Domicilio / Address ","name":"PD_AddressStreet_Out","text":"C JULIAN GONZALEZ SEGADOR S N"},{"fieldName":"Municipio de Domicilio / Town of Residence","name":"PD_AddressMunicipality_Out","text":"MADRID - MADRID"},{"fieldName":"Provincia de Domicilio / Province of Residence","name":"PD_AddressState_Out","text":"MADRID"}]}},"ActivityResponse":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"created_at":{"type":"string","example":"2021-11-15 11:00:10 +0100"},"user":{"type":"string","example":"admin"},"role":{"type":"string","example":"supervisor"},"action":{"type":"string","example":"Validation accessed via API"}}}}}},"ScoresResponse":{"type":"object","description":"Returns a list of scores (under the data ->scores keys). Each score represents a validation performed on the document over a feature","properties":{"data":{"type":"object","properties":{"biometryScores":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"}}}},"documentScores":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"}}}},"integrityScores":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"}}}},"summaryScores":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"}}}},"notValidatedScores":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"}}}},"identityVerification":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"}}}},"PEPAndAMLScores":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{"type":"number"}}}}},"example":{"biometryScores":[{"name":"ValidasScorePhotoId","value":0.04565465917179558},{"name":"ValidasScoreSelfie","value":0.04565465917179558},{"name":"ValidasScoreVideo","value":0.09144748463204097},{"name":"ValidasScoreLifeProof","value":0.998728301901118},{"name":"ValidasScoreSelfieAuthenticity","value":0.9822041770452932},{"name":"ValidasScoreDuplicateAttack","value":0.8920045770653942},{"name":"ValidasScoreNfcSelfie","value":0.9682950392203321},{"name":"ValidasScoreNfcPhotoId","value":0.8673849188372615}],"documentScores":[{"name":"ValiDasNumeroDNI-MRZNumeroDNI","value":0.7777777777777778},{"name":"ScoreOCRObverse","value":0.9944444444444445},{"name":"ScoreTotalNoFlash","value":0.41937345696586403},"..."],"integrityScores":[{"name":"ValidasScoreDocObverseIntegrity","value":1},{"name":"ValidasScoreSelfieIntegrity","value":0},{"name":"ValidasScoreIntegrity","value":0},{"name":"ValidasScoreDeviceIntegrity","value":0},"..."],"summaryScores":[{"name":"ValidationGlobalScore","value":0}],"notValidatedScores":[{"name":"ValidasScoreIntegrity","value":0},{"name":"ValidasScoreSelfie","value":0.04565465917179558}],"identityVerification":[{"name":"ValidasScoreIdentityTestEsPidSvd","value":1},{"name":"ValidasScoreHitIdentityTest","value":1}],"PEPAndAMLScores":[{"name":"ValidasScorePEPAndAMLTest","value":1}]}}}},"ValidationSchema":{"type":"object","properties":{"id":{"type":"string","example":"7e84ff4eb000409892c9995e4955e636"},"documentType":{"type":"string","example":"ES_IDCard_2015"},"createdAt":{"type":"string","example":"2018-03-16 12:50:47 +0100"},"state":{"type":"string","example":"pending"},"data":{"type":"object","properties":{"integrity":{"type":"object","properties":{"scores":{"type":"array","items":{"type":"object"}}}},"biometry":{"type":"object","properties":{"_links":{"type":"array","items":{"type":"object"}},"scores":{"type":"array","items":{"type":"object"}}}},"contextualData":{"type":"array","items":{"type":"object"}},"document":{"type":"object","properties":{"_links":{"type":"array","items":{"type":"object"}},"scores":{"type":"array","items":{"type":"object"}},"nodes":{"type":"object"}}},"summary":{"type":"object","properties":{"scores":{"type":"array","items":{"type":"object"}},"notValidatedScores":{"type":"array","items":{"type":"object"}}}},"challenges":{"type":"object"},"identidasVersion":{"type":"string","example":"1.40.1"},"timestamp":{"type":"object","properties":{"_links":{"type":"array","items":{"type":"object"}},"createdAt":{"type":"string","example":"2018-03-16 12:51:47 +0100"},"timestampAuthority":{"type":"string","example":"standard"}}},"environment":{"type":"object","properties":{"user-agent":{"type":"string","example":"Mozilla/5.0 (Linux; Android 10; VOG-L29).."},"platform":{"type":"string","example":"Android"},"class":{"type":"string","example":"web-mobile"},"sdk_information":{"type":"array","items":{"type":"object"},"example":[{"name":"sdk-selfie-alive-capture","version":"3.0.11"},{"name":"sdk-document-capture","version":"3.2.2"}]}}},"identityVerification":{"type":"object","properties":{"scores":{"type":"array","items":{"type":"object"}}}},"PEPAndAMLStatus":{"type":"object","properties":{"matches":{"type":"array","items":{"type":"object"}},"scores":{"type":"object"},"extra_data":{"type":"string"}},"example":{"matches":[{"matchName":"Carmen Espinola Espinola","matchScores":[{"name":"ValidasScoreHitPEPTest","value":1},{"name":"ValidasScoreHitSanctionTest","value":1},{"name":"ValidasScoreHitAdverseMediaTest","value":1}]}],"scores":{"name":"ValidasScorePEPAndAMLTest","value":1},"extra_data":"https://boidas_url/api/v1/validation/{ValidationId}/pep-aml"}}}},"documentId":{"type":"string","example":"7e84ff4eb000409892c9995e4955e636"},"stateChangeAt":{"type":"string","example":"2018-03-16 12:50:47 +0100"},"serviceMode":{"type":"string","example":"validation"}}},"IdValidationResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ValidationSchema"}}},"IdValidationArrayResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ValidationSchema"}}}},"PEPandAMLResponseMatch":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","example":"2021-11-15 11:00:10 +0100"},"request":{"type":"object","properties":{"birth_year":{"type":"string","example":1980},"country_codes":{"type":"array","items":{"type":"string"},"example":["ES"]},"search_term":{"type":"string","example":"NOMBRE APELLIDO1 APELLIDO2"}}},"response":{"type":"object","properties":{"hits":{"type":"array","example":[{"doc":{"name":"NOMBRE APELLIDO1 APELLIDO2"}}]}}}}}}}},"PEPandAMLResponseNoMatch":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","example":"2021-11-15 11:00:10 +0100"},"request":{"type":"object","properties":{"birth_year":{"type":"string","example":1980},"country_codes":{"type":"array","items":{"type":"string"},"example":["ES"]},"search_term":{"type":"string","example":"NOMBRE APELLIDO1 APELLIDO2"}}},"response":{"type":"string","example":"No match found"}}}}}},"UsersListResponse":{"type":"object","description":"Returns a list of every user with its assigned role.","properties":{"users":{"type":"object","example":{"user_1":"administrator","user_2":"supervisor","user_3":"operator","user_4":"auditor","user_5":"agent"}}}},"InvalidData":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["InvalidData"]},"message":{"type":"string","enum":["Invalid json data"]}},"example":{"code":"InvalidData","message":"Invalid json data"}},"NotAllowed":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NotAllowed"]},"message":{"type":"string","enum":["Validation state (X) does not allow X"]}},"example":{"code":"NotAllowed","message":"Validation state (X) does not allow X "}},"ValidationError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["ValidationError"]},"message":{"type":"string","enum":["The provided data is not valid"]}},"example":{"code":"ValidationError","message":"The provided data is not valid"}},"ServerError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["InternalServerError"]},"message":{"type":"string","enum":["An error occurred while processing your request"]}},"example":{"code":"InternalServerError","message":"An error occurred while processing your request"}},"Unauthorized":{"type":"object","required":["code","detail"],"properties":{"code":{"type":"string","enum":["Unauthorized"]},"detail":{"type":"string","enum":["Authentication credentials were not provided."]}},"example":{"code":"Unauthorized","detail":"Authentication credentials were not provided."}},"InvalidClient":{"type":"object","required":["code","detail"],"properties":{"code":{"type":"string","enum":["InvalidClient"]},"detail":{"type":"string","enum":["OAuth Client authentication failed"]}},"example":{"code":"InvalidClient","detail":"OAuth Client authentication failed"}},"NotFoundValidation":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NotFoundValidation"]},"message":{"type":"string","enum":["Resource has not been found"]}},"example":{"code":"NotFoundValidation","message":"Resource has not been found"}},"NotFoundFilter":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NotFoundFilter"]},"message":{"type":"string","enum":["Resource has not been found"]}},"example":{"code":"NotFoundFilter","message":"Resource has not been found"}},"MethodNotAllowed":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["MethodNotAllowed"]},"message":{"type":"string","enum":["The requested method is not allowed for this endpoint"]}},"example":{"code":"MethodNotAllowed","message":"The requested method is not allowed for this endpoint"}},"Gone":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["Gone"]},"message":{"type":"string","enum":["The resource is gone"]}},"example":{"code":"Gone","message":"The resource is gone"}},"InvalidParameter":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["InvalidParameter"]},"message":{"type":"string","enum":["Url parameters not valid"]}},"example":{"code":"InvalidParameter","message":"Url parameters not valid"}},"InvalidDateFormat":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["InvalidDateFormat"]},"message":{"type":"string","enum":["Invalid date format. The correct format is YYYYMMDD"]}},"example":{"code":"InvalidDateFormat","message":"Invalid date format. The correct format is YYYYMMDD "}},"InvalidDatetimeFormat":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["InvalidDatetimeFormat"]},"message":{"type":"string","enum":["Invalid datetime format. The correct format is YYYY-MM-DDTHH:MM:SS"]}},"example":{"code":"InvalidDatetimeFormat","message":"Invalid datetime format. The correct format is YYYY-MM-DDTHH:MM:SS "}},"UnknownStateError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["UnknownStateError"]},"message":{"type":"string","enum":["Unknown validation state"]}},"example":{"code":"UnknownStateError","message":"Unknown validation state"}},"UserAlreadyExistsError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["UserAlreadyExistsError"]},"message":{"type":"string","enum":["The user already exists"]}},"example":{"code":"UserAlreadyExistsError","message":"The user already exists"}},"NotFoundUser":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NotFoundUser"]},"message":{"type":"string","enum":["Resource has not been found"]}},"example":{"code":"NotFoundUser","message":"Resource has not been found"}},"BadRequestError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["BadRequestError"]},"message":{"type":"string","enum":["Your request is not valid and could not be processed"]}},"example":{"code":"BadRequestError","message":"Your request is not valid and could not be processed"}},"NotFoundOTP":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NotFoundOTP"]},"message":{"type":"string","enum":["OTP has not been found for that user"]}},"example":{"code":"NotFoundOTP","message":"OTP has not been found for that user "}},"IncompleteValidation":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["IncompleteValidation"]},"message":{"type":"string","enum":["This action can not be done because the validation is incomplete"]}},"example":{"code":"IncompleteValidation","message":"This action can not be done because the validation is incomplete"}},"OnboardingUnansweredQuestionsError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["incomplete"]},"message":{"type":"string","enum":["Onboarding mandatory questions have not been answered"]}},"example":{"code":"incomplete","message":"Onboarding mandatory questions have not been answered"}},"OnboardingNotAllQuestionsAreApproved":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["incomplete"]},"message":{"type":"string","enum":["All onboarding mandatory questions must be answered yes"]}},"example":{"code":"incomplete","message":"All onboarding mandatory questions must be answered yes"}},"OnboardingNotAllBiometryQuestionsAreApproved":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["incomplete"]},"message":{"type":"string","enum":["All biometry onboarding mandatory questions must be answered yes"]}},"example":{"code":"incomplete","message":"All biometry onboarding mandatory questions must be answered yes"}},"OnboardingNotAllDocumentQuestionsAreApproved":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["incomplete"]},"message":{"type":"string","enum":["All document onboarding mandatory questions must be answered yes"]}},"example":{"code":"incomplete","message":"All document onboarding mandatory questions must be answered yes"}},"InvalidVideoType":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["InvalidVideoType"]},"message":{"type":"string","enum":["Invalid video type"]}},"example":{"code":"InvalidVideoType","message":"Invalid video type"}},"ForbiddenError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["ForbiddenError"]},"message":{"type":"string","enum":["You do not have permission to perform this action"]}},"example":{"code":"ForbiddenError","message":"You do not have permission to perform this action"}},"PermissionDenied":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["PermissionDenied"]},"message":{"type":"string","enum":["You do not have permission to perform this action."]}},"example":{"code":"PermissionDenied","message":"You do not have permission to perform this action."}},"OTPNotAllowed":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NotAllowed"]},"message":{"type":"string","enum":["Only a supervisor can reset a users OTP"]}},"example":{"code":"NotAllowed","message":"Only a supervisor can reset a users OTP"}},"FilterAlreadyExistError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["FilterAlreadyExistError"]},"message":{"type":"string","enum":["The filter with key \"key\" and value \"value\" already exists"]}},"example":{"code":"FilterAlreadyExistError","message":"The filter with key \"key\" and value \"value\" already exists"}},"FilterInvalidError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["FilterInvalidError"]},"message":{"type":"string","enum":["Invalid contextual data filter input"]}}},"CommentResponse":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object"},"properties":{"created_at":{"type":"string","example":"2022-10-03 11:46:43 +0200"},"username":{"type":"string","example":"admin"},"comment":{"type":"string","example":"test comment"}}}},"example":{"data":[{"created_at":"2022-10-03 11:46:43 +0200","username":"admin","comment":"test comment"}]}},"MaxRejectReasonsError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["MaxRejectReasonsError"]},"message":{"type":"string","enum":["Max reject reasons reached"]}},"example":{"code":"MaxRejectReasonsError","message":"Max reject reasons reached"}},"RejectReasonMaxLengthError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["RejectReasonMaxLengthError"]},"message":{"type":"string","enum":["Reason is too long"]}},"example":{"code":"RejectReasonMaxLengthError","message":"Reason is too long"}},"RejectReasonAlreadyExistsError":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["RejectReasonAlreadyExistsError"]},"message":{"type":"string","enum":["Reject reason already exists"]}},"example":{"code":"RejectReasonAlreadyExistsError","message":"Reject reason already exists"}},"NotFoundRejectReason":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NotFoundRejectReason"]},"message":{"type":"string","enum":["Resource has not been found"]}},"example":{"code":"NotFoundRejectReason","message":"Resource has not been found"}},"EventSchema":{"type":"object","properties":{"id":{"type":"string","example":"252d83d0-6917-44ee-a0a1-7f3c9d1ec7c3"},"validationId":{"type":"string","example":"63b707aefa294cc7a0ed207f51bacdec"},"oldStatus":{"type":"string","example":"pending"},"newStatus":{"type":"string","example":"accepted"},"changedBy":{"type":"string","example":"agent_john_doe"},"changedAt":{"type":"string","example":"2023-11-22 13:35:27 +0200"},"notificationSent":{"type":"boolean"}}},"EventsResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/EventSchema"}}},"EventsArrayResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/EventSchema"}}}},"NotFoundEventId":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["NotFoundValidation"]},"message":{"type":"string","enum":["Resource has not been found"]}},"example":{"code":"NotFoundValidation","message":"Resource has not been found"}},"ContextualDataPrioritization":{"type":"object","properties":{"id":{"type":"string","example":"1"},"priority":{"type":"integer","example":0},"key":{"type":"string","example":"test_key"},"value":{"type":"string","example":"test_value"},"users":{"type":"array","items":{"type":"string"},"example":["user1","user2"]}}},"ContextualDataPrioritizationCreate":{"type":"object","required":["priority","key","value"],"properties":{"priority":{"type":"integer","description":"Priority value (0, 1, or 2)","example":1},"key":{"type":"string","description":"Key for the prioritization","example":"test_key"},"value":{"type":"string","description":"Value for the prioritization","example":"test_value"},"users":{"type":"string","description":"Optional list of usernames, separated by commas, to assign this prioritization to","example":"username1, username2"}}},"ContextualDataPrioritizationUpdate":{"type":"object","required":[{"anyOf":[{"required":"priority"},{"required":"key"},{"required":"value"}]}],"properties":{"priority":{"type":"integer","description":"New priority value (0, 1, or 2)","example":2},"key":{"type":"string","description":"New key for the prioritization","example":"updated_key"},"value":{"type":"string","description":"New value for the prioritization","example":"updated_value"}}},"ContextualDataPrioritizationError":{"type":"object","properties":{"detail":{"type":"string","example":"Missing required fields: priority"},"code":{"type":"string","example":"required"}}},"NotFoundPrioritization":{"type":"object","properties":{"detail":{"type":"string","example":"Resource has not been found"},"code":{"type":"string","example":"NotFoundPrioritization"}}}},"responses":{"ValidationError":{"description":"BAD REQUEST","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationError"}}}},"Unauthorized":{"description":"UNAUTHORIZED","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Unauthorized"}}}},"InvalidClient":{"description":"UNAUTHORIZED","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvalidClient"}}}},"NotFoundValidation":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundValidation"}}}},"NotFoundFilter":{"description":"NOT FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NotFoundFilter"}}}},"MethodNotAllowed":{"description":"METHOD NOT ALLOWED","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MethodNotAllowed"}}}},"Gone":{"description":"GONE","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Gone"}}}},"InternalServerError":{"description":"INTERNAL SERVER ERROR","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerError"}}}}}},"security":[{"bearerAuth":[]}]}
