NAV Navigation
Shell HTTP JavaScript Ruby Python PHP Java Go

WebHR API v2.0.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

WebHR offers RESTful Application Programming Interface (API), based on semantically meaningful HTTPS requests to access or modify a resource within WebHR. The APIs can be used to either enter data into WebHR or extract data out of WebHR depending upon the nature of API and the need by an external application.

Base URLs:

Email: WebHR Support License: MIT

Authentication

Scope Scope Description
Full_Access Full access to all resources

Organization

CompaniesList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Organization&submodule=Companies?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Organization&submodule=Companies?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Organization&submodule=Companies?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Organization&submodule=Companies',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Organization&submodule=Companies', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Organization&submodule=Companies', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Organization&submodule=Companies?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Organization&submodule=Companies", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Organization&submodule=Companies

Lists all Companies in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Company": "string",
  "LegalName": "string",
  "ContactNumber": "string",
  "FaxNumber": "string",
  "EmailAddress": "string",
  "Website": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Companies

DivisionsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Organization&submodule=Divisions?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Organization&submodule=Divisions?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Organization&submodule=Divisions?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Organization&submodule=Divisions',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Organization&submodule=Divisions', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Organization&submodule=Divisions', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Organization&submodule=Divisions?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Organization&submodule=Divisions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Organization&submodule=Divisions

Lists all Divisions in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Company": "string",
  "DivisionType": "string",
  "DivisionName": "string",
  "DivisionHead": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Divisions

DepartmentsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Organization&submodule=Departments?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Organization&submodule=Departments?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Organization&submodule=Departments?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Organization&submodule=Departments',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Organization&submodule=Departments', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Organization&submodule=Departments', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Organization&submodule=Departments?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Organization&submodule=Departments", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Organization&submodule=Departments

Lists all Departments in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Company": "string",
  "Division": "string",
  "Station": "string",
  "DepartmentName": "string",
  "DepartmentHead": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Departments

Employees

EmployeesList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Employees?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Employees?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Employees?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Employees',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Employees', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Employees', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Employees?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Employees", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Employees

Lists all Employees in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query EmployeesParams false JSON Array of parameters to get filtered data

Example responses

200 Response

{
  "EmployeeId": "string",
  "UserName": "string",
  "AccessCode": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "EmailAddress": "string",
  "Designation": "string",
  "CompanyName": "string",
  "DivisionName": "string",
  "CompanyEmailAddress": "string",
  "DepartmentName": "string",
  "StationName": "string",
  "EmployeeCategory": "string",
  "EmployeeType": "string",
  "JoiningDate": "string",
  "DateOfBirth": "string",
  "PresentContactNumber": "string",
  "MobileNumber": "string",
  "OfficePhoneNumber": "string",
  "PositionCode": "string",
  "ReportsTo": "string",
  "ReportsToEmailAddress": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Employee

AddEmployee

Code samples

# You can also use wget
curl -X POST https://api.webhr.co/api/2/api?module=Employees&submodule=Employees?request=&data=CompanyName,string,DivisionName,string,StationName,string,DepartmentName,string,Designation,string,Grade,string,WorkShift,string,EmployeeCategory,string,EmployeeType,string,UserName,string,FirstName,string,LastName,string,Password,string,AllowLogin,string,EmailAddress,string,ShowInOrganogram,string,AccessCode,string,ReportsTo,string,Supervisor,string,Salutation,string,Nickname,string,DateofBirth,string,Gender,string,BloodGroup,string,Nationality,string,Religion,string,MaritalStatus,string,JoiningDate,string,GovernmentId,string,EmployeeTaxNumber,string,PresentAddress,string,PresentCity,string,PresentState,string,PresentZipCode,string,PresentCountry,string,PresentContactNumber,string,PermanentAddress,string,PermanentCity,string,PermanentState,string,PermanentZipCode,string,PermanentCountry,string,PermanentContactNumber,string,HomePhoneNumber,string,OfficePhoneNumber,string,MobileNumber,string,PassportNumber,string,PassportExpiration,string \
  -H 'Accept: application/json'

POST https://api.webhr.co/api/2/api?module=Employees&submodule=Employees?request=&data=CompanyName,string,DivisionName,string,StationName,string,DepartmentName,string,Designation,string,Grade,string,WorkShift,string,EmployeeCategory,string,EmployeeType,string,UserName,string,FirstName,string,LastName,string,Password,string,AllowLogin,string,EmailAddress,string,ShowInOrganogram,string,AccessCode,string,ReportsTo,string,Supervisor,string,Salutation,string,Nickname,string,DateofBirth,string,Gender,string,BloodGroup,string,Nationality,string,Religion,string,MaritalStatus,string,JoiningDate,string,GovernmentId,string,EmployeeTaxNumber,string,PresentAddress,string,PresentCity,string,PresentState,string,PresentZipCode,string,PresentCountry,string,PresentContactNumber,string,PermanentAddress,string,PermanentCity,string,PermanentState,string,PermanentZipCode,string,PermanentCountry,string,PermanentContactNumber,string,HomePhoneNumber,string,OfficePhoneNumber,string,MobileNumber,string,PassportNumber,string,PassportExpiration,string HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Employees?request=&data=CompanyName,string,DivisionName,string,StationName,string,DepartmentName,string,Designation,string,Grade,string,WorkShift,string,EmployeeCategory,string,EmployeeType,string,UserName,string,FirstName,string,LastName,string,Password,string,AllowLogin,string,EmailAddress,string,ShowInOrganogram,string,AccessCode,string,ReportsTo,string,Supervisor,string,Salutation,string,Nickname,string,DateofBirth,string,Gender,string,BloodGroup,string,Nationality,string,Religion,string,MaritalStatus,string,JoiningDate,string,GovernmentId,string,EmployeeTaxNumber,string,PresentAddress,string,PresentCity,string,PresentState,string,PresentZipCode,string,PresentCountry,string,PresentContactNumber,string,PermanentAddress,string,PermanentCity,string,PermanentState,string,PermanentZipCode,string,PermanentCountry,string,PermanentContactNumber,string,HomePhoneNumber,string,OfficePhoneNumber,string,MobileNumber,string,PassportNumber,string,PassportExpiration,string',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.post 'https://api.webhr.co/api/2/api?module=Employees&submodule=Employees',
  params: {
  'request' => 'string(varchar255)',
'data' => '[AddEmployees](#schemaaddemployees)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.post('https://api.webhr.co/api/2/api?module=Employees&submodule=Employees', params={
  'request': '',  'data': {
  "CompanyName": "string",
  "DivisionName": "string",
  "StationName": "string",
  "DepartmentName": "string",
  "Designation": "string",
  "Grade": "string",
  "WorkShift": "string",
  "EmployeeCategory": "string",
  "EmployeeType": "string",
  "UserName": "string",
  "FirstName": "string",
  "LastName": "string",
  "Password": "string",
  "AllowLogin": "string",
  "EmailAddress": "string",
  "ShowInOrganogram": "string",
  "AccessCode": "string",
  "ReportsTo": "string",
  "Supervisor": "string",
  "Salutation": "string",
  "Nickname": "string",
  "DateofBirth": "string",
  "Gender": "string",
  "BloodGroup": "string",
  "Nationality": "string",
  "Religion": "string",
  "MaritalStatus": "string",
  "JoiningDate": "string",
  "GovernmentId": "string",
  "EmployeeTaxNumber": "string",
  "PresentAddress": "string",
  "PresentCity": "string",
  "PresentState": "string",
  "PresentZipCode": "string",
  "PresentCountry": "string",
  "PresentContactNumber": "string",
  "PermanentAddress": "string",
  "PermanentCity": "string",
  "PermanentState": "string",
  "PermanentZipCode": "string",
  "PermanentCountry": "string",
  "PermanentContactNumber": "string",
  "HomePhoneNumber": "string",
  "OfficePhoneNumber": "string",
  "MobileNumber": "string",
  "PassportNumber": "string",
  "PassportExpiration": "string"
}
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://api.webhr.co/api/2/api?module=Employees&submodule=Employees', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Employees?request=&data=CompanyName,string,DivisionName,string,StationName,string,DepartmentName,string,Designation,string,Grade,string,WorkShift,string,EmployeeCategory,string,EmployeeType,string,UserName,string,FirstName,string,LastName,string,Password,string,AllowLogin,string,EmailAddress,string,ShowInOrganogram,string,AccessCode,string,ReportsTo,string,Supervisor,string,Salutation,string,Nickname,string,DateofBirth,string,Gender,string,BloodGroup,string,Nationality,string,Religion,string,MaritalStatus,string,JoiningDate,string,GovernmentId,string,EmployeeTaxNumber,string,PresentAddress,string,PresentCity,string,PresentState,string,PresentZipCode,string,PresentCountry,string,PresentContactNumber,string,PermanentAddress,string,PermanentCity,string,PermanentState,string,PermanentZipCode,string,PermanentCountry,string,PermanentContactNumber,string,HomePhoneNumber,string,OfficePhoneNumber,string,MobileNumber,string,PassportNumber,string,PassportExpiration,string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.webhr.co/api/2/api?module=Employees&submodule=Employees", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST ?module=Employees&submodule=Employees

Adds Employees in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "Add" is required in request to add employees
data query AddEmployees true JSON Array

Detailed descriptions

request: "Add" is required in request to add employees "Add" is required in request parameter to add employees

data: JSON Array "JSON Array" of employees

Example responses

Success Response

"string"

Responses

Status Meaning Description Schema
Success Unknown Message -> Employee has been addedd Successfully... string
Fail Unknown Message -> Something went wrong, Please contact your administrator... string

TransfersList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Transfers?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Transfers?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Transfers?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Transfers',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Transfers', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Transfers', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Transfers?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Transfers", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Transfers

Lists all Trasnfers in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query TransferParams false JSON Array of parameters to get filtered data

Example responses

200 Response

{
  "Username": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "TransferDate": null,
  "TransferToStation": "string",
  "TransferToDepartment": "string",
  "OpenPositionCode": null
}

Responses

Status Meaning Description Schema
200 OK OK Transfers

ExitList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Exit?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Exit?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Exit?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Exit',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Exit', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Exit', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Exit?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Exit", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Exit

Lists all Employees Exits in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query ExitParams false JSON Array of parameters to get filtered data

Example responses

200 Response

{
  "Username": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "ExitDate": null,
  "CompanyName": "string",
  "StationName": "string",
  "DivisionName": "string",
  "ExitType": "string",
  "ExitInterviewConducted": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Exit

ResignationsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Resignations?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Resignations?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Resignations?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Resignations',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Resignations', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Resignations', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Resignations?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Resignations", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Resignations

Lists all Resignations in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Username": "string",
  "Empoyee": "string",
  "ResignationDate": null,
  "NoticeDate": null
}

Responses

Status Meaning Description Schema
200 OK OK Resignations

TerminationsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Terminations?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Terminations?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Terminations?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Terminations',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Terminations', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Terminations', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Terminations?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Terminations", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Terminations

Lists all Terminations in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Username": "string",
  "Empoyee": "string",
  "TerminationType": "string",
  "TerminationDate": null,
  "NoticeDate": null
}

Responses

Status Meaning Description Schema
200 OK OK Terminations

AchievementsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Achievements?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Achievements?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Achievements?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Achievements',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Achievements', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Achievements', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Achievements?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Achievements", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Achievements

Lists all Achievements in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Username": "string",
  "Empoyee": "string",
  "AchievementTitle": "string",
  "AchievementDate": null
}

