Skip to main content

Correct recorded time or notes

PATCH/api/v1/time_entries/{id}

Managers can correct team entries; other members can correct their own. Entries for the same person must not overlap. A completed entry cannot be reopened.

  • Needs an API key, and runs with the access of the member who made the key.
  • Send an Idempotency-Key. The same key with the same request within 24 hours gives the first answer again and changes nothing.
  • A connected AI assistant can use it too, as updateTimeEntry.

Parameters

In the address

  • idstring (uuid)required

Headers

  • Idempotency-Keystringrequired

    Unique user-scoped key for safely retrying this mutation for 24 hours.

    At least 1 character. Up to 200 characters.

Request body

Sent as application/json.

  • time_entryobjectrequired

    Fields(4)
    • started_atstring (date-time)

    • ended_atstring (date-time)

    • notesstring or null

      Up to 5000 characters.

    • lock_versioninteger

      At least 0.

Responses

200Recorded job time, including the current elapsed duration.

  • dataobjectrequired

    Fields(19)
    • lock_versionintegerrequired

      At least 0.

    • created_atstring (date-time)required

    • updated_atstring (date-time)required

    • idstring (uuid)required

    • account_idstring (uuid)required

    • job_idstring (uuid) or nullrequired

    • job_titlestring or nullrequired

    • job_numberstring or nullrequired

    • visit_idstring (uuid) or null

    • visit_titlestring or null

    • purposestring

      `work` for job and work-visit time, `quote_assessment` for quote visit time.

      One of: work, quote_assessment.

    • membership_idstring (uuid)required

    • membership_namestringrequired

    • recorded_by_idstring (uuid)required

    • updated_by_idstring (uuid)required

    • started_atstring (date-time)required

    • ended_atstring (date-time) or nullrequired

    • duration_secondsintegerrequired

      At least 0.

    • notesstring or null

A refusal answers in the one error shape every operation shares.

Example

A request our own tests send. The ids are made up: put your own in their place.

curl -X PATCH "https://app.tradesender.co.uk/api/v1/time_entries/b96770e6-f74f-54d6-a94c-656024c74db0" \
  -H "Authorization: Bearer $TRADESENDER_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "time_entry": {
    "notes": "Forgot to clock out.",
    "lock_version": 0
  }
}'