Paylocity API
paylocity · Finance
For general questions and support of the API, contact: [email protected] # Overview Paylocity Web Services API is an externally facing RESTful Internet protocol. The Paylocity API uses HTTP verbs and a RESTful endpoint structure. OAuth 2.0 is used as the API Authorization framework. Request and response payloads are formatted as JSON. Paylocity supports v1 and v2 versions of its API endpoints. v1, while supported, won't be enhanced with additional functionality. For direct link to v
Authentication
Sample Requests
Get All Employees API will return employee data currently available in Web Pay.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/employees/?pagesize=1&pagenumber=1&includetotalcount=true"import requests
params = {
"pagesize": "1",
"pagenumber": "1",
"includetotalcount": "true"
}
response = requests.get(
"https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/employees/",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/employees/');
url.searchParams.set('pagesize', '1');
url.searchParams.set('pagenumber', '1');
url.searchParams.set('includetotalcount', 'true');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/employees/")
q := baseURL.Query()
q.Set("pagesize", "1")
q.Set("pagenumber", "1")
q.Set("includetotalcount", "true")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/employees/")
uri.query = URI.encode_www_form({
"pagesize" => "1",
"pagenumber" => "1",
"includetotalcount" => "true"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/employees/?" . http_build_query([
"pagesize" => "1",
"pagenumber" => "1",
"includetotalcount" => "true"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));The company-specific Open API endpoint allows the client to GET an Open API document for the Paylocity API that is customized with company-specific resource schemas. These customized resource schemas define certain properties as enumerations of pre-defined values that correspond to the company's set
Hover any highlighted part to learn what it does
| Authorization | example |
curl -X GET "https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/openapi" \
-H "Authorization: example"import requests
headers = {
"Authorization": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/openapi",
headers=headers,
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/openapi';
const response = await fetch(url, {
headers: {
'Authorization': 'example'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/openapi"
req, _ := http.NewRequest("GET", targetURL, nil)
req.Header.Set("Authorization", "example")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/openapi")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
req["Authorization"] = "example"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/openapi";
$opts = ["http" => [
"method" => "GET",
"header" => implode("\r\n", [
"Authorization: example"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Get All Company Codes for the selected company and resource
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/codes/{codeResource}"import requests
response = requests.get(
"https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/codes/{codeResource}",
)
print(response.json())const url = 'https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/codes/{codeResource}';
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
)
func main() {
targetURL := "https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/codes/{codeResource}"
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/codes/{codeResource}")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/paylocity.com/2/v2/companies/{companyId}/codes/{codeResource}";
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with Paylocity API?
Paylocity API is a Finance API. Developers commonly use finance APIs for:
- processing payments and handling transactions
- building subscription and billing systems
- automating invoicing and financial reporting
- fraud detection and risk scoring
- connecting to banking and accounting software
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Paylocity API is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?