@apideck/node
Version:
Apideck Node.js SDK
1,651 lines (1,397 loc) • 68.2 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* Apideck
* The Apideck OpenAPI Spec: SDK Optimized
*
* The version of the OpenAPI document: 10.13.0
* Contact: support@apideck.com
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import {
CreateDepartmentResponse,
CreateDepartmentResponseFromJSON,
CreateEmployeeResponse,
CreateEmployeeResponseFromJSON,
CreateHrisCompanyResponse,
CreateHrisCompanyResponseFromJSON,
CreateTimeOffRequestResponse,
CreateTimeOffRequestResponseFromJSON,
DeleteDepartmentResponse,
DeleteDepartmentResponseFromJSON,
DeleteEmployeeResponse,
DeleteEmployeeResponseFromJSON,
DeleteHrisCompanyResponse,
DeleteHrisCompanyResponseFromJSON,
DeleteTimeOffRequestResponse,
DeleteTimeOffRequestResponseFromJSON,
Department,
DepartmentToJSON,
Employee,
EmployeesFilter,
EmployeesOneFilter,
EmployeesSort,
EmployeeToJSON,
GetDepartmentResponse,
GetDepartmentResponseFromJSON,
GetDepartmentsResponse,
GetDepartmentsResponseFromJSON,
GetEmployeePayrollResponse,
GetEmployeePayrollResponseFromJSON,
GetEmployeePayrollsResponse,
GetEmployeePayrollsResponseFromJSON,
GetEmployeeResponse,
GetEmployeeResponseFromJSON,
GetEmployeeSchedulesResponse,
GetEmployeeSchedulesResponseFromJSON,
GetEmployeesResponse,
GetEmployeesResponseFromJSON,
GetHrisCompaniesResponse,
GetHrisCompaniesResponseFromJSON,
GetHrisCompanyResponse,
GetHrisCompanyResponseFromJSON,
GetPayrollResponse,
GetPayrollResponseFromJSON,
GetPayrollsResponse,
GetPayrollsResponseFromJSON,
GetTimeOffRequestResponse,
GetTimeOffRequestResponseFromJSON,
GetTimeOffRequestsResponse,
GetTimeOffRequestsResponseFromJSON,
HrisCompany,
HrisCompanyToJSON,
PassThroughQuery,
PayrollsFilter,
TimeOffRequest,
TimeOffRequestsFilter,
TimeOffRequestToJSON,
UpdateDepartmentResponse,
UpdateDepartmentResponseFromJSON,
UpdateEmployeeResponse,
UpdateEmployeeResponseFromJSON,
UpdateHrisCompanyResponse,
UpdateHrisCompanyResponseFromJSON,
UpdateTimeOffRequestResponse,
UpdateTimeOffRequestResponseFromJSON
} from '../models'
import * as runtime from '../runtime'
export interface HrisApiCompaniesAddRequest {
company: HrisCompany
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
}
export interface HrisApiCompaniesAllRequest {
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
cursor?: string | null
limit?: number
passThrough?: PassThroughQuery
fields?: string | null
}
export interface HrisApiCompaniesDeleteRequest {
id: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
export interface HrisApiCompaniesOneRequest {
id: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
fields?: string | null
}
export interface HrisApiCompaniesUpdateRequest {
id: string
company: HrisCompany
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
export interface HrisApiDepartmentsAddRequest {
department: Department
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
}
export interface HrisApiDepartmentsAllRequest {
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
cursor?: string | null
limit?: number
passThrough?: PassThroughQuery
fields?: string | null
}
export interface HrisApiDepartmentsDeleteRequest {
id: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
export interface HrisApiDepartmentsOneRequest {
id: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
fields?: string | null
}
export interface HrisApiDepartmentsUpdateRequest {
id: string
department: Department
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
export interface HrisApiEmployeePayrollsAllRequest {
employeeId: string
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
filter?: PayrollsFilter
passThrough?: PassThroughQuery
fields?: string | null
}
export interface HrisApiEmployeePayrollsOneRequest {
payrollId: string
employeeId: string
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
fields?: string | null
}
export interface HrisApiEmployeeSchedulesAllRequest {
employeeId: string
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
passThrough?: PassThroughQuery
fields?: string | null
}
export interface HrisApiEmployeesAddRequest {
employee: Employee
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
}
export interface HrisApiEmployeesAllRequest {
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
cursor?: string | null
limit?: number
filter?: EmployeesFilter
sort?: EmployeesSort
passThrough?: PassThroughQuery
fields?: string | null
}
export interface HrisApiEmployeesDeleteRequest {
id: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
export interface HrisApiEmployeesOneRequest {
id: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
fields?: string | null
filter?: EmployeesOneFilter
passThrough?: PassThroughQuery
}
export interface HrisApiEmployeesUpdateRequest {
id: string
employee: Employee
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
export interface HrisApiPayrollsAllRequest {
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
filter?: PayrollsFilter
passThrough?: PassThroughQuery
fields?: string | null
}
export interface HrisApiPayrollsOneRequest {
payrollId: string
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
fields?: string | null
}
export interface HrisApiTimeOffRequestsAddRequest {
timeOffRequest: TimeOffRequest
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
}
export interface HrisApiTimeOffRequestsAllRequest {
raw?: boolean
consumerId?: string
appId?: string
serviceId?: string
cursor?: string | null
limit?: number
filter?: TimeOffRequestsFilter
passThrough?: PassThroughQuery
fields?: string | null
}
export interface HrisApiTimeOffRequestsDeleteRequest {
id: string
employeeId: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
export interface HrisApiTimeOffRequestsOneRequest {
id: string
employeeId: string
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
fields?: string | null
}
export interface HrisApiTimeOffRequestsUpdateRequest {
id: string
employeeId: string
timeOffRequest: TimeOffRequest
consumerId?: string
appId?: string
serviceId?: string
raw?: boolean
}
/**
*
*/
export class HrisApi extends runtime.BaseAPI {
/**
* Create Company
* Create Company
*/
async companiesAddRaw(
requestParameters: HrisApiCompaniesAddRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<CreateHrisCompanyResponse>> {
if (requestParameters.company === null || requestParameters.company === undefined) {
throw new runtime.RequiredError(
'company',
'Required parameter requestParameters.company was null or undefined when calling companiesAdd.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/companies`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: HrisCompanyToJSON(requestParameters.company)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
CreateHrisCompanyResponseFromJSON(jsonValue)
)
}
/**
* Create Company
* Create Company
*/
async companiesAdd(
requestParameters: HrisApiCompaniesAddRequest,
initOverrides?: RequestInit
): Promise<CreateHrisCompanyResponse> {
const response = await this.companiesAddRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* List Companies
* List Companies
*/
async companiesAllRaw(
requestParameters: HrisApiCompaniesAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetHrisCompaniesResponse>> {
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.cursor !== undefined) {
queryParameters['cursor'] = requestParameters.cursor
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit
}
if (requestParameters.passThrough !== undefined) {
queryParameters['pass_through'] = requestParameters.passThrough
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/companies`,
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetHrisCompaniesResponseFromJSON(jsonValue)
)
}
/**
* List Companies
* List Companies
*/
async companiesAll(
requestParameters: HrisApiCompaniesAllRequest = {},
initOverrides?: RequestInit
): Promise<GetHrisCompaniesResponse> {
const response = await this.companiesAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Delete Company
* Delete Company
*/
async companiesDeleteRaw(
requestParameters: HrisApiCompaniesDeleteRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<DeleteHrisCompanyResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling companiesDelete.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/companies/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'DELETE',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
DeleteHrisCompanyResponseFromJSON(jsonValue)
)
}
/**
* Delete Company
* Delete Company
*/
async companiesDelete(
requestParameters: HrisApiCompaniesDeleteRequest,
initOverrides?: RequestInit
): Promise<DeleteHrisCompanyResponse> {
const response = await this.companiesDeleteRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Get Company
* Get Company
*/
async companiesOneRaw(
requestParameters: HrisApiCompaniesOneRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetHrisCompanyResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling companiesOne.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/companies/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetHrisCompanyResponseFromJSON(jsonValue)
)
}
/**
* Get Company
* Get Company
*/
async companiesOne(
requestParameters: HrisApiCompaniesOneRequest,
initOverrides?: RequestInit
): Promise<GetHrisCompanyResponse> {
const response = await this.companiesOneRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Update Company
* Update Company
*/
async companiesUpdateRaw(
requestParameters: HrisApiCompaniesUpdateRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<UpdateHrisCompanyResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling companiesUpdate.'
)
}
if (requestParameters.company === null || requestParameters.company === undefined) {
throw new runtime.RequiredError(
'company',
'Required parameter requestParameters.company was null or undefined when calling companiesUpdate.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/companies/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: HrisCompanyToJSON(requestParameters.company)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
UpdateHrisCompanyResponseFromJSON(jsonValue)
)
}
/**
* Update Company
* Update Company
*/
async companiesUpdate(
requestParameters: HrisApiCompaniesUpdateRequest,
initOverrides?: RequestInit
): Promise<UpdateHrisCompanyResponse> {
const response = await this.companiesUpdateRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Create Department
* Create Department
*/
async departmentsAddRaw(
requestParameters: HrisApiDepartmentsAddRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<CreateDepartmentResponse>> {
if (requestParameters.department === null || requestParameters.department === undefined) {
throw new runtime.RequiredError(
'department',
'Required parameter requestParameters.department was null or undefined when calling departmentsAdd.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/departments`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: DepartmentToJSON(requestParameters.department)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
CreateDepartmentResponseFromJSON(jsonValue)
)
}
/**
* Create Department
* Create Department
*/
async departmentsAdd(
requestParameters: HrisApiDepartmentsAddRequest,
initOverrides?: RequestInit
): Promise<CreateDepartmentResponse> {
const response = await this.departmentsAddRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* List Departments
* List Departments
*/
async departmentsAllRaw(
requestParameters: HrisApiDepartmentsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetDepartmentsResponse>> {
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.cursor !== undefined) {
queryParameters['cursor'] = requestParameters.cursor
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit
}
if (requestParameters.passThrough !== undefined) {
queryParameters['pass_through'] = requestParameters.passThrough
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/departments`,
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetDepartmentsResponseFromJSON(jsonValue)
)
}
/**
* List Departments
* List Departments
*/
async departmentsAll(
requestParameters: HrisApiDepartmentsAllRequest = {},
initOverrides?: RequestInit
): Promise<GetDepartmentsResponse> {
const response = await this.departmentsAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Delete Department
* Delete Department
*/
async departmentsDeleteRaw(
requestParameters: HrisApiDepartmentsDeleteRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<DeleteDepartmentResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling departmentsDelete.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/departments/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'DELETE',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
DeleteDepartmentResponseFromJSON(jsonValue)
)
}
/**
* Delete Department
* Delete Department
*/
async departmentsDelete(
requestParameters: HrisApiDepartmentsDeleteRequest,
initOverrides?: RequestInit
): Promise<DeleteDepartmentResponse> {
const response = await this.departmentsDeleteRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Get Department
* Get Department
*/
async departmentsOneRaw(
requestParameters: HrisApiDepartmentsOneRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetDepartmentResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling departmentsOne.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/departments/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetDepartmentResponseFromJSON(jsonValue)
)
}
/**
* Get Department
* Get Department
*/
async departmentsOne(
requestParameters: HrisApiDepartmentsOneRequest,
initOverrides?: RequestInit
): Promise<GetDepartmentResponse> {
const response = await this.departmentsOneRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Update Department
* Update Department
*/
async departmentsUpdateRaw(
requestParameters: HrisApiDepartmentsUpdateRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<UpdateDepartmentResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling departmentsUpdate.'
)
}
if (requestParameters.department === null || requestParameters.department === undefined) {
throw new runtime.RequiredError(
'department',
'Required parameter requestParameters.department was null or undefined when calling departmentsUpdate.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/departments/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: DepartmentToJSON(requestParameters.department)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
UpdateDepartmentResponseFromJSON(jsonValue)
)
}
/**
* Update Department
* Update Department
*/
async departmentsUpdate(
requestParameters: HrisApiDepartmentsUpdateRequest,
initOverrides?: RequestInit
): Promise<UpdateDepartmentResponse> {
const response = await this.departmentsUpdateRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* List payrolls for employee
* List Employee Payrolls
*/
async employeePayrollsAllRaw(
requestParameters: HrisApiEmployeePayrollsAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetEmployeePayrollsResponse>> {
if (requestParameters.employeeId === null || requestParameters.employeeId === undefined) {
throw new runtime.RequiredError(
'employeeId',
'Required parameter requestParameters.employeeId was null or undefined when calling employeePayrollsAll.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.filter !== undefined) {
queryParameters['filter'] = requestParameters.filter
}
if (requestParameters.passThrough !== undefined) {
queryParameters['pass_through'] = requestParameters.passThrough
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/payrolls/employees/{employee_id}`.replace(
`{${'employee_id'}}`,
encodeURIComponent(String(requestParameters.employeeId))
),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetEmployeePayrollsResponseFromJSON(jsonValue)
)
}
/**
* List payrolls for employee
* List Employee Payrolls
*/
async employeePayrollsAll(
requestParameters: HrisApiEmployeePayrollsAllRequest,
initOverrides?: RequestInit
): Promise<GetEmployeePayrollsResponse> {
const response = await this.employeePayrollsAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Get payroll for employee
* Get Employee Payroll
*/
async employeePayrollsOneRaw(
requestParameters: HrisApiEmployeePayrollsOneRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetEmployeePayrollResponse>> {
if (requestParameters.payrollId === null || requestParameters.payrollId === undefined) {
throw new runtime.RequiredError(
'payrollId',
'Required parameter requestParameters.payrollId was null or undefined when calling employeePayrollsOne.'
)
}
if (requestParameters.employeeId === null || requestParameters.employeeId === undefined) {
throw new runtime.RequiredError(
'employeeId',
'Required parameter requestParameters.employeeId was null or undefined when calling employeePayrollsOne.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/payrolls/employees/{employee_id}/payrolls/{payroll_id}`
.replace(`{${'payroll_id'}}`, encodeURIComponent(String(requestParameters.payrollId)))
.replace(`{${'employee_id'}}`, encodeURIComponent(String(requestParameters.employeeId))),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetEmployeePayrollResponseFromJSON(jsonValue)
)
}
/**
* Get payroll for employee
* Get Employee Payroll
*/
async employeePayrollsOne(
requestParameters: HrisApiEmployeePayrollsOneRequest,
initOverrides?: RequestInit
): Promise<GetEmployeePayrollResponse> {
const response = await this.employeePayrollsOneRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* List schedules for employee, a schedule is a work pattern, not the actual worked hours, for an employee.
* List Employee Schedules
*/
async employeeSchedulesAllRaw(
requestParameters: HrisApiEmployeeSchedulesAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetEmployeeSchedulesResponse>> {
if (requestParameters.employeeId === null || requestParameters.employeeId === undefined) {
throw new runtime.RequiredError(
'employeeId',
'Required parameter requestParameters.employeeId was null or undefined when calling employeeSchedulesAll.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.passThrough !== undefined) {
queryParameters['pass_through'] = requestParameters.passThrough
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/schedules/employees/{employee_id}`.replace(
`{${'employee_id'}}`,
encodeURIComponent(String(requestParameters.employeeId))
),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetEmployeeSchedulesResponseFromJSON(jsonValue)
)
}
/**
* List schedules for employee, a schedule is a work pattern, not the actual worked hours, for an employee.
* List Employee Schedules
*/
async employeeSchedulesAll(
requestParameters: HrisApiEmployeeSchedulesAllRequest,
initOverrides?: RequestInit
): Promise<GetEmployeeSchedulesResponse> {
const response = await this.employeeSchedulesAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Create Employee
* Create Employee
*/
async employeesAddRaw(
requestParameters: HrisApiEmployeesAddRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<CreateEmployeeResponse>> {
if (requestParameters.employee === null || requestParameters.employee === undefined) {
throw new runtime.RequiredError(
'employee',
'Required parameter requestParameters.employee was null or undefined when calling employeesAdd.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/employees`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: EmployeeToJSON(requestParameters.employee)
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
CreateEmployeeResponseFromJSON(jsonValue)
)
}
/**
* Create Employee
* Create Employee
*/
async employeesAdd(
requestParameters: HrisApiEmployeesAddRequest,
initOverrides?: RequestInit
): Promise<CreateEmployeeResponse> {
const response = await this.employeesAddRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Apideck operates as a stateless Unified API, which means that the list endpoint only provides a portion of the employee model. This is due to the fact that most HRIS systems do not readily provide all data in every call. However, you can access the complete employee model through an employee detail call.
* List Employees
*/
async employeesAllRaw(
requestParameters: HrisApiEmployeesAllRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetEmployeesResponse>> {
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.cursor !== undefined) {
queryParameters['cursor'] = requestParameters.cursor
}
if (requestParameters.limit !== undefined) {
queryParameters['limit'] = requestParameters.limit
}
if (requestParameters.filter !== undefined) {
queryParameters['filter'] = requestParameters.filter
}
if (requestParameters.sort !== undefined) {
queryParameters['sort'] = requestParameters.sort
}
if (requestParameters.passThrough !== undefined) {
queryParameters['pass_through'] = requestParameters.passThrough
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/employees`,
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetEmployeesResponseFromJSON(jsonValue)
)
}
/**
* Apideck operates as a stateless Unified API, which means that the list endpoint only provides a portion of the employee model. This is due to the fact that most HRIS systems do not readily provide all data in every call. However, you can access the complete employee model through an employee detail call.
* List Employees
*/
async employeesAll(
requestParameters: HrisApiEmployeesAllRequest = {},
initOverrides?: RequestInit
): Promise<GetEmployeesResponse> {
const response = await this.employeesAllRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Delete Employee
* Delete Employee
*/
async employeesDeleteRaw(
requestParameters: HrisApiEmployeesDeleteRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<DeleteEmployeeResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling employeesDelete.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/employees/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'DELETE',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
DeleteEmployeeResponseFromJSON(jsonValue)
)
}
/**
* Delete Employee
* Delete Employee
*/
async employeesDelete(
requestParameters: HrisApiEmployeesDeleteRequest,
initOverrides?: RequestInit
): Promise<DeleteEmployeeResponse> {
const response = await this.employeesDeleteRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Get Employee
* Get Employee
*/
async employeesOneRaw(
requestParameters: HrisApiEmployeesOneRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<GetEmployeeResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling employeesOne.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields
}
if (requestParameters.filter !== undefined) {
queryParameters['filter'] = requestParameters.filter
}
if (requestParameters.passThrough !== undefined) {
queryParameters['pass_through'] = requestParameters.passThrough
}
const headerParameters: runtime.HTTPHeaders = {}
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/employees/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'GET',
headers: headerParameters,
query: queryParameters
},
initOverrides
)
return new runtime.JSONApiResponse(response, jsonValue =>
GetEmployeeResponseFromJSON(jsonValue)
)
}
/**
* Get Employee
* Get Employee
*/
async employeesOne(
requestParameters: HrisApiEmployeesOneRequest,
initOverrides?: RequestInit
): Promise<GetEmployeeResponse> {
const response = await this.employeesOneRaw(requestParameters, initOverrides)
return await response.value()
}
/**
* Update Employee
* Update Employee
*/
async employeesUpdateRaw(
requestParameters: HrisApiEmployeesUpdateRequest,
initOverrides?: RequestInit
): Promise<runtime.ApiResponse<UpdateEmployeeResponse>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError(
'id',
'Required parameter requestParameters.id was null or undefined when calling employeesUpdate.'
)
}
if (requestParameters.employee === null || requestParameters.employee === undefined) {
throw new runtime.RequiredError(
'employee',
'Required parameter requestParameters.employee was null or undefined when calling employeesUpdate.'
)
}
const queryParameters: any = {}
if (requestParameters.raw !== undefined) {
queryParameters['raw'] = requestParameters.raw
}
const headerParameters: runtime.HTTPHeaders = {}
headerParameters['Content-Type'] = 'application/json'
if (requestParameters.consumerId !== undefined && requestParameters.consumerId !== null) {
headerParameters['x-apideck-consumer-id'] = String(requestParameters.consumerId)
}
if (requestParameters.appId !== undefined && requestParameters.appId !== null) {
headerParameters['x-apideck-app-id'] = String(requestParameters.appId)
}
if (requestParameters.serviceId !== undefined && requestParameters.serviceId !== null) {
headerParameters['x-apideck-service-id'] = String(requestParameters.serviceId)
}
if (this.configuration && this.configuration.apiKey) {
headerParameters['Authorization'] = this.configuration.apiKey('Authorization') // apiKey authentication
}
const response = await this.request(
{
path: `/hris/employees/{id}`.replace(
`{${'id'}}`,
encodeURIComponent(String(requestParameters.id))
),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: EmployeeToJSON(requ