Skip to main content

Overview

A Contract in Firstwork represents the formal relationship between a User and a Company. It’s the core entity for workforce management — tracking employment status, role assignments, legal entity affiliation, and access permissions.

Contract Model

FieldDescription
UserThe individual this contract belongs to
CompanyThe organization the contract is with
Legal EntityThe subsidiary or entity under which the contract operates
StatusCurrent status (ACTIVE, INACTIVE, TERMINATED, etc.)
Is AdminWhether this contract has admin privileges
Contract TypeEmployee, contractor, temporary, etc.
Start DateWhen the contract begins
End DateWhen the contract ends (if applicable)
Work LocationAssigned work location

Contract Statuses

StatusDescription
ACTIVECurrently employed/contracted
INACTIVETemporarily suspended
TERMINATEDEmployment has ended
PENDINGAwaiting activation

Access Control

Each contract is assigned an Access Control List (ACL) that determines what data and actions the user can access within the company.

Permission Levels

  • Super Admin — Full access to all resources and settings
  • Admin — Broad access with some restrictions
  • Manager — Access to their team and assigned resources
  • Staff — Limited access based on role
  • Read-Only — View-only access

Permission Rules

Permissions are defined through Permission Rules that specify:
  • Action — READ or WRITE
  • Entity Type — What type of data (applications, forms, contracts, etc.)
  • Scope — Inclusion or exclusion rules
Permissions are managed through the dashboard under Settings > Access Control.

Contract Creation

Contracts can be created in several ways:

Manual Creation

Admins can create contracts through the dashboard by associating a user with the company.

Via Automation

The Contract Creation Action in automations can automatically create contracts when certain conditions are met (e.g., a candidate reaches the “Offer Accepted” stage).

Bulk Creation

For high-volume operations, Firstwork supports bulk contract creation, enabling you to onboard hundreds of workers simultaneously.

Via API

External systems can create contracts through the API.

Contract and Onboarding

When a contract is created (typically after a successful hiring process), the user can be enrolled in an Onboarding Flow that guides them through:
  1. Additional document collection
  2. Policy acknowledgments
  3. Training course enrollment (LMS)
  4. System access provisioning
  5. Equipment requests

Automations

Contracts can trigger automations when:
  • Status changes — Contract activated, suspended, or terminated
  • Field updates — Legal entity changed, role updated
  • Scheduled events — Contract expiration approaching
Common automation actions for contracts:
  • Send welcome/exit emails
  • Update external systems via webhooks
  • Create check-in forms for recurring reviews
  • Enroll in training courses

Bulk Operations

Firstwork supports bulk contract operations:
  • Bulk create — Create multiple contracts from a CSV or hiring flow
  • Bulk status update — Change status for multiple contracts
  • Bulk automation trigger — Fire automations for selected contracts
These operations run reliably in the background with progress tracking and error handling.