Skip to main content

Component

Manage components

GET

Summary

Get Components

Description

Get all Components of a tenant

Parameters
NameLocated inDescriptionRequiredSchema
sortOrderquerySort OrderNostring
sortFieldquerySort FieldNostring
limitqueryLimit per PageNointeger
currentPagequeryCurrent Page numberNointeger
searchStringquerySearch StringNostring
Responses
CodeDescriptionSchema
200OKdto.ComponentsResponse
Request URL
https://bifrost-us.deskera.com/v1/people-component/components/tenant?limit=20&currentPage=1
Curl
curl -X 'GET' \
'https://bifrost-us.deskera.com/v1/people-component/components/tenant?limit=20&currentPage=1' \
-H 'accept: application/json' \
-H 'x-access-token: sampletoken'
Sample Request

Sample Response
{
"components": [
{
"name": "Salary Advance",
"isActive": true,
"type": "EARNING",
"isForAllEmployee": false,
"compliance": {
"countryCode": ",
"pf": false,
"esi": false,
"taxexempt": false
},
"defaultComponent": false,
"id": "627dd963cbc52ce913e564df",
"employees": null,
"isVariable": false,
"isFormula": false,
"componentConfig": {
"configureAmountBasis": ",
"basisComponentId": ",
"componentPercent": 0,
"applicableValues": null,
"amountPerDay": 0,
"deductionType": "posttaxdeduction"
},
"frequency": {
"period": ",
"occurrence": null,
"when": "
},
"isHidden": true,
"subType": "salary_advance",
"includeInCTC": false,
"includeInOTCalc": false,
"isUnpaidIncluded": false,
"formulaConfig": null,
"formula": "
}

],
"filterResponse": {
"currentPage": 1,
"count": 1,
"limit": 20,
"totalPages": 1,
"totalCount": 1
}
}

POST

Summary

Add Component

Description

Add Component for a Tenant

Parameters
NameLocated inDescriptionRequiredSchema
payrunbodyComponent Request BodyYesdto.Component
Responses
CodeDescriptionSchema
200OKdto.ComponentResponse

"

Request URL
https://bifrost-us.deskera.com/v1/people-component/component
Curl
curl-X'POST'\'https://bifrost-us.deskera.com/v1/people-component/component'\-H'accept: application/json'\-H'x-access-token: sampletoken'\-H'Content-Type: application/json'\-d'{   "compliance": {     "countryCode": "IN",     "esi": false,     "pf": false,     "taxexempt": false,     "deductionType": "posttaxdeduction",     "hasCPF": false,     "taxable": false,     "SDL": false,     "SHG": false,     "CPF": "AW"   },   "countryCode": "IN",   "componentConfig": {     "amountPerDay": 0,     "applicableValues": null,     "basisComponentId": ",     "componentPercent": 0,     "configureAmountBasis": ",     "deductionType": "posttaxdeduction"   },   "defaultComponent": false,   "employees": [        ],   "frequency": {     "occurrence": null,     "period": "everyPayrun",     "when": "   },   "includeInCTC": false,   "includeInOTCalc": false,   "isActive": true,   "isForAllEmployee": true,   "isHidden": false,   "isVariable": false,   "isUnpaidIncluded": true,   "name": "Travel2",   "subType": ",   "type": "EARNING",   "isFormula": false,   "formula": ",   "formulaConfig": null }'```

##### Sample Request
```java
{
"compliance": {
"countryCode": "IN",
"esi": false,
"pf": false,
"taxexempt": false,
"deductionType": "posttaxdeduction",
"hasCPF": false,
"taxable": false,
"SDL": false,
"SHG": false,
"CPF": "AW"
},
"countryCode": "IN",
"componentConfig": {
"amountPerDay": 0,
"applicableValues": null,
"basisComponentId": ",
"componentPercent": 0,
"configureAmountBasis": ",
"deductionType": "posttaxdeduction"
},
"defaultComponent": false,
"employees": [

],
"frequency": {
"occurrence": null,
"period": "everyPayrun",
"when": "
},
"includeInCTC": false,
"includeInOTCalc": false,
"isActive": true,
"isForAllEmployee": true,
"isHidden": false,
"isVariable": false,
"isUnpaidIncluded": true,
"name": "Travel2",
"subType": ",
"type": "EARNING",
"isFormula": false,
"formula": ",
"formulaConfig": null
}```

##### Sample Response
```java
{
"name": "Travel2",
"isActive": true,
"type": "EARNING",
"isForAllEmployee": true,
"compliance": {
"countryCode": "IN",
"pf": false,
"esi": false,
"taxexempt": false
},
"defaultComponent": false,
"id": "635fdc6f1d1752891f434072",
"employees": [],
"isVariable": false,
"isFormula": false,
"componentConfig": {
"configureAmountBasis": ",
"basisComponentId": ",
"componentPercent": 0,
"applicableValues": null,
"amountPerDay": 0,
"deductionType": "posttaxdeduction"
},
"frequency": {
"period": "everyPayrun",
"occurrence": null,
"when": "
},
"isHidden": false,
"subType": ",
"includeInCTC": false,
"includeInOTCalc": false,
"isUnpaidIncluded": true,
"formulaConfig": null,
"formula": "
}
Security
Security SchemaScopes
ApiKeyAuth

