For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
SupportDeel Home
OverviewPlatformEmployer of RecordContractorsGlobal PayrollHREmbeddedDeel ITAPI ReferenceChangelog
OverviewPlatformEmployer of RecordContractorsGlobal PayrollHREmbeddedDeel ITAPI ReferenceChangelog
  • Resources
    • Blog
    • Community
  • Overview
    • Introduction
    • Getting started
  • Employer of Record
    • Overview
    • Hiring & contracts
    • Employment management
    • Amendments & offboarding
    • Worker onboarding
    • Worker self-service
  • Independent Contractor
    • Overview
    • Create & onboard
    • Manage contracts
  • EOR Endpoints
  • EOR Worker Endpoints
  • IC Endpoints
      • POSTCreate a timesheet entry
      • GETList of timesheets
      • GETList of timesheets by contract
      • GETRetrieve a single timesheet entry
      • POSTReview a single timesheet
      • PATCHUpdate a timesheet entry
LogoLogo
SupportDeel Home
IC EndpointsTimesheets

List of timesheets

GET
/timesheets
GET
/rest/v2/timesheets
$curl https://api.letsdeel.com/rest/v2/timesheets \
> -H "Authorization: Bearer <token>" \
> -H "Content-Type: application/json"
1{
2 "data": [
3 {
4 "id": "a3f1c9d2-4b7e-4f8a-9c3d-2e5b7f9a1c2d",
5 "type": "work",
6 "status": "approved",
7 "contract": {
8 "id": "c7d9e8f1-2a3b-4c5d-8e9f-0a1b2c3d4e5f",
9 "type": "ongoing_time_based",
10 "title": "Senior Software Engineer Contract"
11 },
12 "quantity": 8,
13 "worksheet": {
14 "days": 1,
15 "hours": 4,
16 "weeks": 0,
17 "minutes": 30
18 },
19 "created_at": "2024-06-15T09:30:00Z",
20 "description": "Timesheet for week 24, 2024",
21 "reported_by": {
22 "id": "d4e5f6a7-b8c9-4d0e-9f1a-2b3c4d5e6f7a",
23 "full_name": "John Smith"
24 },
25 "total_amount": "1200.0000",
26 "currency_code": "GBP",
27 "date_submitted": "2024-06-22T10:00:00Z",
28 "scale": "custom",
29 "attachment": {
30 "key": "timesheet-attachments/2024/06/15/a3f1c9d2-report.pdf",
31 "filename": "June_Timesheet_Report.pdf"
32 },
33 "reviewed_by": {
34 "id": "e7f8a9b0-c1d2-4e3f-8a9b-0c1d2e3f4a5b",
35 "remarks": "Approved with no issues",
36 "reviewed_at": "2024-06-16T14:45:00Z",
37 "full_name": "Jane Smith"
38 },
39 "custom_scale": "hourly",
40 "payment_cycle": {
41 "end_date": "2024-06-21T23:59:59Z",
42 "start_date": "2024-06-15T00:00:00Z"
43 },
44 "hourly_report_preset": {
45 "id": "preset-12345",
46 "rate": 150,
47 "title": "Standard Hourly Rate",
48 "description": "Standard hourly rate for software engineering tasks"
49 }
50 }
51 ],
52 "page": {
53 "total_rows": 1
54 }
55}

Returns a paginated list of timesheets in the account, optionally filtered by contract_id, contract_types, statuses, reporter_id, or date range. Token scopes: timesheets:read

Was this page helpful?
Previous

List of timesheets by contract

Next
Built with

Authentication

AuthorizationBearer
## Authentication The Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail. ```curl curl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \ -H 'Authorization: Bearer YOUR-TOKEN-HERE' ``` [Learn more about authentication](/api/authentication)
OR
AuthorizationBearer
Standard OAuth2 security scheme based on https://swagger.io/docs/specification/authentication/

Query parameters

contract_idstringOptional
Id of an Deel contract.
contract_typeslist of enums or enumOptional
types of contracts to filter
statuseslist of enums or enumOptional
reporter_idstringOptionalformat: "uuid"
date_fromstringOptionalformat: "date"
date_tostringOptionalformat: "date"
limitstringOptionalformat: "^[0-9]+$"
offsetstringOptionalformat: "^[0-9]+$"

Response

Successful operation.
datalist of objects
pageobject

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
500
Internal Server Error

Authentication

The Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.

1curl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \
2 -H 'Authorization: Bearer YOUR-TOKEN-HERE'

Learn more about authentication

Standard OAuth2 security scheme based on https://swagger.io/docs/specification/authentication/