Responses

Status Meaning Description Schema
200 OK OK Achievements

ComplaintsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Complaints?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Complaints?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Complaints?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Complaints',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Complaints', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Complaints', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Complaints?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Complaints", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Complaints

Lists all Complaints in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Username": "string",
  "Empoyee": "string",
  "Title": "string",
  "ComplaintDate": null,
  "ComplaintAgainst": null
}

Responses

Status Meaning Description Schema
200 OK OK Complaints

WarningsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Warnings?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Warnings?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Warnings?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Warnings',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Warnings', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Warnings', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Warnings?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Warnings", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Warnings

Lists all Warnings in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "WarningByEmployee": "string",
  "WarningToEmployee": "string",
  "WarningDate": null,
  "TypeOfWarning": "string",
  "Subject": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Warnings

MemosList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Memos?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Memos?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Memos?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Memos',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Memos', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Memos', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Memos?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Memos", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Memos

Lists all Memos in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "UserName": "string",
  "Employee": "string",
  "MemoDate": null,
  "Subject": "string",
  "MemoTo": null
}

Responses

Status Meaning Description Schema
200 OK OK Memos

SuggestionsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Employees&submodule=Suggestions?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Employees&submodule=Suggestions?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Employees&submodule=Suggestions?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Employees&submodule=Suggestions',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Employees&submodule=Suggestions', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Employees&submodule=Suggestions', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Employees&submodule=Suggestions?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Employees&submodule=Suggestions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Employees&submodule=Suggestions

Lists all Suggestions in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "UserName": "string",
  "Employee": "string",
  "Title": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Suggestions

Timesheet

AttendanceList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Timesheet&submodule=Attendance

Lists all Attendances in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query AttendanceParams false JSON Array of parameters to get filtered data

Example responses

200 Response

