---
updatedAt: 2026-06-16T11:01:52.000Z
agentTools:
  projectIndex: https://developers.triathlon.org/llms.txt
---

# Live Timing

The **Live Timing** method returns full timing data from the requested `prog_id` (i.e. a single race at an event such as elite men).

The above example is a curtailed response and a full timing message that corresponds to the final results may be found [here](https://triathlon-data.s3.amazonaws.com/yokohama-final-output.json).

It is recommended that you use this endpoint to determine the initial state of timing and then receive all future updates through the [Streaming API](https://developers.triathlon.org/docs/leaderboard) or [Subscription API](https://developers.triathlon.org/docs/subscriptions-api-overview).

> 🚧 Live Timing Standard
>
> For a much more detailed explanation of parameters and variables please review the live timing standard documentation [here](https://developers.triathlon.org/v1/page/live-timing-standard-v11).

The `latest` object contains information about the latest timing point and is used to produce automatically updating leaderboards. As athletes are ordered in position at the latest segment it is trivial to output the timing data for the latest segment using the `num_athletes` variable.

## Pre-race

When start lists have been produced an initial timing export will be available. In such circumstances athletes will be ordered via start number and the status will be set as `prerace`. This prerace data may be updated to reflect a change in the status of the athlete i.e. DNS or to a change in the planned start time. Once the race is underway the status will change to `live` and the start\_time will reflect the actual start time such that the duration of the race can be determined. Where information is not yet available i.e conditions and wetsuit information a value of `null` will be provided.

> 👍 Start lists also available via Program Entries method

The `status` field contains other information about the athlete during the race such as race incidents or penalties acquired.

For more information please consult the [Live Timing Standard](https://developers.triathlon.org/v1/page/live-timing-standard-v11).

# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "triathlon-api-v1",
    "version": "1"
  },
  "servers": [
    {
      "url": "https://api.triathlon.org/v1"
    }
  ],
  "components": {
    "securitySchemes": {
      "sec0": {
        "type": "apiKey",
        "in": "header",
        "name": "apikey",
        "x-default": "2649776ef9ece4c391003b521cbfce7a"
      }
    }
  },
  "security": [
    {
      "sec0": []
    }
  ],
  "paths": {
    "/live/timing/{prog_id}": {
      "get": {
        "summary": "Live Timing",
        "description": "",
        "operationId": "live-timing",
        "parameters": [
          {
            "name": "prog_id",
            "in": "path",
            "description": "The prog_id of the race to retrieve timing for",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 321965
            }
          }
        ],
        "responses": {
          "200": {
            "description": "200",
            "content": {
              "application/json": {
                "examples": {
                  "Result": {
                    "value": "{\n    \"code\": 200,\n    \"status\": \"success\",\n    \"data\": {\n        \"date\": \"2018-09-16T07:25:25:640Z\",\n        \"start_time\": \"2018-09-15T15:16:01:000Z\",\n        \"event_id\": \"117107\",\n        \"event_name\": \"2018 ITU World Triathlon Grand Final Gold Coast\",\n        \"prog_id\": 321965,\n        \"prog_name\": \"Elite Men\",\n        \"wetsuit\": \"false\",\n        \"sandbox\": \"false\",\n        \"num_athletes\": \"65\",\n        \"status\": \"official\",\n        \"latest\": {\n            \"segment_id\": \"16\",\n            \"segment_name\": \"Finish\",\n            \"num_athletes\": \"50\"\n        },\n        \"conditions\": {\n            \"air_temp\": \"21.1\",\n            \"water_temp\": \"22.2\"\n        },\n        \"athletes\": [\n            {\n                \"id\": \"11143\",\n                \"start_num\": \"3\",\n                \"name\": \"Vincent Luis\",\n                \"country\": \"FRA\",\n                \"segment_id\": \"16\",\n                \"time\": \"01:44:33.820\",\n                \"difference\": \"00:00:00\",\n                \"position\": \"1\",\n                \"status\": null,\n                \"incidents\": null,\n                \"splits\": [\n                    {\n                        \"id\": \"1\",\n                        \"name\": \"Swim Lap 1\",\n                        \"time\": \"00:09:26.323\",\n                        \"total_time\": \"00:09:26.323\",\n                        \"difference\": \"00:00:00.000\",\n                        \"position\": \"1\"\n                    },\n                    {\n                        \"id\": \"2\",\n                        \"name\": \"Swim\",\n                        \"time\": \"00:09:05.360\",\n                        \"total_time\": \"00:18:31.683\",\n                        \"difference\": \"00:00:00.507\",\n                        \"position\": \"2\"\n                    },\n                    {\n                        \"id\": \"3\",\n                        \"name\": \"Transition 1\",\n                        \"time\": \"00:00:41.763\",\n                        \"total_time\": \"00:19:13.447\",\n                        \"difference\": \"00:00:01.643\",\n                        \"position\": \"3\"\n                    },\n                    {\n                        \"id\": \"4\",\n                        \"name\": \"Bike Lap 1\",\n                        \"time\": \"00:06:36.733\",\n                        \"total_time\": \"00:25:50.180\",\n                        \"difference\": \"00:00:00.763\",\n                        \"position\": \"4\"\n                    },\n                    {\n                        \"id\": \"5\",\n                        \"name\": \"Bike Lap 2\",\n                        \"time\": \"00:07:02.220\",\n                        \"total_time\": \"00:32:52.400\",\n                        \"difference\": \"00:00:04.777\",\n                        \"position\": \"2\"\n                    },\n                    {\n                        \"id\": \"6\",\n                        \"name\": \"Bike Lap 3\",\n                        \"time\": \"00:06:59.503\",\n                        \"total_time\": \"00:39:51.903\",\n                        \"difference\": \"00:00:13.413\",\n                        \"position\": \"14\"\n                    },\n                    {\n                        \"id\": \"7\",\n                        \"name\": \"Bike Lap 4\",\n                        \"time\": \"00:06:41.150\",\n                        \"total_time\": \"00:46:33.053\",\n                        \"difference\": \"00:00:02.577\",\n                        \"position\": \"4\"\n                    },\n                    {\n                        \"id\": \"8\",\n                        \"name\": \"Bike Lap 5\",\n                        \"time\": \"00:07:00.147\",\n                        \"total_time\": \"00:53:33.200\",\n                        \"difference\": \"00:00:13.260\",\n                        \"position\": \"20\"\n                    },\n                    {\n                        \"id\": \"9\",\n                        \"name\": \"Bike Lap 6\",\n                        \"time\": \"00:07:03.410\",\n                        \"total_time\": \"01:00:36.610\",\n                        \"difference\": \"00:00:30.500\",\n                        \"position\": \"16\"\n                    },\n                    {\n                        \"id\": \"10\",\n                        \"name\": \"Bike Lap 7\",\n                        \"time\": \"00:06:57.417\",\n                        \"total_time\": \"01:07:34.027\",\n                        \"difference\": \"00:00:37.947\",\n                        \"position\": \"19\"\n                    },\n                    {\n                        \"id\": \"11\",\n                        \"name\": \"Bike End\",\n                        \"time\": \"00:06:52.380\",\n                        \"total_time\": \"01:14:26.407\",\n                        \"difference\": \"00:00:35.717\",\n                        \"position\": \"5\"\n                    },\n                    {\n                        \"id\": \"12\",\n                        \"name\": \"Transition 2\",\n                        \"time\": \"00:00:24.150\",\n                        \"total_time\": \"01:14:50.557\",\n                        \"difference\": \"00:00:37.650\",\n                        \"position\": \"12\"\n                    },\n                    {\n                        \"id\": \"13\",\n                        \"name\": \"Run Lap 1\",\n                        \"time\": \"00:07:11.577\",\n                        \"total_time\": \"01:22:02.133\",\n                        \"difference\": \"00:00:19.957\",\n                        \"position\": \"7\"\n                    },\n                    {\n                        \"id\": \"14\",\n                        \"name\": \"Run Lap 2\",\n                        \"time\": \"00:07:31.703\",\n                        \"total_time\": \"01:29:33.837\",\n                        \"difference\": \"00:00:00.653\",\n                        \"position\": \"3\"\n                    },\n                    {\n                        \"id\": \"15\",\n                        \"name\": \"Run Lap 3\",\n                        \"time\": \"00:07:33.607\",\n                        \"total_time\": \"01:37:07.443\",\n                        \"difference\": \"00:00:00.000\",\n                        \"position\": \"1\"\n                    },\n                    {\n                        \"id\": \"16\",\n                        \"name\": \"Finish\",\n                        \"time\": \"00:07:26.377\",\n                        \"total_time\": \"01:44:33.820\",\n                        \"difference\": \"00:00:00.000\",\n                        \"position\": \"1\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"11402\",\n                \"start_num\": \"1\",\n                \"name\": \"Mario Mola\",\n                \"country\": \"ESP\",\n                \"segment_id\": \"16\",\n                \"time\": \"01:44:47.250\",\n                \"difference\": \"00:00:13.430\",\n                \"position\": \"2\",\n                \"status\": null,\n                \"incidents\": null,\n                \"splits\": [\n                    {\n                        \"id\": \"1\",\n                        \"name\": \"Swim Lap 1\",\n                        \"time\": \"00:09:40.957\",\n                        \"total_time\": \"00:09:40.957\",\n                        \"difference\": \"00:00:14.633\",\n                        \"position\": \"13\"\n                    },\n                    {\n                        \"id\": \"2\",\n                        \"name\": \"Swim\",\n                        \"time\": \"00:09:30.987\",\n                        \"total_time\": \"00:19:11.943\",\n                        \"difference\": \"00:00:40.767\",\n                        \"position\": \"31\"\n                    },\n                    {\n                        \"id\": \"3\",\n                        \"name\": \"Transition 1\",\n                        \"time\": \"00:00:38.913\",\n                        \"total_time\": \"00:19:50.857\",\n                        \"difference\": \"00:00:39.053\",\n                        \"position\": \"29\"\n                    },\n                    {\n                        \"id\": \"4\",\n                        \"name\": \"Bike Lap 1\",\n                        \"time\": \"00:06:22.093\",\n                        \"total_time\": \"00:26:12.950\",\n                        \"difference\": \"00:00:23.533\",\n                        \"position\": \"20\"\n                    },\n                    {\n                        \"id\": \"5\",\n                        \"name\": \"Bike Lap 2\",\n                        \"time\": \"00:06:44.920\",\n                        \"total_time\": \"00:32:57.870\",\n                        \"difference\": \"00:00:10.247\",\n                        \"position\": \"11\"\n                    },\n                    {\n                        \"id\": \"6\",\n                        \"name\": \"Bike Lap 3\",\n                        \"time\": \"00:06:53.850\",\n                        \"total_time\": \"00:39:51.720\",\n                        \"difference\": \"00:00:13.230\",\n                        \"position\": \"13\"\n                    },\n                    {\n                        \"id\": \"7\",\n                        \"name\": \"Bike Lap 4\",\n                        \"time\": \"00:06:42.977\",\n                        \"total_time\": \"00:46:34.697\",\n                        \"difference\": \"00:00:04.220\",\n                        \"position\": \"9\"\n                    },\n                    {\n                        \"id\": \"8\",\n                        \"name\": \"Bike Lap 5\",\n                        \"time\": \"00:06:54.937\",\n                        \"total_time\": \"00:53:29.633\",\n                        \"difference\": \"00:00:09.693\",\n                        \"position\": \"3\"\n                    },\n                    {\n                        \"id\": \"9\",\n                        \"name\": \"Bike Lap 6\",\n                        \"time\": \"00:07:06.240\",\n                        \"total_time\": \"01:00:35.873\",\n                        \"difference\": \"00:00:29.763\",\n                        \"position\": \"11\"\n                    },\n                    {\n                        \"id\": \"10\",\n                        \"name\": \"Bike Lap 7\",\n                        \"time\": \"00:06:57.277\",\n                        \"total_time\": \"01:07:33.150\",\n                        \"difference\": \"00:00:37.070\",\n                        \"position\": \"13\"\n                    },\n                    {\n                        \"id\": \"11\",\n                        \"name\": \"Bike End\",\n                        \"time\": \"00:06:55.730\",\n                        \"total_time\": \"01:14:28.880\",\n                        \"difference\": \"00:00:38.190\",\n                        \"position\": \"16\"\n                    },\n                    {\n                        \"id\": \"12\",\n                        \"name\": \"Transition 2\",\n                        \"time\": \"00:00:23.543\",\n                        \"total_time\": \"01:14:52.423\",\n                        \"difference\": \"00:00:39.517\",\n                        \"position\": \"19\"\n                    },\n                    {\n                        \"id\": \"13\",\n                        \"name\": \"Run Lap 1\",\n                        \"time\": \"00:07:08.533\",\n                        \"total_time\": \"01:22:00.957\",\n                        \"difference\": \"00:00:18.780\",\n                        \"position\": \"3\"\n                    },\n                    {\n                        \"id\": \"14\",\n                        \"name\": \"Run Lap 2\",\n                        \"time\": \"00:07:32.227\",\n                        \"total_time\": \"01:29:33.183\",\n                        \"difference\": \"00:00:00.000\",\n                        \"position\": \"1\"\n                    },\n                    {\n                        \"id\": \"15\",\n                        \"name\": \"Run Lap 3\",\n                        \"time\": \"00:07:34.960\",\n                        \"total_time\": \"01:37:08.143\",\n                        \"difference\": \"00:00:00.700\",\n                        \"position\": \"3\"\n                    },\n                    {\n                        \"id\": \"16\",\n                        \"name\": \"Finish\",\n                        \"time\": \"00:07:39.107\",\n                        \"total_time\": \"01:44:47.250\",\n                        \"difference\": \"00:00:13.430\",\n                        \"position\": \"2\"\n                    }\n                ]\n            },\n            ......\n        ],\n        ......\n    }\n}"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "x-readme": {
    "headers": [],
    "explorer-enabled": true,
    "proxy-enabled": true
  },
  "x-readme-fauxas": true
}
```