HomeGuidesAPI ReferenceChangelogDiscussions
Guides

Scopes specify the exact level of access needed, ensuring OAuth tokens are restricted to only the required resources. They do not grant any permissions beyond what the user already has.

Each scope represents a set of resources within our API. The list of resources accessible by the generated OAuth token is strictly limited to the scopes configured in the OAuth application.

⚠️

If you are a Factorial Partner

If you have an OAuth application in production and wish to modify your scopes list, please fill up this form.

How do scopes work

When you create a new OAuth application you will be able to select the scopes you want your app to have access to.

These scopes will be sent through the URL when requesting the authorization code:

https://api.factorialhr.com/oauth/authorize?client_id=<YOUR_CLIENT_ID>&redirect_uri=<YOUR_REDIRECT_URI>&response_type=code&scope=project_management%20time_tracking

Then the client will review the scopes sent though the URL and authorize/deny the app access to these.


Once the user authorizes the app to access the requested scopes, you can continue to request the access token. The access token generated will be restricted to the authorized scopes.

NOTE: If you change the scopes in an already existing OAuth app, the already-generated tokens will become invalid so the client will need to re-authorize the app to be able to re-generate the OAuth tokens with the updated scopes list.

Scopes list

Currently, our scopes allow both read and write actions within the resources.

ScopeEndpoints
bankingBanking > BankAccount
Banking > BankAccountNumber > Upserts
Banking > Transaction
company_legal_entitiesCompanies > Legal Entities
company_holidaysHolidays > CompanyHoliday
company_locationsLocations > Location
Locations > WorkArea
contractsContracts > Compensation
Contracts > ContractTemplate
Contracts > ContractVersion
Contracts > FrenchContractType
Contracts > GermanContractType
Contracts > PortugueseContractType
Contracts > ReferenceContract
Contracts > SpanishContractType
Contracts > SpanishEducationLevel
Contracts > SpanishProfessionalCategory
Contracts > Taxonomy
custom_fieldsCustomFields > Field
CustomFields > Option
CustomFields > ResourceField
CustomFields > Value
CustomResources > Schema
CustomResources > Value
documentsDocuments > Document
Documents > DownloadUrl
employeesEmployees > Employee
Teams > Membership
Teams > Team
employee_updatesBookkeepersManagement > Incidence
EmployeeUpdates > Absence
EmployeeUpdates > ContractChange
EmployeeUpdates > NewHire
EmployeeUpdates > PersonalChange
EmployeeUpdates > Summary
EmployeeUpdates > Termination
expensesExpenses > Expensable
Expenses > Expense
Expenses > Milage
Expenses > PerDiem
financeFinance > Account
Finance > AccountSetting
Finance > Contact
Finance > CostCenter
Finance > CostCenterMembership
Finance > FinancialDocument
Finance > JournalEntry
Finance > JournalLine
Finance > TaxRate
Finance > TaxType
integrationsPayrollIntegrationsBase > Code
job_catalogJobCatalog > Level
JobCatalog > Role
marketplaceMarketplace > InstallationSettings
payrollPayroll > FamilySituations
Payroll > PolicyPeriod
PayrollEmployees > Identifier
payroll_supplementsPayroll > Supplement
performancePerformance > Agreement
Performance > CompanyEmployeeScoreScale
Performance > EmployeeScoreScale
Performance > ReviewEmployeeScore
Performance > ReviewEvaluation
Performance > ReviewEvaluationAnswer
Performance > ReviewOwner
Performance > ReviewProcess
Performance > ReviewEstimatedTarget
Performance > ReviewProcessTarget
Performance > ReviewQuestionnarieByStrategy
Performance > ReviewVisibilitySetting
Performance > TargetManager
postsPosts > Comment
Posts > Group
Posts > Post
project_management_expensesProjectManagement > ExpenseRecord
ProjectManagement > ExportableExpense
ProjectManagement > ExportableProject
project_management_projectsProjectManagement > Project
ProjectManagement > ProjectTask
ProjectManagement > ProjectWorker
ProjectManagement > Subproject
project_management_timeProjectManagement > FlexibleTimeRecord
ProjectManagement > FlexibleTimeRecordComment
ProjectManagement > TimeRecord
shift_managementShiftManagement > Shift
tasksTasks > Task
Tasks > TaskFile
time_offTimeoff > Allowance
Timeoff > AllowanceIncidence
Timeoff > AllowanceStat
Timeoff > BlockedPeriod
Timeoff > Leave
Timeoff > LeaveType
Timeoff > Policy
Timeoff > PolicyAssignment
Timeoff > PolicyTimeline
time_trackingAttendance > BreakConfiguration
Attendance > EditTimesheetRequest
Attendance > EstimatedTime
Attendance > OpenShift
Attendance > OvertimeRequest
Attendance > Shift
Attendance > WorkedTime
TimePlanning > PlanningVersion
TimeSettings > BreakConfiguration
WorkSchedule > DayConfiguration
WorkSchedule > OverlapPeriod
WorkSchedule > Schedule
trainingsTrainings > Category
Trainings > Session
Trainings > SessionAccessMembership
Trainings > SessionAttendance
Trainings > Training
Trainings > TrainingMembership
recruitmentAts > Answer
Ats > Application
Ats > ApplicationPhase
Ats > Candidate
Ats > CandidateSource
Ats > EvaluationForm
Ats > Feedback
Ats > HiringStage
Ats > JobPosting
Ats > Message
Ats > Question
Ats > RejectionReason