{
  "Username": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "AttendanceDate": null,
  "SignInTime": null,
  "SignOutTime": null,
  "LunchBreakOutTime": null,
  "LunchBreakInTime": null,
  "AdditionalBreakOutTime": null,
  "AdditionalBreakInTime": null,
  "ExtraBreakOutTime": null,
  "ExtraBreakInTime": null,
  "BreakOutTime": null,
  "TotalTime": null,
  "ApprovalStatus": "string",
  "Approver": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Attendance

AddAttendance

Code samples

# You can also use wget
curl -X POST https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance?request=¶ms=AccessCode,string,Type,string,WorkShift,string \
  -H 'Accept: application/json'

POST https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance?request=¶ms=AccessCode,string,Type,string,WorkShift,string HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance?request=¶ms=AccessCode,string,Type,string,WorkShift,string',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.post 'https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance',
  params: {
  'request' => 'string(varchar255)',
'params' => '[AddAttendance](#schemaaddattendance)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.post('https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance', params={
  'request': '',  'params': {
  "AccessCode": "string",
  "Date": null,
  "Time": null,
  "Type": "string",
  "WorkShift": "string"
}
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance?request=¶ms=AccessCode,string,Type,string,WorkShift,string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.webhr.co/api/2/api?module=Timesheet&submodule=Attendance", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST ?module=Timesheet&submodule=Attendance

Add Leave in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "Add" is required in request parameter to add Attendance
params query AddAttendance true "JSON Array" of Attendance Data.

Detailed descriptions

params: "JSON Array" of Attendance Data. Example:params=[{"Data":[{"AccessCode":"8","Date":"2021-04-02","Time":"09:03:00","Type":"Sign In","WorkShift":"Regular WorkShift"}]}]

Example responses

Success Response

"string"

Responses

Status Meaning Description Schema
Success Unknown Message -> Records added in queue successfully. Data will be available in your WebHR account shortly. string
Fail Unknown Message -> Something went wrong, Please contact your administrator... string

LeavesList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Timesheet&submodule=Leaves

Lists all Leaves in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query LeavesParams false JSON Array of parameters to get filtered data

Example responses

200 Response

{
  "Username": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "Reason": "string",
  "ReferenceNumber": "string",
  "LeaveType": "string",
  "LunchBreakOutTime": null,
  "LeaveFrom": null,
  "LeaveTo": null,
  "LeaveHours": "string",
  "ApprovalStatus": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Leaves

AddLeave

Code samples

# You can also use wget
curl -X POST https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves?request=¶ms=UserName,string,LeaveType,string,LeaveDuration,string \
  -H 'Accept: application/json'

POST https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves?request=¶ms=UserName,string,LeaveType,string,LeaveDuration,string HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves?request=¶ms=UserName,string,LeaveType,string,LeaveDuration,string',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.post 'https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves',
  params: {
  'request' => 'string(varchar255)',
'params' => '[AddLeave](#schemaaddleave)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.post('https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves', params={
  'request': '',  'params': {
  "UserName": "string",
  "LeaveFrom": null,
  "LeaveTo": null,
  "LeaveType": "string",
  "LeaveDuration": "string"
}
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves?request=¶ms=UserName,string,LeaveType,string,LeaveDuration,string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.webhr.co/api/2/api?module=Timesheet&submodule=Leaves", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST ?module=Timesheet&submodule=Leaves

Add Leave in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "Add" is required in request to add Leave
params query AddLeave true "JSON Array" of Leave Data.

Detailed descriptions

request: "Add" is required in request to add Leave "Add" is required in request parameter to add Leave

params: "JSON Array" of Leave Data. Example:params=[{"UserName":"test123","LeaveFrom":"2021-04-02","LeaveTo":"2021-04-04","LeaveType":"Annual Leave","LeaveDuration":"Full Day Leave"}]

Example responses

Success Response

"string"

Responses

Status Meaning Description Schema
Success Unknown Message -> Data has been added successfully. string
Fail Unknown Message -> Something went wrong, Please contact your administrator... string

LeavesQuotaList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Timesheet&submodule=LeavesQuota?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Timesheet&submodule=LeavesQuota?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Timesheet&submodule=LeavesQuota?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Timesheet&submodule=LeavesQuota',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Timesheet&submodule=LeavesQuota', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Timesheet&submodule=LeavesQuota', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Timesheet&submodule=LeavesQuota?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Timesheet&submodule=LeavesQuota", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Timesheet&submodule=LeavesQuota

Lists Leaves Quota in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query LeavesQuotaParams false JSON Array of parameters to get filtered data

Detailed descriptions

params: JSON Array of parameters to get filtered data Example:params=[{"Year":"2021", "UserName": "jack", "LeaveType" : "Annual Leave"}]

Example responses

200 Response

{
  "Year": "string",
  "Employee": "string",
  "UserName": "string",
  "AccessCode": "string",
  "EmployeeType": "string",
  "EmployeeCategory": null,
  "LeaveType": null,
  "Entitled": null,
  "Accrued": "string",
  "CarriedOver": "string",
  "Additional": null,
  "Adjusted": null,
  "Taken": null,
  "Pending": "string",
  "Balance": "string"
}

Responses

Status Meaning Description Schema
200 OK OK LeavesQuota

Recruitment

JobPostsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobPosts?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobPosts?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobPosts?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobPosts',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobPosts', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobPosts', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobPosts?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobPosts", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Recruitment&submodule=JobPosts

Lists all Job Posts in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query JobPostParams false JSON Array of parameters to get filtered data

Detailed descriptions

params: JSON Array of parameters to get filtered data Example:params=[{"JobPostStatus":"Open/Closed"}]

Example responses

200 Response

{
  "JobTitle": "string",
  "ReferenceNumber": null,
  "JobType": "string",
  "NumberOfPositions": 0,
  "CandidateAgeRangeStart": 0,
  "CandidateAgeRangeEnd": 0,
  "CandidateExperience": "string",
  "CandidateQualification": "string",
  "Description": "string",
  "SalaryStartRange": "string",
  "SalaryEndRange": "string",
  "JobPostCompany": "string"
}

Responses

Status Meaning Description Schema
200 OK OK JobPosts

JobRequestsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobRequests?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobRequests?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobRequests?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobRequests',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobRequests', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobRequests', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobRequests?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobRequests", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Recruitment&submodule=JobRequests

Lists all Job Requests in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "JobTitle": "string",
  "ReferenceNumber": 0,
  "JobType": "string",
  "NumberOfPositions": 0,
  "CandidateAgeRangeStart": 0,
  "CandidateAgeRangeEnd": 0,
  "CandidateExperience": "string",
  "CandidateQualification": "string",
  "Description": "string",
  "SalaryStartRange": "string",
  "SalaryEndRange": "string"
}

Responses

Status Meaning Description Schema
200 OK OK JobRequests

CandidatesList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Recruitment&submodule=JobCandidates

Lists all Candidates in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query JobCandidatesParams false JSON Array of parameters to get filtered data

Detailed descriptions

params: JSON Array of parameters to get filtered data Example:params=[{"AppliedOn_StartDate":"2021-04-01","AppliedOn_EndDate":"2021-06-02", "AllowCustomFields":1}] Candidates records returned in the list have applied from jobs portal.

Example responses

200 Response

{
  "FirstName": "string",
  "LastName": 0,
  "DateOfBirth": "string",
  "Gender": 0,
  "Nationality": 0,
  "Address": 0,
  "City": "string",
  "EmailAddress": "string",
  "PhoneNumber": "string",
  "MobileNumber": "string",
  "JobField": "string",
  "AppliedOn": null,
  "Qualifications": null,
  "Experience": null,
  "Membership": null,
  "Trainings": null,
  "Languages": null,
  "Skills": null,
  "References": null,
  "CustomFields": null
}

Responses

Status Meaning Description Schema
200 OK OK JobCandidatesList

AddCandidate

Code samples

# You can also use wget
curl -X POST https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates?request=&data=JobField,string,FirstName,string,LastName,string,DateOfBirth,string,Gender,string,Address,string,City,string,ZipCode,string,Country,string,EmailAddress,string,PhoneNumber,string,ResourceSource,string,ResourceSourceDetails,string \
  -H 'Accept: application/json'

POST https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates?request=&data=JobField,string,FirstName,string,LastName,string,DateOfBirth,string,Gender,string,Address,string,City,string,ZipCode,string,Country,string,EmailAddress,string,PhoneNumber,string,ResourceSource,string,ResourceSourceDetails,string HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates?request=&data=JobField,string,FirstName,string,LastName,string,DateOfBirth,string,Gender,string,Address,string,City,string,ZipCode,string,Country,string,EmailAddress,string,PhoneNumber,string,ResourceSource,string,ResourceSourceDetails,string',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.post 'https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates',
  params: {
  'request' => 'string(varchar255)',
'data' => '[AddCandidate](#schemaaddcandidate)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.post('https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates', params={
  'request': '',  'data': {
  "JobField": "string",
  "FirstName": "string",
  "LastName": "string",
  "DateOfBirth": "string",
  "Gender": "string",
  "Address": "string",
  "City": "string",
  "ZipCode": "string",
  "Country": "string",
  "EmailAddress": "string",
  "PhoneNumber": "string",
  "Interests": null,
  "Achievements": null,
  "ResourceSource": "string",
  "ResourceSourceDetails": "string"
}
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates?request=&data=JobField,string,FirstName,string,LastName,string,DateOfBirth,string,Gender,string,Address,string,City,string,ZipCode,string,Country,string,EmailAddress,string,PhoneNumber,string,ResourceSource,string,ResourceSourceDetails,string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "https://api.webhr.co/api/2/api?module=Recruitment&submodule=JobCandidates", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST ?module=Recruitment&submodule=JobCandidates

Add Candidates in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "Add" is required in request to add employees
data query AddCandidate true JSON Array

Detailed descriptions

request: "Add" is required in request to add employees "Add" is required in request parameter to add employees

data: JSON Array "JSON Array" of candidates

Example responses

Success Response

"string"

Responses

Status Meaning Description Schema
Success Unknown Message -> Candidate has been addedd Successfully... string
Fail Unknown Message -> Something went wrong, Please contact your administrator... string

ScreeningInterviewsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Recruitment&submodule=Screening_Interviews?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Recruitment&submodule=Screening_Interviews?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Recruitment&submodule=Screening_Interviews?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Recruitment&submodule=Screening_Interviews',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Recruitment&submodule=Screening_Interviews', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Recruitment&submodule=Screening_Interviews', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Recruitment&submodule=Screening_Interviews?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Recruitment&submodule=Screening_Interviews", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Recruitment&submodule=Screening_Interviews

Lists all Screening Interviews in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "InterviewType": "string",
  "InterviewDate": null,
  "InterviewTime": null,
  "PlaceOfInterview": "string",
  "CandidateName": "string",
  "CandidateEmailAddress": "string",
  "CandidateReferenceNumber": 0
}

Responses

Status Meaning Description Schema
200 OK OK ScreeningInterviews

Payroll

LoansList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Loans?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Loans?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Loans?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Loans',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Loans', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Loans', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Loans?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Loans", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Loans

Lists all Loans in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "LoanAmount": "string",
  "RemainingAmount": "string",
  "MonthlyRepaymentAmount": "string",
  "RepaymentsType": "string",
  "RepaymentsMonths": "string",
  "LoanDate": null,
  "RepaymentStartDate": null,
  "Interest": "string",
  "InterestType": "string",
  "TotalLoanPaid": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Loans

PayslipsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Payslips?request=¶ms=PayslipStartMonth,string,PayslipStartYear,string,PayslipEndMonth,string,PayslipEndYear,string,Company,string,Division,string,Station,string,DepartmentName,string,ShowLeaveSalary,0,ShowEndOfServiceBenefitAllowance,0,ShowLeaveSalaryPaid,0,ShowEndOfServicePaid,0,LeaveType,string \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Payslips?request=¶ms=PayslipStartMonth,string,PayslipStartYear,string,PayslipEndMonth,string,PayslipEndYear,string,Company,string,Division,string,Station,string,DepartmentName,string,ShowLeaveSalary,0,ShowEndOfServiceBenefitAllowance,0,ShowLeaveSalaryPaid,0,ShowEndOfServicePaid,0,LeaveType,string HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Payslips?request=¶ms=PayslipStartMonth,string,PayslipStartYear,string,PayslipEndMonth,string,PayslipEndYear,string,Company,string,Division,string,Station,string,DepartmentName,string,ShowLeaveSalary,0,ShowEndOfServiceBenefitAllowance,0,ShowLeaveSalaryPaid,0,ShowEndOfServicePaid,0,LeaveType,string',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Payslips',
  params: {
  'request' => 'string(varchar255)',
'params' => '[PayslipParams](#schemapayslipparams)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Payslips', params={
  'request': '',  'params': {
  "PayslipStartMonth": "string",
  "PayslipStartYear": "string",
  "PayslipEndMonth": "string",
  "PayslipEndYear": "string",
  "Company": "string",
  "Division": "string",
  "Station": "string",
  "DepartmentName": "string",
  "ShowLeaveSalary": 0,
  "ShowEndOfServiceBenefitAllowance": 0,
  "ShowLeaveSalaryPaid": 0,
  "ShowEndOfServicePaid": 0,
  "LeaveType": "string"
}
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Payslips', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Payslips?request=¶ms=PayslipStartMonth,string,PayslipStartYear,string,PayslipEndMonth,string,PayslipEndYear,string,Company,string,Division,string,Station,string,DepartmentName,string,ShowLeaveSalary,0,ShowEndOfServiceBenefitAllowance,0,ShowLeaveSalaryPaid,0,ShowEndOfServicePaid,0,LeaveType,string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Payslips", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Payslips

Lists all Payslips in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query PayslipParams true JSON Array of parameters to get filtered data

Detailed descriptions

params: JSON Array of parameters to get filtered data Example:params={"ShowLeaveSalary":"1","ShowEndOfServiceBenefitAllowance":"1","ShowLeaveSalaryPaid":"0","ShowEndOfServicePaid":"0","LeaveType":"Annual Leaves (Leave Type is mandatory if leaves salary is required.)"}

Example responses

200 Response

{
  "CompanyName": "string",
  "StationName": "string",
  "DivisionName": "string",
  "UserName": "string",
  "AccessCode": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "Nationality": "string",
  "PositionCode": "string",
  "TotalSalary": "string",
  "PayslipItems": null,
  "AdditionalItems": null,
  "SalaryDate": null,
  "SalaryPeriod_StartDate": null,
  "SalaryPeriod_EndDate": null
}

Responses

Status Meaning Description Schema
200 OK OK Payslips

AdvanceSalaryList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=AdvanceSalary?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=AdvanceSalary?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=AdvanceSalary?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=AdvanceSalary',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=AdvanceSalary', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=AdvanceSalary', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=AdvanceSalary?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=AdvanceSalary", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=AdvanceSalary

Lists all Advance Salaries in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query AdvanceSalaryParams false JSON Array of parameters to get filtered data

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "AdvanceSalaryDate": null
}

Responses

Status Meaning Description Schema
200 OK OK AdvanceSalary

EarningsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Earnings?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Earnings?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Earnings?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Earnings',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Earnings', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Earnings', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Earnings?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Earnings", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Earnings

Lists all Earnings in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "EarningDate": null,
  "EarningType": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Earnings

BonusesList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Bonuses?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Bonuses?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Bonuses?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Bonuses',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Bonuses', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Bonuses', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Bonuses?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Bonuses", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Bonuses

Lists all Bonuses in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "BonusDate": null
}

Responses

Status Meaning Description Schema
200 OK OK Bonuses

CommissionsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Commissions?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Commissions?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Commissions?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Commissions',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Commissions', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Commissions', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Commissions?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Commissions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Commissions

Lists all Commissions in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "CommissionDate": null
}

Responses

Status Meaning Description Schema
200 OK OK Commissions

DeductionsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Deductions?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Deductions?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Deductions?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Deductions',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Deductions', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Deductions', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Deductions?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Deductions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Deductions

Lists all Deductions in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "DeductionDate": null,
  "DeductionType": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Deductions

RecurringDeductionsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringDeductions?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringDeductions?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringDeductions?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringDeductions',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringDeductions', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringDeductions', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringDeductions?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringDeductions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=RecurringDeductions

Lists all RecurringDeductions in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "Title": "string",
  "Amount": "string",
  "RecurringDeductionEndDate": null,
  "DeductionType": "string"
}

Responses

Status Meaning Description Schema
200 OK OK RecurringDeductions

AdjustmentsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Adjustments?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Adjustments?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Adjustments?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Adjustments',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Adjustments', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Adjustments', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Adjustments?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Adjustments", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Adjustments

Lists all Adjustments in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "AdjustmentDate": null,
  "AdjustmentType": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Adjustments

RecurringAdjustmentsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringAdjustments?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringAdjustments?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringAdjustments?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringAdjustments',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringAdjustments', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringAdjustments', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringAdjustments?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=RecurringAdjustments", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=RecurringAdjustments

Lists all Recurring Adjustments in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "Title": "string",
  "Amount": "string",
  "StartDate": null,
  "EndDate": null,
  "AdjustmentType": "string"
}