GET

Summary

Get Component By Id

Description

Get Component by Id for a Tenant

Parameters
NameLocated inDescriptionRequiredSchema
idpathComponent IdYesstring
Responses
CodeDescriptionSchema
200OKdto.ComponentResponse
Security
Security SchemaScopes
ApiKeyAuth

PUT

Summary

Update Component

Description

Update Component for a Tenant

Parameters
NameLocated inDescriptionRequiredSchema
idpathComponent IdYesstring
payrunbodyComponent Request BodyYesdto.Component
Responses
CodeDescriptionSchema
200OKdto.ComponentResponse

"

Request URL
https://bifrost-us.deskera.com/v1/people-component/component/{id}
Curl
curl-X'PUT'\'https://bifrost-us.deskera.com/v1/people-component/component/635fdc6f1d1752891f434072'\-H'accept: application/json'\-H'x-access-token: sampletoken'\-H'Content-Type: application/json'\-d'{   "compliance": {     "countryCode": "IN",     "esi": false,     "pf": false,     "taxexempt": false,     "deductionType": "posttaxdeduction",     "hasCPF": false,     "taxable": false,     "SDL": false,     "SHG": false,     "CPF": "AW"   },   "countryCode": "IN",   "componentConfig": {     "amountPerDay": 0,     "applicableValues": null,     "basisComponentId": ",     "componentPercent": 0,     "configureAmountBasis": ",     "deductionType": "posttaxdeduction"   },   "defaultComponent": false,   "employees": [        ],   "frequency": {     "occurrence": null,     "period": "everyPayrun",     "when": "   },   "includeInCTC": false,   "includeInOTCalc": false,   "isActive": true,   "isForAllEmployee": true,   "isHidden": false,   "isVariable": false,   "isUnpaidIncluded": true,   "name": "Travel2",   "subType": ",   "type": "EARNING",   "isFormula": false,   "formula": ",   "formulaConfig": null }'```

##### Sample Request
```java
{
"compliance": {
"countryCode": "IN",
"esi": false,
"pf": false,
"taxexempt": false,
"deductionType": "posttaxdeduction",
"hasCPF": false,
"taxable": false,
"SDL": false,
"SHG": false,
"CPF": "AW"
},
"countryCode": "IN",
"componentConfig": {
"amountPerDay": 0,
"applicableValues": null,
"basisComponentId": ",
"componentPercent": 0,
"configureAmountBasis": ",
"deductionType": "posttaxdeduction"
},
"defaultComponent": false,
"employees": [

],
"frequency": {
"occurrence": null,
"period": "everyPayrun",
"when": "
},
"includeInCTC": false,
"includeInOTCalc": false,
"isActive": true,
"isForAllEmployee": true,
"isHidden": false,
"isVariable": false,
"isUnpaidIncluded": true,
"name": "Education",
"subType": ",
"type": "EARNING",
"isFormula": false,
"formula": ",
"formulaConfig": null
}```

##### Sample Response
```java
{
"name": "Education",
"isActive": true,
"type": "EARNING",
"isForAllEmployee": true,
"compliance": {
"countryCode": "IN",
"pf": false,
"esi": false,
"taxexempt": false
},
"defaultComponent": false,
"id": "635fdc6f1d1752891f434072",
"employees": [],
"isVariable": false,
"isFormula": false,
"componentConfig": {
"configureAmountBasis": ",
"basisComponentId": ",
"componentPercent": 0,
"applicableValues": null,
"amountPerDay": 0,
"deductionType": "posttaxdeduction"
},
"frequency": {
"period": "everyPayrun",
"occurrence": null,
"when": "
},
"isHidden": false,
"subType": ",
"includeInCTC": false,
"includeInOTCalc": false,
"isUnpaidIncluded": true,
"formulaConfig": null,
"formula": "
}
Security
Security SchemaScopes
ApiKeyAuth

