↑ ↓ to navigate · ↵ to open See all results
GET /api/v1/people/{record}/timeline/{type}/{entry}

Get a person timeline entry

Read one event or to-do from a person’s timeline with its editable values, files, and comments.

Last updated

Request

GET /api/v1/people/{record}/timeline/{type}/{entry}

Requires people:read. For a todo entry, people:todos is required as well. See token permissions.

Send Authorization: Bearer YOUR_API_TOKEN and Accept: application/json.

Path parameters

record integer Required
The numeric person ID in your token’s organization.
type string Required
person_location_event for an event recorded on this person, or todo for one of its to-dos. This matches the type in the timeline.
entry integer Required
The entry’s event_id from the timeline, or the to-do id.

Query parameters

This endpoint does not use query parameters.

Example

Set ASSETCENTER_API_TOKEN as described in the quick start. Replace example record and option IDs with values from your organization.

cURL / Bash
curl --request GET "https://my.assetcenter.app/api/v1/people/123/timeline/person_location_event/901" \
  --header "Authorization: Bearer $ASSETCENTER_API_TOKEN" \
  --header "Accept: application/json"

Response

200 OK. Illustrative values; IDs, fields, and timestamps will differ.

JSON
{
  "data": {
    "resource": "people",
    "record_id": 123,
    "entry_id": 901,
    "type": "person_location_event",
    "version": "9b65205d14352a77bf1dbe6844e1a01c7c5a2bd74a68d662b6d7192593d9061b",
    "timezone": "UTC",
    "can_update": true,
    "can_delete": true,
    "values": {
      "event_date": "2026-10-01T16:30:00.000000Z",
      "description": "Issued at front desk.",
      "field_values": {
        "104": "B-1042"
      }
    },
    "fields": [
      {
        "key": "event_date",
        "type": "datetime",
        "required": true
      },
      {
        "key": "description",
        "type": "editor",
        "required": false
      },
      {
        "key": "field_values.104",
        "type": "text",
        "required": true
      }
    ],
    "event": {
      "id": "person_location_event:901",
      "event_id": 901,
      "type": "person_location_event",
      "event_date": "2026-10-01T16:30:00.000000Z",
      "event_type": {
        "id": 42,
        "name": "Badge issued",
        "slug": null,
        "category": "person"
      },
      "description": "Issued at front desk.",
      "cost": null,
      "date_due": null,
      "created_by": {
        "id": 4,
        "name": "Alex Admin"
      },
      "related": {
        "person": {
          "resource": "people",
          "id": 123,
          "name": "Ada Lovelace"
        },
        "location": null
      },
      "acquisition": null,
      "warranty": null,
      "billing": null,
      "contract": null,
      "comments": [
        {
          "id": 7,
          "body": "Follow up next week.",
          "created_by": {
            "id": 4,
            "name": "Alex Admin"
          },
          "created_at": "2026-10-02T16:00:00.000000Z"
        }
      ],
      "attachments": [
        {
          "id": 3,
          "name": "receipt.pdf",
          "size": 48213,
          "url": "https://files.example.com/receipt.pdf?signature=example",
          "url_expires_at": "2026-10-02T16:15:00.000000Z"
        }
      ],
      "field_values": [
        {
          "field_id": 104,
          "text": "B-1042",
          "number": null,
          "date": null,
          "option_id": null,
          "boolean": null
        }
      ],
      "created_at": "2026-10-02T16:00:00.000000Z",
      "updated_at": "2026-10-02T16:00:00.000000Z"
    }
  }
}

Behavior and constraints

version identifies the entry’s current state; send it back to update or delete the entry. It changes whenever the entry changes. values holds the entry’s current editable values in UTC, and fields lists each editable key with its type and whether it is required. Select fields with fixed choices include options as {"id", "name"} objects; send the id. Nested keys such as acquisition.price, warranty.end_date, billing.license_count, or field_values.104 are sent as nested objects when updating.

can_update and can_delete show whether this token may edit or delete the entry, based on people:timeline:update and people:timeline:delete and on whether the entry can be deleted at all. For events, event is the same entry shape as the timeline, always including comments, attachments, and field_values. For a todo entry, todo replaces event and holds the to-do with its comments and attachments. Attachment url values are temporary download links that expire at url_expires_at, 15 minutes after the request.

The responsible-person field is only offered when the token also has people:read. Drafts, entries belonging to another record, and entries in other organizations return 404. Edit an event through the record that owns it. A person timeline can include events owned by other records, such as an asset assignment shown on a person; use that record’s path and type, taken from the entry’s type and related references.

Errors

401 means the token is missing, expired, revoked, or not a customer API token. 403 means a required permission or administrator access is missing. 404 means the record or entry is unavailable through this path. 422 identifies invalid or unsupported input; inspect the errors object when present. 429 means a rate limit was reached. See error handling and rate limits.