Responses

Status Meaning Description Schema
200 OK OK RecurringAdjustments

HourlyWagesList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=HourlyWages?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=HourlyWages?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=HourlyWages?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=HourlyWages',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=HourlyWages', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=HourlyWages', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=HourlyWages?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=HourlyWages", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=HourlyWages

Lists all Hourly Wages in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "HourlyWageDate": null,
  "RegularHours": "string",
  "OvertimeHours": "string"
}

Responses

Status Meaning Description Schema
200 OK OK HourlyWages

InsuranceList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Insurance?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Insurance?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Insurance?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Insurance',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Insurance', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Insurance', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Insurance?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Insurance", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Insurance

Lists all Insurances in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "InsuranceType": "string",
  "EmployeeShareAmount": null,
  "OrganizationShareAmount": null,
  "ExpiryDate": null
}

Responses

Status Meaning Description Schema
200 OK OK Insurance

ReimbursementsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Reimbursements?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Reimbursements?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Reimbursements?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Reimbursements',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Reimbursements', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Reimbursements', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Reimbursements?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Reimbursements", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Reimbursements

Lists all Reimbursements in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query ReimbursementsParams false JSON Array of parameters to get filtered data

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "ReimbursementDate": null,
  "ReimbursementItems": null
}

Responses

Status Meaning Description Schema
200 OK OK Reimbursements

CostToCompanyList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=CostToCompany?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=CostToCompany?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=CostToCompany?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=CostToCompany',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=CostToCompany', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=CostToCompany', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=CostToCompany?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=CostToCompany", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=CostToCompany

Lists all Cost To Company in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "CostToCompanyDate": null,
  "CostToCompanyItems": null
}

Responses

Status Meaning Description Schema
200 OK OK CostToCompany

OvertimesList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Overtimes?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=Overtimes?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=Overtimes?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=Overtimes',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=Overtimes', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=Overtimes', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=Overtimes?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=Overtimes", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=Overtimes

Lists all Overtimes in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "OvertimeDate": null,
  "OvertimeTimeIn": null,
  "OvertimeTimeOut": null
}

Responses

Status Meaning Description Schema
200 OK OK Overtimes

ProvidentFundList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=ProvidentFund?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=ProvidentFund?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=ProvidentFund?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=ProvidentFund',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=ProvidentFund', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=ProvidentFund', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=ProvidentFund?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=ProvidentFund", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=ProvidentFund

Lists all Provident Funds in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "ProvidentFundType": "string",
  "ProvidentFundMethod": "string",
  "EmployeeShare": "string",
  "OrganizationShare": "string"
}

Responses

Status Meaning Description Schema
200 OK OK ProvidentFund

FinalSettlementsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Payroll&submodule=FinalSettlements?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Payroll&submodule=FinalSettlements?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Payroll&submodule=FinalSettlements?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Payroll&submodule=FinalSettlements',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Payroll&submodule=FinalSettlements', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Payroll&submodule=FinalSettlements', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Payroll&submodule=FinalSettlements?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Payroll&submodule=FinalSettlements", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Payroll&submodule=FinalSettlements

Lists all Final Settlements in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "FinalSettlementsDate": "string",
  "FinalSettlementsItems": null
}

Responses

Status Meaning Description Schema
200 OK OK FinalSettlements

HRBudget

OpenPositionsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=HRBudget&submodule=OpenPositions?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=HRBudget&submodule=OpenPositions?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=HRBudget&submodule=OpenPositions?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=HRBudget&submodule=OpenPositions',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=HRBudget&submodule=OpenPositions', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=HRBudget&submodule=OpenPositions', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=HRBudget&submodule=OpenPositions?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=HRBudget&submodule=OpenPositions", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=HRBudget&submodule=OpenPositions

Lists all OpenPositions in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "OpenPositionCode": 0,
  "OpenPositionTitle": "string",
  "Status": "string",
  "EstimatedSalary": "string",
  "CompanyName": "string",
  "DivisionName": "string",
  "StationName": "string",
  "DepartmentName": "string"
}

Responses

Status Meaning Description Schema
200 OK OK OpenPositions

Forms

JobCandidateFormsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Forms&submodule=JobCandidateForms?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Forms&submodule=JobCandidateForms?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Forms&submodule=JobCandidateForms?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Forms&submodule=JobCandidateForms',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Forms&submodule=JobCandidateForms', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Forms&submodule=JobCandidateForms', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Forms&submodule=JobCandidateForms?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Forms&submodule=JobCandidateForms", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Forms&submodule=JobCandidateForms

Lists Job Candidate Forms in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR
params query JobCandidateFormsParams false JSON Array of parameters to get filtered data

Detailed descriptions

params: JSON Array of parameters to get filtered data Example:params=[{"JobCandidateEmailAddress":"[email protected]"}]

Example responses

