Stop the running timer on a card
POST
/boards/{board}/cards/{card}/time-tracks/stop
const url = 'https://projects.work.optidata.cloud/api/boards/1/cards/1/time-tracks/stop';const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://projects.work.optidata.cloud/api/boards/1/cards/1/time-tracks/stop \ --header 'Authorization: Bearer <token>'Stops the card’s open time entry, computes the tracked seconds and logs
a “clocked” interaction on the card. Returns 404 when no timer is
running.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”board
required
integer
Board id.
card
required
integer
Card id (must belong to the board).
Responses
Section titled “Responses”Timer stopped.
Media typeapplication/json
object
message
string
Example
{ "message": "Time tracking stopped"}Missing, invalid or expired bearer passport.
Media typeapplication/json
object
error
string
Example
{ "error": "JWT passport exception: Missing bearer token in request"}The authenticated user lacks the required board permission.
Media typeapplication/json
object
message
string
Example
{ "message": "This action is unauthorized."}No running timer on this card (or board/card not found).
Media typeapplication/json
object
message
string
Example
{ "message": "Time tracking not found"}Validation failed.
Media typeapplication/json
object
message
First validation error message.
string
errors
Map of field name → list of error messages.
object
key
additional properties
Array<string>
Example
{ "message": "The name field is required.", "errors": { "name": [ "The name field is required." ] }}