{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"8f1a1d6b-81bf-48cc-a19f-f12fa57cc73d","name":"Vetty API","description":"Vetty Restful API allows customers to seamlessly integrate background checks into their workflow and manage the process and get notifications from customer’s system.\n\nThis Programming Guide is designed to help customers get up-and-running with Vetty's background screening services, both by providing the necessary context to understand the background screening industry and its regulations, and by giving technical guidance on how to work with the Vetty API.\n\n## Getting Started\n\n##### Step 1: Get access token\n\n- **Get API keys:** Get your keys from API section of your Client Dashboard. After you login to Client Dashboard, navigate to _Settings_ -> _API Management_ -> _API Management System_, and add a new API key. Each API key is associated with an IP range, requests should be made from the IP range defined for the API key.\n    \n- **Bearer Token:** You can use the token from the previous step as Bearer Token when making any of the API calls. Pass the token as **Authorization** header with value **Bearer** .\n    \n\n##### Step 2: Create an Applicant\n\n`_POST /applicants_`\n\nMinimum fields for creating an application are (first name, last name, email). Further fields will likely be needed to initiate a screening on the applicant.\n\n##### Step 3: Upload required documents\n\n`_POST /applicants/{applicant_id}/documents_`\n\nUpload required documents for screening.\n\n##### Step 4: Create a Screening\n\n`POST /screenings`\n\nYou will need a applicantId and packageId in order to create a screening. You can get the packageId by logging into Client Dashboard, after login, click on `Packages` in the left navigation and click on `Get Package ID` for the package you want to select for screening. You have 2 workflow options for creating a screening.\n\n- Send the candidate an email invite.\n    \n- If all required candidate fields already exist, simply initiate the screening.\n    \n\n##### Step 5: Get Screening status\n\n`GET /screenings/{screening_id}`\n\nGet the status of the screening by calling GET /screening/{screening_id} endpoint.\n\n## Screening\n\nIn order to screen an applicant, we need to collect data like, date of birth, ssn, etc... Vetty supports two forms of data collection.\n\n- **Client Data Collection Flow:** In this flow, client collects all the required data to run the screenings and submits them as part of the applicant creation.\n    \n    - { \"first_name\": \"John\", \"last_name\": \"Doe\", \"middle_name\": \"\", \"middle_name_exists\": false, \"email\": \"[john.doe@vetty.co](https://mailto:john.doe@vetty.co)\", \"dob\": \"1993-01-05\", \"ssn\": \"1231111234\", \"phone\": \"(441) 111-1111\", \"address\": { \"street\": \"123 Main St\", \"city\": \"New York\", \"state\": \"NY\", \"county\": \"New York\", \"zipcode\": \"10011\", \"country\": \"USA\" }, \"driver_license\": { \"number\": \"111-222-3333\", \"state\": \"NY\" }}\n        \n    - { \"applicant_id\": \"93b5e486-32ab-4f32-8bbd-c713c44770a1\", \"package_id\": \"3654242b-16ac-42ee-8e00-bc27d49d47d1\"}\n        \n    - `GET /screenings/{screening_id}`  \n        Get the status of screening\n        \n- **Vetty Data Collection Flow:** In this flow, client creates an applicant with basic information and initiates email invite.\n    \n    - { \"first_name\": \"John\", \"last_name\": \"Doe\", \"email\": \"[john.doe@vetty.co](https://mailto:john.doe@vetty.co)\",}\n        \n    - { \"applicant_id\": \"93b5e486-32ab-4f32-8bbd-c713c44770a1\", \"package_id\": \"3654242b-16ac-42ee-8e00-bc27d49d47d1\", \"invite\": { \"method\": \"email\" }}\n        \n    - { \"first_name\": \"John\", \"last_name\": \"Doe\", \"middle_name\": \"\", \"middle_name_exists\": false, \"email\": \"[john.doe@vetty.co](https://mailto:john.doe@vetty.co)\", \"dob\": \"1993-01-05\", \"ssn\": \"1231111234\", \"phone\": \"(441) 111-1111\", \"address\": { \"street\": \"123 Main St\", \"city\": \"New York\", \"state\": \"NY\", \"county\": \"New York\", \"zipcode\": \"10011\", \"country\": \"USA\" }, \"driver_license\": { \"number\": \"111-222-3333\", \"state\": \"NY\" }}\n        \n    - `GET /screenings/{screening_id}`  \n        Get the status of screening\n        \n\n## Webhook:\n\n### Steps to add webhook:\n\n- Login to Vetty client portal\n    \n- Navigate to Setting tab -> Go to API Management -> Go to WebHook\n    \n- Click on the Add WebHook button\n    \n- Add URL and secret key and then click on Add to save the data.\n    \n    - URL begins with HTTPS secure protocol\n        \n    - Secret key count be any string value\n        \n\n### Webhook call and process:\n\nWhen the event occurs, the URL specified in the webhook will be called as a `POST` with the payload from the event, e.g.,\n\n```\n{\"applicant_id\": \"5fd37fac6676c40007728c66\", \"status\": \"archived\"}\n\n ```\n\nIn addition to the payload, `vetty-sign` header is sent as part of the request, this header can be used to authenticate the request is generated by Vetty.\n\nThe value in the header is generated as below:\n\n- Encode the secret key and payload data using UTF-8 and convert to bytes.\n    \n- Create an SHA-256 Hash of the above data\n    \n- Convert the above data into Hexadecimal format\n    \n\n## API Rate Limiter\n\nVetty API ensures fair usage of the API among all the users by only allowing 20000 requests per day which is 800 requests per hour.\n\n## Environments\n\n| Environment | Host | Purpose |\n| --- | --- | --- |\n| UAT (Sandbox) | `https://uatapi.vetty.co` | Testing and development |\n| Production | `https://api.vetty.co` | Live screenings |\n\nPlease use the UAT environment to test your integration before going live. Once your integration is working as expected, update your host URL to production.","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"925449","collectionId":"8f1a1d6b-81bf-48cc-a19f-f12fa57cc73d","publishedId":"T17M8S81","public":true,"publicUrl":"https://apidocs.vetty.co","privateUrl":"https://go.postman.co/documentation/925449-8f1a1d6b-81bf-48cc-a19f-f12fa57cc73d","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.0","publishDate":"2020-12-29T15:23:17.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[{"name":"Production","id":"d94ef050-4457-4744-b795-2eb23ee97bac","owner":"925449","values":[{"key":"host","value":"https://api.vetty.co","enabled":true},{"key":"access_token","value":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2NDA4MjEyMTgsImlhdCI6MTYyNTA5NjQxOCwibmJmIjoxNjI1MDk2NDE4LCJqdGkiOiJjZWQ3ZmQ4NS04NDdjLTQwMTAtYjI0Ny04YjAzMGYxYzViMjgiLCJpZGVudGl0eSI6IntcIiRvaWRcIjogXCI2MGRiYTU4ZWVmMmI2ZjAwMDc5MjE5ZDFcIn0iLCJmcmVzaCI6ZmFsc2UsInR5cGUiOiJhY2Nlc3MiLCJ1c2VyX2NsYWltcyI6eyJ1c2VyX2dyb3VwcyI6WyI1OWRiNGM2Y2IzYTg5NGZlMmVhOGVjMzEiXSwicGVybWlzc2lvbnMiOltdLCJpcF9hZGRyZXNzIjoiMC4wLjAuMCJ9fQ.ieBRaFCYgHsHqx7utYDe4rgBbV9eQDpOKZzjlpN3aOU","enabled":true},{"key":"user_email","value":"","enabled":true,"type":"any"}],"published":true}],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/768118b36f06c94b0306958b980558e6915839447e859fe16906e29d683976f0","favicon":"https://vetty.co/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"},{"label":"Production","value":"925449-d94ef050-4457-4744-b795-2eb23ee97bac"}],"canonicalUrl":"https://apidocs.vetty.co/view/metadata/T17M8S81"}