Responses

Status Meaning Description Schema
200 OK OK None

Response Schema

Expense

ExpensesList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Expense&submodule=Expenses?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Expense&submodule=Expenses?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Expense&submodule=Expenses?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Expense&submodule=Expenses',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Expense&submodule=Expenses', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Expense&submodule=Expenses', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Expense&submodule=Expenses?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Expense&submodule=Expenses", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Expense&submodule=Expenses

Lists all Expenses in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "ExpenseDate": "string",
  "TotalAmount": "string",
  "ExpenseItems": null
}

Responses

Status Meaning Description Schema
200 OK OK Expenses

Assets

AssetsList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Assets&submodule=Assets?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Assets&submodule=Assets?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Assets&submodule=Assets?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Assets&submodule=Assets',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Assets&submodule=Assets', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Assets&submodule=Assets', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Assets&submodule=Assets?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Assets&submodule=Assets", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Assets&submodule=Assets

Lists all Assets in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "AssetName": "string",
  "AssetCode": "string",
  "AssetTag": "string",
  "Quantity": "string",
  "AssetCost": "string"
}

Responses

Status Meaning Description Schema
200 OK OK Assets

CheckOutList

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Assets&submodule=CheckOut?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Assets&submodule=CheckOut?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Assets&submodule=CheckOut?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Assets&submodule=CheckOut',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Assets&submodule=CheckOut', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Assets&submodule=CheckOut', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Assets&submodule=CheckOut?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Assets&submodule=CheckOut", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Assets&submodule=CheckOut

Lists all CheckOuts in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "List" is required in request parameter to fetch data from WebHR

Example responses

200 Response

{
  "AssetName": "string",
  "AssetCode": "string",
  "Employee": "string",
  "UserName": "string",
  "ReferenceNumber": 0,
  "CheckoutDateTime": null,
  "CheckinDateTime": null,
  "Status": "string"
}

Responses

Status Meaning Description Schema
200 OK OK CheckOuts

Reports

EmployeeLeaveSalaryAndEOSReport

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Reports&submodule=Payroll&request=EmployeeLeaveSalaryAndEOSReport

Get reports data in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "Report Name" is required in request parameter to fetch report data from WebHR
params query EmployeeLeaveSalaryAndEOSReportParams false JSON Array of parameters to get filtered data

Detailed descriptions

params: JSON Array of parameters to get filtered data Example:params={"StartYear":"2021", "StartMonth":"01", "EndYear":"2021", "EndMonth":"10"}

Example responses

200 Response

{
  "Period": "string",
  "SalaryDate": "string",
  "UserName": "string",
  "Department": "string",
  "Nationality": "string",
  "BasicSalary": "string",
  "Allowances": null,
  "PayrollItems": null,
  "LeavesSalaryAllowance": "string",
  "EndofServiceBenefitsAllowance": "string",
  "LeavesSalaryPaid": "string",
  "EndOfServicePaid": "string",
  "NetTotal": "string",
  "Currency": "string",
  "PhoneAllowance": "string",
  "FuelAllowance": "string"
}

Responses

Status Meaning Description Schema
200 OK OK EmployeeLeaveSalaryAndEOSReport

PayrollExtractionReport

Code samples

# You can also use wget
curl -X GET https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=PayrollExtractionReport?request= \
  -H 'Accept: application/json'

GET https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=PayrollExtractionReport?request= HTTP/1.1
Host: api.webhr.co
Accept: application/json


const headers = {
  'Accept':'application/json'
};