DELETE

Summary

Bulk Delete Components By Ids

Description

Bulk Delete Components by Ids for a Tenant

Parameters
NameLocated inDescriptionRequiredSchema
idsbodyComponent IdsYes[ dto.BulkComponentRequest ]
Responses
CodeDescriptionSchema
200OKdto.Component
Request URL
https://bifrost-us.deskera.com/v1/people-component/components/bulk
Curl
curl -X 'DELETE' \
'https://bifrost-us.deskera.com/v1/people-component/components/bulk' \
-H 'accept: application/json' \
-H 'x-access-token: sampletoken' \
-H 'Content-Type: application/json' \
-d '[
{
"componentId": "635fdc6f1d1752891f434072"
}
]'```

##### Sample Request
```java
[
{
"componentId": "635fdc6f1d1752891f434072"
}
]```

##### Sample Response
```java
{
"name": "",
"isActive": false,
"type": "",
"isForAllEmployee": false,
"countryCode": "",
"compliance": null,
"employees": null,
"isVariable": false,
"isFormula": false,
"componentConfig": {
"configureAmountBasis": "",
"basisComponentId": "",
"componentPercent": 0,
"applicableValues": null,
"amountPerDay": 0,
"deductionType": ""
},
"frequency": {
"period": "",
"occurrence": null,
"when": ""
},
"includeInCTC": false,
"includeInOTCalc": false,
"isUnpaidIncluded": false,
"formulaConfig": null,
"formula": ""
}
Security
Security SchemaScopes
ApiKeyAuth

Manage Benefits

GET

Summary

Get Benefits

Description

Get all benefits for a tenant

Parameters
NameLocated inDescriptionRequiredSchema
sortOrderquerySort OrderNostring
sortFieldquerySort FieldNostring
limitqueryLimit per pageNointeger
currentPagequeryCurrent page numberNointeger
searchStringquerySearch stringNostring
Responses
CodeDescriptionSchema
200OKdto.BenefitsResponse
Request URL
https://bifrost-us.deskera.com/v1/people-component/benefits/tenant?sortOrder=asc&sortField=createdAt&limit=20&currentPage=1
Curl
curl -X 'GET' \
'https://bifrost-us.deskera.com/v1/people-component/benefits/tenant?sortOrder=asc&sortField=createdAt&limit=20&currentPage=1' \
-H 'accept: application/json' \
-H 'x-access-token: sampletoken'```

