{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"bc1cf752-b3af-4fb2-a555-a560a07b29fd","name":"Legacy - Able API - PHP","description":"Welcome to the Able Public API.\n\n# Getting Started\n\nIf you haven't already, contact our sales and support team to get set up with our Public API:  support@ableteams.com\n\nAfter a quick discovery call, you'll receive a `client_id` and `client_secret` that you'll use to authenticate against our API.\n\n# Typical Integration Lifecycle\n\n* Contact support@ableteams.com to inquire about Public API access.\n* Our Customer Success team will schedule a short discovery call with you and our API team to discuss project requirements, goals, best practices, and deadlines.\n* We'll set up your API access and get you a `client_id` and `client_secret`.\n* Develop your integration against our testing environment.\n* Once you're ready to go to Production, another short call with our API team to review your process, answer any questions, and get you set up against our Production environment.\n* Deploy to Production\n\n# Getting Help\n\nContact support@ableteams.com to request help with the Public API.  We'll be happy to walk you through common use cases, flows, and guide you with best practices.\n\n\n# Common Use Cases\n\n## Retrieving an Authentication Token\n\nThe Able API uses OAuth Bearer Authentication. Your first call will be to the **Authentication** endpoint with your `client_id` and `client_secret` in order to retrieve an authentication `access_token`.  This `access_token` is provided from our decentralized token provider, Auth0.  You'll use the `access_token` returned from this call for every subsequent call against the Able API.  See the **Authentication** endpoint below for details.\n\nMake a `POST` call to `https://employstreamapi.auth0.com/oauth/token` with the following payload:\n\n\t{\n\t\t\"client_id\":\"{{client_id}}\",\n\t\t\"client_secret\":\"{{client_secret}}\",\n\t\t\"audience\":\"https://api.employstream.com\",\n\t\t\"grant_type\":\"client_credentials\"\n\t}\n\n\nIn response you'll recieve an `access_token`:\n\n\t{\n\t    \"access_token\": \"{{redacted}}\",\n\t    \"expires_in\": 2590000,\n\t    \"token_type\": \"Bearer\"\n\t}\n\nUse the `access_token` in the header of your subsequent calls to the Able API, like this:\n\n    header 'Authorization: Bearer {{access_token}}'\n\nSubsequent calls will be to one of our API endpoints, such as **GET Applicant**, using your `access_token` obtained from the **Authentication** call.  See **Common Use Cases** below for more examples.\n\nPlease note, access tokens are good for 30 days. You should structure your application to store your access token and re-use it until it nears expiration or has expired, and then fetch a new access token.\n\n**Please refrain from fetching a new access token on every API call!**\n\n\n## Creating an Applicant\n\nAs with any of the Able API endpoints, you must first get an authentication `access_token` and set it as Bearer authentication token for all requests against the Able API.\n\nCreating an Applicant in Able requires making a POST call to the applicants endpoint with required fields for creating a new Applicant.\n\nAt a minimum, creating a new Applicant will require:\n* `first_name`\n* `last_name`\n* either `email` or `mobile_phone`\n\nYour request body for your POST call will be in raw JSON and may look like this:\n\n\n\t{\n\t  \"first_name\": \"John\",\n\t  \"last_name\": \"Smith\",\n\t  \"email\": \"john.smith@example.com\"\n\t}\n\n\nYou may provide additional information about the applicant as well at time of creation, or update the entity later on with that information.\n\nFor example, your raw JSON POST request body may look like this:\n\n\n\t{\n\t  \"first_name\": \"John\",\n\t  \"last_name\": \"Smith\",\n\t  \"email\": \"john.smith@example.com\",\n\t  \"mobile_phone\": \"555-555-1234\",\n\t  \"address1\": \"222 West Main St\",\n\t  \"city\": \"Cleveland\",\n\t  \"state\": \"OH\",\n\t  \"zip\": \"44111\"\n\t}\n\nAble will return a JSON structure of an Applicant, along with a unique identifier `applicant_id` that you may use for subsequent calls against your newly created Applicant.\n\n\n## Updating an Applicant\n\nYou can update an Applicant in Able using the PATCH method. You only need to pass in the Applicant's `applicant_id` and any field you wish to update.  \n\nFor example, if we wish to update John Smith's email address from the previous example, our call would look like:\n\n`PATCH /api/pubV1/applicants`\n\n\t{\n\t\t\"applicant_id\": \"1001\",\n\t\t\"email\": \"johns.new.email@example.com\"\n\t}\n\n\nIf the call was successful, the Able API will respond with an updated Applicant structure.\n\n\n\n","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"3824797","team":186118,"collectionId":"bc1cf752-b3af-4fb2-a555-a560a07b29fd","publishedId":"SWECVuuk","public":true,"publicUrl":"https://documenter-api.postman.tech/view/3824797/SWECVuuk","privateUrl":"https://go.postman.co/documentation/3824797-bc1cf752-b3af-4fb2-a555-a560a07b29fd","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","version":"8.10.0","publishDate":"2019-12-17T18:05:43.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[{"name":"Staging (API Docs)","id":"b6766de0-4aac-4327-b047-d116a3184030","owner":"3824797","values":[{"key":"Url","value":"https://staging.ableteams.com","enabled":true}],"published":true}],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/93616e48a8dbd4cce038dfc4a4179496e5c304031c5b9c57493b938acfc51255","favicon":""},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"},{"label":"Staging (API Docs)","value":"3824797-b6766de0-4aac-4327-b047-d116a3184030"}],"canonicalUrl":"https://documenter.gw.postman.com/view/metadata/SWECVuuk"}