fetch('https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=PayrollExtractionReport?request=',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

require 'rest-client'
require 'json'

headers = {
  'Accept' => 'application/json'
}

result = RestClient.get 'https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=PayrollExtractionReport',
  params: {
  'request' => 'string(varchar255)'
}, headers: headers

p JSON.parse(result)

import requests
headers = {
  'Accept': 'application/json'
}

r = requests.get('https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=PayrollExtractionReport', params={
  'request': ''
}, headers = headers)

print(r.json())

 'application/json',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=PayrollExtractionReport', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

URL obj = new URL("https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=PayrollExtractionReport?request=");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Accept": []string{"application/json"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "https://api.webhr.co/api/2/api?module=Reports&submodule=Payroll&request=PayrollExtractionReport", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

GET ?module=Reports&submodule=Payroll&request=PayrollExtractionReport

Get reports data in your WebHR account

Parameters

Name In Type Required Description
request query string(varchar255) true "Report Name" is required in request parameter to fetch report data from WebHR
params query PayrollExtractionReportParams false JSON Array of parameters to get filtered data

Detailed descriptions

params: JSON Array of parameters to get filtered data Example:params={"StartYear":"2021", "StartMonth":"01", "EndYear":"2021", "EndMonth":"10"}

Example responses

200 Response

{
  "Period": "string",
  "SalaryDate": "string",
  "UserName": "string",
  "Department": "string",
  "Nationality": "string",
  "BasicSalary": "string",
  "Allowances": "string",
  "PayrollItems": "string",
  "Commissions": "string",
  "Deductions": "string",
  "AitTicketAllowance": "string",
  "AdjustmentsChildStudy": "string",
  "AdjustmentsActingAllowance": "string",
  "EmployeeContribution": "string",
  "OrganizationContribution": "string",
  "LoanRepayments": "string",
  "NetTotal": "string",
  "PhoneAllowance": "string",
  "FuelAllowance": "string"
}

Responses

Status Meaning Description Schema
200 OK OK PayrollExtractionReport

Schemas

Companies

{
  "Company": "string",
  "LegalName": "string",
  "ContactNumber": "string",
  "FaxNumber": "string",
  "EmailAddress": "string",
  "Website": "string"
}

Companies

Properties

Name Type Required Restrictions Description
Company string false none none
LegalName string false none none
ContactNumber string false none none
FaxNumber string false none none
EmailAddress string false none none
Website string false none none

Divisions

{
  "Company": "string",
  "DivisionType": "string",
  "DivisionName": "string",
  "DivisionHead": "string"
}

Divisions

Properties

Name Type Required Restrictions Description
Company string false none none
DivisionType string false none none
DivisionName string false none none
DivisionHead string false none none

Departments

{
  "Company": "string",
  "Division": "string",
  "Station": "string",
  "DepartmentName": "string",
  "DepartmentHead": "string"
}

Departments

Properties

Name Type Required Restrictions Description
Company string false none none
Division string false none none
Station string false none none
DepartmentName string false none none
DepartmentHead string false none none

Employee

{
  "EmployeeId": "string",
  "UserName": "string",
  "AccessCode": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "EmailAddress": "string",
  "Designation": "string",
  "CompanyName": "string",
  "DivisionName": "string",
  "CompanyEmailAddress": "string",
  "DepartmentName": "string",
  "StationName": "string",
  "EmployeeCategory": "string",
  "EmployeeType": "string",
  "JoiningDate": "string",
  "DateOfBirth": "string",
  "PresentContactNumber": "string",
  "MobileNumber": "string",
  "OfficePhoneNumber": "string",
  "PositionCode": "string",
  "ReportsTo": "string",
  "ReportsToEmailAddress": "string"
}

Employees

Properties

Name Type Required Restrictions Description
EmployeeId string false none none
UserName string false none none
AccessCode string false none none
FirstName string false none none
LastName string false none none
FullName string false none none
EmailAddress string false none none
Designation string false none none
CompanyName string false none none
DivisionName string false none none
CompanyEmailAddress string false none none
DepartmentName string false none none
StationName string false none none
EmployeeCategory string false none none
EmployeeType string false none none
JoiningDate string false none none
DateOfBirth string false none none
PresentContactNumber string false none none
MobileNumber string false none none
OfficePhoneNumber string false none none
PositionCode string false none none
ReportsTo string false none none
ReportsToEmailAddress string false none none

AddEmployees

{
  "CompanyName": "string",
  "DivisionName": "string",
  "StationName": "string",
  "DepartmentName": "string",
  "Designation": "string",
  "Grade": "string",
  "WorkShift": "string",
  "EmployeeCategory": "string",
  "EmployeeType": "string",
  "UserName": "string",
  "FirstName": "string",
  "LastName": "string",
  "Password": "string",
  "AllowLogin": "string",
  "EmailAddress": "string",
  "ShowInOrganogram": "string",
  "AccessCode": "string",
  "ReportsTo": "string",
  "Supervisor": "string",
  "Salutation": "string",
  "Nickname": "string",
  "DateofBirth": "string",
  "Gender": "string",
  "BloodGroup": "string",
  "Nationality": "string",
  "Religion": "string",
  "MaritalStatus": "string",
  "JoiningDate": "string",
  "GovernmentId": "string",
  "EmployeeTaxNumber": "string",
  "PresentAddress": "string",
  "PresentCity": "string",
  "PresentState": "string",
  "PresentZipCode": "string",
  "PresentCountry": "string",
  "PresentContactNumber": "string",
  "PermanentAddress": "string",
  "PermanentCity": "string",
  "PermanentState": "string",
  "PermanentZipCode": "string",
  "PermanentCountry": "string",
  "PermanentContactNumber": "string",
  "HomePhoneNumber": "string",
  "OfficePhoneNumber": "string",
  "MobileNumber": "string",
  "PassportNumber": "string",
  "PassportExpiration": "string"
}

Add Employees

Properties

Name Type Required Restrictions Description
CompanyName string false none none
DivisionName string false none none
StationName string false none none
DepartmentName string false none none
Designation string false none none
Grade string false none none
WorkShift string false none none
EmployeeCategory string false none none
EmployeeType string false none none
UserName string false none none
FirstName string false none none
LastName string false none none
Password string false none none
AllowLogin string false none none
EmailAddress string false none none
ShowInOrganogram string false none none
AccessCode string false none none
ReportsTo string false none none
Supervisor string false none none
Salutation string false none none
Nickname string false none none
DateofBirth string false none none
Gender string false none none
BloodGroup string false none none
Nationality string false none none
Religion string false none none
MaritalStatus string false none none
JoiningDate string false none none
GovernmentId string false none none
EmployeeTaxNumber string false none none
PresentAddress string false none none
PresentCity string false none none
PresentState string false none none
PresentZipCode string false none none
PresentCountry string false none none
PresentContactNumber string false none none
PermanentAddress string false none none
PermanentCity string false none none
PermanentState string false none none
PermanentZipCode string false none none
PermanentCountry string false none none
PermanentContactNumber string false none none
HomePhoneNumber string false none none
OfficePhoneNumber string false none none
MobileNumber string false none none
PassportNumber string false none none
PassportExpiration string false none none

Transfers

{
  "Username": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "TransferDate": null,
  "TransferToStation": "string",
  "TransferToDepartment": "string",
  "OpenPositionCode": null
}

Employees_Transfers

Properties

Name Type Required Restrictions Description
Username string false none none
FirstName string false none none
LastName string false none none
FullName string false none none
TransferDate date false none none
TransferToStation string false none none
TransferToDepartment string false none none
OpenPositionCode Integer false none none

Exit

{
  "Username": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "ExitDate": null,
  "CompanyName": "string",
  "StationName": "string",
  "DivisionName": "string",
  "ExitType": "string",
  "ExitInterviewConducted": "string"
}

Employees_Exits

Properties

Name Type Required Restrictions Description
Username string false none none
FirstName string false none none
LastName string false none none
FullName string false none none
ExitDate date false none none
CompanyName string false none none
StationName string false none none
DivisionName string false none none
ExitType string false none none
ExitInterviewConducted string false none none

Resignations

{
  "Username": "string",
  "Empoyee": "string",
  "ResignationDate": null,
  "NoticeDate": null
}

Resignations

Properties

Name Type Required Restrictions Description
Username string false none none
Empoyee string false none none
ResignationDate date false none none
NoticeDate date false none none

Terminations

{
  "Username": "string",
  "Empoyee": "string",
  "TerminationType": "string",
  "TerminationDate": null,
  "NoticeDate": null
}

Terminations

Properties

Name Type Required Restrictions Description
Username string false none none
Empoyee string false none none
TerminationType string false none none
TerminationDate date false none none
NoticeDate date false none none

Achievements

{
  "Username": "string",
  "Empoyee": "string",
  "AchievementTitle": "string",
  "AchievementDate": null
}

Achievements

Properties

Name Type Required Restrictions Description
Username string false none none
Empoyee string false none none
AchievementTitle string false none none
AchievementDate date false none none

Complaints

{
  "Username": "string",
  "Empoyee": "string",
  "Title": "string",
  "ComplaintDate": null,
  "ComplaintAgainst": null
}

Complaints

Properties

Name Type Required Restrictions Description
Username string false none none
Empoyee string false none none
Title string false none none
ComplaintDate date false none none
ComplaintAgainst Array false none none

Warnings

{
  "WarningByEmployee": "string",
  "WarningToEmployee": "string",
  "WarningDate": null,
  "TypeOfWarning": "string",
  "Subject": "string"
}

Warnings

Properties

Name Type Required Restrictions Description
WarningByEmployee string false none none
WarningToEmployee string false none none
WarningDate date false none none
TypeOfWarning string false none none
Subject string false none none

Memos

{
  "UserName": "string",
  "Employee": "string",
  "MemoDate": null,
  "Subject": "string",
  "MemoTo": null
}

Memos

Properties

Name Type Required Restrictions Description
UserName string false none none
Employee string false none none
MemoDate date false none none
Subject string false none none
MemoTo Array false none none

Suggestions

{
  "UserName": "string",
  "Employee": "string",
  "Title": "string"
}

Suggestions

Properties

Name Type Required Restrictions Description
UserName string false none none
Employee string false none none
Title string false none none

Attendance

{
  "Username": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "AttendanceDate": null,
  "SignInTime": null,
  "SignOutTime": null,
  "LunchBreakOutTime": null,
  "LunchBreakInTime": null,
  "AdditionalBreakOutTime": null,
  "AdditionalBreakInTime": null,
  "ExtraBreakOutTime": null,
  "ExtraBreakInTime": null,
  "BreakOutTime": null,
  "TotalTime": null,
  "ApprovalStatus": "string",
  "Approver": "string"
}

Timesheet_Attendance

Properties

Name Type Required Restrictions Description
Username string false none none
FirstName string false none none
LastName string false none none
FullName string false none none
AttendanceDate date false none none
SignInTime datetime false none none
SignOutTime datetime false none none
LunchBreakOutTime datetime false none none
LunchBreakInTime datetime false none none
AdditionalBreakOutTime datetime false none none
AdditionalBreakInTime datetime false none none
ExtraBreakOutTime datetime false none none
ExtraBreakInTime datetime false none none
BreakOutTime datetime false none none
TotalTime datetime false none none
ApprovalStatus string false none none
Approver string false none none

AddAttendance

{
  "AccessCode": "string",
  "Date": null,
  "Time": null,
  "Type": "string",
  "WorkShift": "string"
}

Add Attendance

Properties

Name Type Required Restrictions Description
AccessCode string false none none
Date date false none none
Time datetime false none none
Type string false none none
WorkShift string false none none

Leaves

{
  "Username": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "Reason": "string",
  "ReferenceNumber": "string",
  "LeaveType": "string",
  "LunchBreakOutTime": null,
  "LeaveFrom": null,
  "LeaveTo": null,
  "LeaveHours": "string",
  "ApprovalStatus": "string"
}

Leaves

Properties

Name Type Required Restrictions Description
Username string false none none
FirstName string false none none
LastName string false none none
FullName string false none none
Reason string false none none
ReferenceNumber string false none none
LeaveType string false none none
LunchBreakOutTime datetime false none none
LeaveFrom date false none none
LeaveTo date false none none
LeaveHours string false none none
ApprovalStatus string false none none

AddLeave

{
  "UserName": "string",
  "LeaveFrom": null,
  "LeaveTo": null,
  "LeaveType": "string",
  "LeaveDuration": "string"
}

Add Leave

Properties

Name Type Required Restrictions Description
UserName string false none none
LeaveFrom date false none none
LeaveTo date false none none
LeaveType string false none none
LeaveDuration string false none none

LeavesQuota

{
  "Year": "string",
  "Employee": "string",
  "UserName": "string",
  "AccessCode": "string",
  "EmployeeType": "string",
  "EmployeeCategory": null,
  "LeaveType": null,
  "Entitled": null,
  "Accrued": "string",
  "CarriedOver": "string",
  "Additional": null,
  "Adjusted": null,
  "Taken": null,
  "Pending": "string",
  "Balance": "string"
}

Leaves Quota

Properties

Name Type Required Restrictions Description
Year string false none none
Employee string false none none
UserName string false none none
AccessCode string false none none
EmployeeType string false none none
EmployeeCategory datetime false none none
LeaveType date false none none
Entitled date false none none
Accrued string false none none
CarriedOver string false none none
Additional datetime false none none
Adjusted date false none none
Taken date false none none
Pending string false none none
Balance string false none none

JobPosts

{
  "JobTitle": "string",
  "ReferenceNumber": null,
  "JobType": "string",
  "NumberOfPositions": 0,
  "CandidateAgeRangeStart": 0,
  "CandidateAgeRangeEnd": 0,
  "CandidateExperience": "string",
  "CandidateQualification": "string",
  "Description": "string",
  "SalaryStartRange": "string",
  "SalaryEndRange": "string",
  "JobPostCompany": "string"
}

Recruitment_JobPosts

Properties

Name Type Required Restrictions Description
JobTitle string false none none
ReferenceNumber integet false none none
JobType string false none none
NumberOfPositions integer false none none
CandidateAgeRangeStart integer false none none
CandidateAgeRangeEnd integer false none none
CandidateExperience string false none none
CandidateQualification string false none none
Description string false none none
SalaryStartRange string false none none
SalaryEndRange string false none none
JobPostCompany string false none none

JobRequests

{
  "JobTitle": "string",
  "ReferenceNumber": 0,
  "JobType": "string",
  "NumberOfPositions": 0,
  "CandidateAgeRangeStart": 0,
  "CandidateAgeRangeEnd": 0,
  "CandidateExperience": "string",
  "CandidateQualification": "string",
  "Description": "string",
  "SalaryStartRange": "string",
  "SalaryEndRange": "string"
}

Recruitment_JobRequests

Properties

Name Type Required Restrictions Description
JobTitle string false none none
ReferenceNumber integer false none none
JobType string false none none
NumberOfPositions integer false none none
CandidateAgeRangeStart integer false none none
CandidateAgeRangeEnd integer false none none
CandidateExperience string false none none
CandidateQualification string false none none
Description string false none none
SalaryStartRange string false none none
SalaryEndRange string false none none

JobCandidatesList

{
  "FirstName": "string",
  "LastName": 0,
  "DateOfBirth": "string",
  "Gender": 0,
  "Nationality": 0,
  "Address": 0,
  "City": "string",
  "EmailAddress": "string",
  "PhoneNumber": "string",
  "MobileNumber": "string",
  "JobField": "string",
  "AppliedOn": null,
  "Qualifications": null,
  "Experience": null,
  "Membership": null,
  "Trainings": null,
  "Languages": null,
  "Skills": null,
  "References": null,
  "CustomFields": null
}

Recruitment_JobCandidatesList

Properties

Name Type Required Restrictions Description
FirstName string false none none
LastName integer false none none
DateOfBirth string false none none
Gender integer false none none
Nationality integer false none none
Address integer false none none
City string false none none
EmailAddress string false none none
PhoneNumber string false none none
MobileNumber string false none none
JobField string false none none
AppliedOn date false none none
Qualifications Array false none none
Experience Array false none none
Membership Array false none none
Trainings Array false none none
Languages Array false none none
Skills Array false none none
References Array false none none
CustomFields Array false none none

AddCandidate

{
  "JobField": "string",
  "FirstName": "string",
  "LastName": "string",
  "DateOfBirth": "string",
  "Gender": "string",
  "Address": "string",
  "City": "string",
  "ZipCode": "string",
  "Country": "string",
  "EmailAddress": "string",
  "PhoneNumber": "string",
  "Interests": null,
  "Achievements": null,
  "ResourceSource": "string",
  "ResourceSourceDetails": "string"
}

Add Candidate

Properties

Name Type Required Restrictions Description
JobField string false none none
FirstName string false none none
LastName string false none none
DateOfBirth string false none none
Gender string false none none
Address string false none none
City string false none none
ZipCode string false none none
Country string false none none
EmailAddress string false none none
PhoneNumber string false none none
Interests Array false none none
Achievements Array false none none
ResourceSource string false none none
ResourceSourceDetails string false none none

ScreeningInterviews

{
  "InterviewType": "string",
  "InterviewDate": null,
  "InterviewTime": null,
  "PlaceOfInterview": "string",
  "CandidateName": "string",
  "CandidateEmailAddress": "string",
  "CandidateReferenceNumber": 0
}

Recruitment_ScreeningInterviews

Properties

Name Type Required Restrictions Description
InterviewType string false none none
InterviewDate Date false none none
InterviewTime datetime false none none
PlaceOfInterview string false none none
CandidateName string false none none
CandidateEmailAddress string false none none
CandidateReferenceNumber integer false none none

Loans

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "LoanAmount": "string",
  "RemainingAmount": "string",
  "MonthlyRepaymentAmount": "string",
  "RepaymentsType": "string",
  "RepaymentsMonths": "string",
  "LoanDate": null,
  "RepaymentStartDate": null,
  "Interest": "string",
  "InterestType": "string",
  "TotalLoanPaid": "string"
}