##### Sample Request
```java
Sample Response
{
"benefits": [
{
"benefitId": "635fdfb33295b0023353c31d",
"name": "A",
"isActive": true,
"employeeDeductionAmount": 200,
"employeeDeductionType": "amount",
"employerDeductionAmount": 100,
"employerDeductionType": "amount",
"isForAllEmployees": true,
"annualMaxContribution": 0,
"countryCode": "US",
"compliance": {
"countryCode": "US",
"deductionType": "pretaxdeduction",
"bsiCode": ""
},
"users": []
}
],
"filterResponse": {
"currentPage": 1,
"count": 1,
"limit": 20,
"totalPages": 1,
"totalCount": 1
}
}
Security
Security SchemaScopes
ApiKeyAuth

PUT

Summary

Update a Benefit

Description

Update a benefit

Parameters
NameLocated inDescriptionRequiredSchema
benefitbodyBenefit request bodyYesdto.Benefit
Responses
CodeDescriptionSchema
200OKdto.Benefit
Request URL
https://bifrost-us.deskera.com/v1/people-component/benefit
Curl
curl -X 'PUT' \
'https://bifrost-us.deskera.com/v1/people-component/benefit' \
-H 'accept: application/json' \
-H 'x-access-token: sampletoken' \
-H 'Content-Type: application/json' \
-d '{
"benefitId": "635fe1a91d1752891f434073",
"name": "Retirement plans",
"isActive": true,
"employeeDeductionAmount": 500,
"employeeDeductionType": "amount",
"employerDeductionAmount": 200,
"employerDeductionType": "amount",
"isForAllEmployees": true,
"annualMaxContribution": 0,
"countryCode": "US",
"compliance": {
"countryCode": "US",
"deductionType": "pretaxdeduction",
"bsiCode": ""
},
"users": []
}'```

##### Sample Request
```java
{
"benefitId": "635fe1a91d1752891f434073",
"name": "Retirement plans",
"isActive": true,
"employeeDeductionAmount": 500,
"employeeDeductionType": "amount",
"employerDeductionAmount": 200,
"employerDeductionType": "amount",
"isForAllEmployees": true,
"annualMaxContribution": 0,
"countryCode": "US",
"compliance": {
"countryCode": "US",
"deductionType": "pretaxdeduction",
"bsiCode": ""
},
"users": []
}```

##### Sample Response
```java
{
"benefitId": "635fe1a91d1752891f434073",
"name": "Retirement plans",
"isActive": true,
"employeeDeductionAmount": 500,
"employeeDeductionType": "amount",
"employerDeductionAmount": 200,
"employerDeductionType": "amount",
"isForAllEmployees": true,
"annualMaxContribution": 0,
"countryCode": "US",
"compliance": {
"countryCode": "US",
"deductionType": "pretaxdeduction",
"bsiCode": ""
},
"users": []
}
Security
Security SchemaScopes
ApiKeyAuth

POST

Summary

Add Benefit

Description

Add a benefit for one or more users of a tenant

Parameters
NameLocated inDescriptionRequiredSchema
benefitbodyBenefit request bodyYesdto.Benefit
Responses
CodeDescriptionSchema
200OKdto.Benefit
Request URL
https://bifrost-us.deskera.com/v1/people-component/benefit
Curl
curl-X'POST'\'https://bifrost-us.deskera.com/v1/people-component/benefit'\-H'accept: application/json'\-H'x-access-token: '\-H'Content-Type: application/json'\-d'{   "annualMaxContribution": 0,   "benefitId": "",   "compliance": {     "countryCode": "US",     "deductionType": "pretaxdeduction"   },   "countryCode": "US",   "employeeDeductionAmount": 500,   "employeeDeductionType": "amount",   "employerDeductionAmount": 200,   "employerDeductionType": "amount",   "isActive": true,   "isForAllEmployees": true,   "name": "C",   "type": "pretaxdeduction",   "users": [        ] }'```

##### Sample Request
```java
{
"annualMaxContribution": 0,
"benefitId": "",
"compliance": {
"countryCode": "US",
"deductionType": "pretaxdeduction"
},
"countryCode": "US",
"employeeDeductionAmount": 500,
"employeeDeductionType": "amount",
"employerDeductionAmount": 200,
"employerDeductionType": "amount",
"isActive": true,
"isForAllEmployees": true,
"name": "C",
"type": "pretaxdeduction",
"users": [

]
}```

