Skip to content
Pitch2SaleDevelopers
Open the app
Early access: these pages are being written and reviewed. Facts in the header boxes come straight from the product.

Log a time entry manually

POST
/api/v1/time-entries
curl --request POST \
--url https://api.pitch2sale.com/api/v1/time-entries \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "project_id": "example", "task_id": "example", "description": "example", "start_time": "2026-04-15T12:00:00Z", "end_time": "2026-04-15T12:00:00Z", "is_billable": true, "duration_minutes": 1 }'
Media typeapplication/json
object
project_id
required
string
/^[0-9a-fA-F]{24}$/
task_id
Any of:
string
/^[0-9a-fA-F]{24}$/
description
Any of:
string
<= 2000 characters
start_time
required
string format: date-time
end_time
required
string format: date-time
is_billable
boolean
duration_minutes
number
Examplegenerated
{
"project_id": "example",
"task_id": "example",
"description": "example",
"start_time": "2026-04-15T12:00:00Z",
"end_time": "2026-04-15T12:00:00Z",
"is_billable": true,
"duration_minutes": 1
}

The new entry

Media typeapplication/json
object
time_entry
required
object
_id
required
string
key
additional properties
any
Examplegenerated
{
"time_entry": {
"_id": "example"
}
}

Validation failed

Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"details": [
{
"field": "example",
"message": "example",
"code": "example"
}
]
}

Authentication required or token invalid

Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"details": [
{
"field": "example",
"message": "example",
"code": "example"
}
]
}

Role permission or token scope missing

Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"details": [
{
"field": "example",
"message": "example",
"code": "example"
}
]
}

Rate limit exceeded

Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{
"error": "example",
"code": "example",
"message": "example",
"details": [
{
"field": "example",
"message": "example",
"code": "example"
}
]
}