Payroll_Loans

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
LoanAmount string false none none
RemainingAmount string false none none
MonthlyRepaymentAmount string false none none
RepaymentsType string false none none
RepaymentsMonths string false none none
LoanDate date false none none
RepaymentStartDate date false none none
Interest string false none none
InterestType string false none none
TotalLoanPaid string false none none

Payslips

{
  "CompanyName": "string",
  "StationName": "string",
  "DivisionName": "string",
  "UserName": "string",
  "AccessCode": "string",
  "FirstName": "string",
  "LastName": "string",
  "FullName": "string",
  "Nationality": "string",
  "PositionCode": "string",
  "TotalSalary": "string",
  "PayslipItems": null,
  "AdditionalItems": null,
  "SalaryDate": null,
  "SalaryPeriod_StartDate": null,
  "SalaryPeriod_EndDate": null
}

Payslips

Properties

Name Type Required Restrictions Description
CompanyName string false none none
StationName string false none none
DivisionName string false none none
UserName string false none none
AccessCode string false none none
FirstName string false none none
LastName string false none none
FullName string false none none
Nationality string false none none
PositionCode string false none none
TotalSalary string false none none
PayslipItems Array false none none
AdditionalItems Array false none none
SalaryDate date false none none
SalaryPeriod_StartDate date false none none
SalaryPeriod_EndDate date false none none

AdvanceSalary

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "AdvanceSalaryDate": null
}

AdvanceSalary

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
Amount string false none none
AdvanceSalaryDate date false none none

Earnings

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "EarningDate": null,
  "EarningType": "string"
}

Earnings

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
Amount string false none none
EarningDate date false none none
EarningType string false none none

Bonuses

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "BonusDate": null
}

Bonuses

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
Amount string false none none
BonusDate date false none none

Commissions

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "CommissionDate": null
}

Commissions

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
Amount string false none none
CommissionDate date false none none

Deductions

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "DeductionDate": null,
  "DeductionType": "string"
}

Deductions

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
Amount string false none none
DeductionDate date false none none
DeductionType string false none none

RecurringDeductions

{
  "Employee": "string",
  "Title": "string",
  "Amount": "string",
  "RecurringDeductionEndDate": null,
  "DeductionType": "string"
}

Recurring Deductions

Properties

Name Type Required Restrictions Description
Employee string false none none
Title string false none none
Amount string false none none
RecurringDeductionEndDate date false none none
DeductionType string false none none

Adjustments

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "AdjustmentDate": null,
  "AdjustmentType": "string"
}

Adjustments

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
Amount string false none none
AdjustmentDate date false none none
AdjustmentType string false none none

RecurringAdjustments

{
  "Employee": "string",
  "Title": "string",
  "Amount": "string",
  "StartDate": null,
  "EndDate": null,
  "AdjustmentType": "string"
}

Recurring Adjustments

Properties

Name Type Required Restrictions Description
Employee string false none none
Title string false none none
Amount string false none none
StartDate date false none none
EndDate date false none none
AdjustmentType string false none none

HourlyWages

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "HourlyWageDate": null,
  "RegularHours": "string",
  "OvertimeHours": "string"
}

Hourly Wages

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
HourlyWageDate date false none none
RegularHours string false none none
OvertimeHours string false none none

Insurance

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "InsuranceType": "string",
  "EmployeeShareAmount": null,
  "OrganizationShareAmount": null,
  "ExpiryDate": null
}

Insurance

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
InsuranceType string false none none
EmployeeShareAmount decimal false none none
OrganizationShareAmount decimal false none none
ExpiryDate date false none none

Reimbursements

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "ReimbursementDate": null,
  "ReimbursementItems": null
}

Reimbursements

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
ReimbursementDate date false none none
ReimbursementItems Array false none none

CostToCompany

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "CostToCompanyDate": null,
  "CostToCompanyItems": null
}

Cost To Company

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
CostToCompanyDate date false none none
CostToCompanyItems Array false none none

Overtimes

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "Amount": "string",
  "OvertimeDate": null,
  "OvertimeTimeIn": null,
  "OvertimeTimeOut": null
}

Overtimes

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
Amount string false none none
OvertimeDate date false none none
OvertimeTimeIn date false none none
OvertimeTimeOut date false none none

ProvidentFund

{
  "Employee": "string",
  "UserName": "string",
  "ProvidentFundType": "string",
  "ProvidentFundMethod": "string",
  "EmployeeShare": "string",
  "OrganizationShare": "string"
}

Provident Fund

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
ProvidentFundType string false none none
ProvidentFundMethod string false none none
EmployeeShare string false none none
OrganizationShare string false none none

FinalSettlements

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "FinalSettlementsDate": "string",
  "FinalSettlementsItems": null
}

Final Settlements

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
FinalSettlementsDate string false none none
FinalSettlementsItems Array false none none

OpenPositions