##### Sample Response
```java
{
"benefitId": "635fe1a91d1752891f434073",
"name": "C",
"isActive": true,
"employeeDeductionAmount": 500,
"employeeDeductionType": "amount",
"employerDeductionAmount": 200,
"employerDeductionType": "amount",
"isForAllEmployees": true,
"annualMaxContribution": 0,
"countryCode": "US",
"compliance": {
"countryCode": "US",
"deductionType": "pretaxdeduction",
"bsiCode": ""
},
"users": []
}
Security
Security SchemaScopes
ApiKeyAuth

GET

Summary

Get Benefit By Id

Description

Get Benefit by Id for a Tenant

Parameters
NameLocated inDescriptionRequiredSchema
idpathBenefit IdYesstring
Responses
CodeDescriptionSchema
200OKdto.Benefit
Security
Security SchemaScopes
ApiKeyAuth

Models

dto.ApplicableValues

NameTypeDescriptionRequired
metronumberNo
nonMetronumberNo

dto.Benefit

NameTypeDescriptionRequired
annualMaxContributionnumberNo
benefitIdstringNo
complianceNo
countryCodestringNo
employeeDeductionAmountnumberNo
employeeDeductionTypestringNo
employerDeductionAmountnumberNo
employerDeductionTypestringNo
isActivebooleanNo
isForAllEmployeesbooleanNo
namestringNo
users[ dto.user ]No

dto.BenefitsResponse

NameTypeDescriptionRequired
benefits[ dto.Benefit ]No
filterResponsedto.FilterResponseNo

dto.BulkComponentRequest

NameTypeDescriptionRequired
componentIdstringNo

dto.BulkIdRequest

NameTypeDescriptionRequired
ids[ string ]No

dto.Component

NameTypeDescriptionRequired
complianceNo
componentConfigdto.ComponentConfigNo
countryCodestringNo
employees[ string ]No
frequencydto.FrequencyNo
includeInCTCbooleanNo
includeInOTCalcbooleanNo
isActivebooleanNo
isForAllEmployeebooleanNo
isUnpaidIncludedbooleanNo
isVariablebooleanNo
namestringNo
typestringNo

dto.ComponentConfig

NameTypeDescriptionRequired
amountPerDaynumberNo
applicableValuesdto.ApplicableValuesNo
basisComponentIdstringNo
componentPercentnumberNo
configureAmountBasisstringNo
deductionTypestringNo

dto.ComponentResponse

NameTypeDescriptionRequired
complianceNo
componentConfigdto.ComponentConfigNo
defaultComponentbooleanNo
employees[ string ]No
frequencydto.FrequencyNo
idstringNo
includeInCTCbooleanNo
includeInOTCalcbooleanNo
isActivebooleanNo
isForAllEmployeebooleanNo
isHiddenbooleanNo
isUnpaidIncludedbooleanNo
isVariablebooleanNo
namestringNo
subTypestringNo
typestringNo

dto.ComponentsResponse

NameTypeDescriptionRequired
components[ dto.ComponentResponse ]No
filterResponsedto.FilterResponseNo

dto.FilterResponse

NameTypeDescriptionRequired
countintegerNo
currentPageintegerNo
limitintegerNo
totalCountintegerNo
totalPagesintegerNo

dto.Frequency

NameTypeDescriptionRequired
occurrence[ string ]No
periodstringNo
whenstringNo

dto.UserBenefits

NameTypeDescriptionRequired
benefits[ dto.Benefit ]No
iamUserIdintegerNo
userIdstringNo

dto.benefitAmounts

NameTypeDescriptionRequired
annualMaxContributionnumberNo
employeeDeductionAmountnumberNo
employeeDeductionTypestringNo
employerDeductionAmountnumberNo
employerDeductionTypestringNo

dto.user

NameTypeDescriptionRequired
benefitAmountsdto.benefitAmountsthe benefitAmount struct holds amountNo
iamUserIdintegerNo
userIdstringNo

models.ComponentDetails

NameTypeDescriptionRequired
idstringNo
metamodels.MetaNo

models.Meta

NameTypeDescriptionRequired
countryCodestringNo
employees[ string ]No
isActivebooleanNo
isForAllEmployeebooleanNo
isSalaryAdvanceComponentbooleanNo
isVariablebooleanNo
namestringNo
typestringNo