{
  "OpenPositionCode": 0,
  "OpenPositionTitle": "string",
  "Status": "string",
  "EstimatedSalary": "string",
  "CompanyName": "string",
  "DivisionName": "string",
  "StationName": "string",
  "DepartmentName": "string"
}

HRBudget_OpenPositions

Properties

Name Type Required Restrictions Description
OpenPositionCode integer false none none
OpenPositionTitle string false none none
Status string false none none
EstimatedSalary string false none none
CompanyName string false none none
DivisionName string false none none
StationName string false none none
DepartmentName string false none none

JobCandidateForms

{
  "Candidate": "string",
  "SubmittedOn": "string",
  "Deadline": null,
  "FormTitle": "string",
  "FormData": null
}

Job Candidate Forms

Properties

Name Type Required Restrictions Description
Candidate string false none none
SubmittedOn string false none none
Deadline date false none none
FormTitle string false none none
FormData Array false none none

Expenses

{
  "Employee": "string",
  "UserName": "string",
  "Title": "string",
  "ExpenseDate": "string",
  "TotalAmount": "string",
  "ExpenseItems": null
}

Expenses

Properties

Name Type Required Restrictions Description
Employee string false none none
UserName string false none none
Title string false none none
ExpenseDate string false none none
TotalAmount string false none none
ExpenseItems Array false none none

Assets

{
  "AssetName": "string",
  "AssetCode": "string",
  "AssetTag": "string",
  "Quantity": "string",
  "AssetCost": "string"
}

Assets

Properties

Name Type Required Restrictions Description
AssetName string false none none
AssetCode string false none none
AssetTag string false none none
Quantity string false none none
AssetCost string false none none

CheckOuts

{
  "AssetName": "string",
  "AssetCode": "string",
  "Employee": "string",
  "UserName": "string",
  "ReferenceNumber": 0,
  "CheckoutDateTime": null,
  "CheckinDateTime": null,
  "Status": "string"
}

Asset CheckOuts

Properties

Name Type Required Restrictions Description
AssetName string false none none
AssetCode string false none none
Employee string false none none
UserName string false none none
ReferenceNumber integer false none none
CheckoutDateTime datetime false none none
CheckinDateTime datetime false none none
Status string false none none

EmployeeLeaveSalaryAndEOSReport

{
  "Period": "string",
  "SalaryDate": "string",
  "UserName": "string",
  "Department": "string",
  "Nationality": "string",
  "BasicSalary": "string",
  "Allowances": null,
  "PayrollItems": null,
  "LeavesSalaryAllowance": "string",
  "EndofServiceBenefitsAllowance": "string",
  "LeavesSalaryPaid": "string",
  "EndOfServicePaid": "string",
  "NetTotal": "string",
  "Currency": "string",
  "PhoneAllowance": "string",
  "FuelAllowance": "string"
}

Employee Leave Salary And EOS Report

Properties

Name Type Required Restrictions Description
Period string false none none
SalaryDate string false none none
UserName string false none none
Department string false none none
Nationality string false none none
BasicSalary string false none none
Allowances Array false none none
PayrollItems Array false none none
LeavesSalaryAllowance string false none none
EndofServiceBenefitsAllowance string false none none
LeavesSalaryPaid string false none none
EndOfServicePaid string false none none
NetTotal string false none none
Currency string false none none
PhoneAllowance string false none none
FuelAllowance string false none none

PayrollExtractionReport

{
  "Period": "string",
  "SalaryDate": "string",
  "UserName": "string",
  "Department": "string",
  "Nationality": "string",
  "BasicSalary": "string",
  "Allowances": "string",
  "PayrollItems": "string",
  "Commissions": "string",
  "Deductions": "string",
  "AitTicketAllowance": "string",
  "AdjustmentsChildStudy": "string",
  "AdjustmentsActingAllowance": "string",
  "EmployeeContribution": "string",
  "OrganizationContribution": "string",
  "LoanRepayments": "string",
  "NetTotal": "string",
  "PhoneAllowance": "string",
  "FuelAllowance": "string"
}

Payroll Extraction Report

Properties

Name Type Required Restrictions Description
Period string false none none
SalaryDate string false none none
UserName string false none none
Department string false none none
Nationality string false none none
BasicSalary string false none none
Allowances string false none none
PayrollItems string false none none
Commissions string false none none
Deductions string false none none
AitTicketAllowance string false none none
AdjustmentsChildStudy string false none none
AdjustmentsActingAllowance string false none none
EmployeeContribution string false none none
OrganizationContribution string false none none
LoanRepayments string false none none
NetTotal string false none none
PhoneAllowance string false none none
FuelAllowance string false none none

EmployeesParams

{
  "JoiningStartDate": null,
  "JoiningEndDate": null
}

Employees Params

Properties

Name Type Required Restrictions Description
JoiningStartDate date false none none
JoiningEndDate date false none none

TransferParams

{
  "StartDate": null,
  "EndDate": null
}

Transfer Params

Properties

Name Type Required Restrictions Description
StartDate date false none none
EndDate date false none none

ExitParams

{
  "StartDate": null,
  "EndDate": null
}

Transfer Params

Properties

Name Type Required Restrictions Description
StartDate date false none none
EndDate date false none none

AttendanceParams

{
  "UserName": "string",
  "StartDate": null,
  "EndDate": null
}

Suggestions

Properties

Name Type Required Restrictions Description
UserName string false none none
StartDate date false none none
EndDate date false none none

LeavesParams

{
  "UserName": "string",
  "StartDate": null,
  "EndDate": null,
  "ApprovalStatus": "string"
}

Leaves

Properties

Name Type Required Restrictions Description
UserName string false none none
StartDate date false none none
EndDate date false none none
ApprovalStatus string false none none

LeavesQuotaParams

{
  "Year": "string",
  "UserName": "string",
  "LeaveType": "string"
}

Leaves Quota

Properties

Name Type Required Restrictions Description
Year string false none none
UserName string false none none
LeaveType string false none none

PayslipParams

{
  "PayslipStartMonth": "string",
  "PayslipStartYear": "string",
  "PayslipEndMonth": "string",
  "PayslipEndYear": "string",
  "Company": "string",
  "Division": "string",
  "Station": "string",
  "DepartmentName": "string",
  "ShowLeaveSalary": 0,
  "ShowEndOfServiceBenefitAllowance": 0,
  "ShowLeaveSalaryPaid": 0,
  "ShowEndOfServicePaid": 0,
  "LeaveType": "string"
}

Payslip Params

Properties

Name Type Required Restrictions Description
PayslipStartMonth string false none none
PayslipStartYear string false none none
PayslipEndMonth string false none none
PayslipEndYear string false none none
Company string false none none
Division string false none none
Station string false none none
DepartmentName string false none none
ShowLeaveSalary integer false none none
ShowEndOfServiceBenefitAllowance integer false none none
ShowLeaveSalaryPaid integer false none none
ShowEndOfServicePaid integer false none none
LeaveType string false none none

AdvanceSalaryParams

{
  "StartDate": null,
  "EndDate": null
}

Advance Salary Params

Properties

Name Type Required Restrictions Description
StartDate date false none none
EndDate date false none none

ReimbursementsParams

{
  "UserName": "string",
  "StartDate": null,
  "EndDate": null
}

Reimbursements Params

Properties

Name Type Required Restrictions Description
UserName string false none none
StartDate date false none none
EndDate date false none none

JobPostParams

{
  "JobPostStatus": "string"
}

Job Posts Params

Properties

Name Type Required Restrictions Description
JobPostStatus string false none none

JobCandidatesParams

{
  "AppliedOn_StartDate": null,
  "AppliedOn_EndDate": null,
  "EmailAddress": "string",
  "AllowCustomFields": 0
}

Job Candidates Params

Properties

Name Type Required Restrictions Description
AppliedOn_StartDate date false none none
AppliedOn_EndDate date false none none
EmailAddress string false none none
AllowCustomFields integer false none none

JobCandidateFormsParams

{
  "JobCandidateEmailAddress": "string"
}

Job Candidate Forms Params

Properties

Name Type Required Restrictions Description
JobCandidateEmailAddress string false none none

EmployeeLeaveSalaryAndEOSReportParams

{
  "StartMonth": "string",
  "StartYear": "string",
  "EndMonth": "string",
  "EndYear": "string",
  "PayrollSetup": "string",
  "LeaveType": "string"
}

Employee Leave Salary And EOS Report Params

Properties

Name Type Required Restrictions Description
StartMonth string false none none
StartYear string false none none
EndMonth string false none none
EndYear string false none none
PayrollSetup string false none none
LeaveType string false none none

PayrollExtractionReportParams

{
  "StartMonth": "string",
  "StartYear": "string",
  "EndMonth": "string",
  "EndYear": "string",
  "PayrollSetup": "string"
}

Payroll Extraction Report

Properties

Name Type Required Restrictions Description
StartMonth string false none none
StartYear string false none none
EndMonth string false none none
EndYear string false none none
PayrollSetup string false none none