Activities

GET /api/activities

Get activities for the authenticated user.

Example requests:

  • minimal request

GET /api/activities/ HTTP/1.1
  • with some query parameters

GET /api/activities?from=2019-07-02&to=2019-07-31&sport_id=1  HTTP/1.1

Example responses:

  • returning at least one activity

HTTP/1.1 200 OK
Content-Type: application/json

  {
    "data": {
      "activities": [
        {
          "activity_date": "Mon, 01 Jan 2018 00:00:00 GMT",
          "ascent": null,
          "ave_speed": 10.0,
          "bounds": [],
          "creation_date": "Sun, 14 Jul 2019 13:51:01 GMT",
          "descent": null,
          "distance": 10.0,
          "duration": "0:17:04",
          "id": 1,
          "map": null,
          "max_alt": null,
          "max_speed": 10.0,
          "min_alt": null,
          "modification_date": null,
          "moving": "0:17:04",
          "next_activity": 3,
          "notes": null,
          "pauses": null,
          "previous_activity": null,
          "records": [
            {
              "activity_date": "Mon, 01 Jan 2018 00:00:00 GMT",
              "activity_id": 1,
              "id": 4,
              "record_type": "MS",
              "sport_id": 1,
              "user_id": 1,
              "value": 10.0
            },
            {
              "activity_date": "Mon, 01 Jan 2018 00:00:00 GMT",
              "activity_id": 1,
              "id": 3,
              "record_type": "LD",
              "sport_id": 1,
              "user_id": 1,
              "value": "0:17:04"
            },
            {
              "activity_date": "Mon, 01 Jan 2018 00:00:00 GMT",
              "activity_id": 1,
              "id": 2,
              "record_type": "FD",
              "sport_id": 1,
              "user_id": 1,
              "value": 10.0
            },
            {
              "activity_date": "Mon, 01 Jan 2018 00:00:00 GMT",
              "activity_id": 1,
              "id": 1,
              "record_type": "AS",
              "sport_id": 1,
              "user_id": 1,
              "value": 10.0
            }
          ],
          "segments": [],
          "sport_id": 1,
          "title": null,
          "user_id": 1,
          "weather_end": null,
          "weather_start": null,
          "with_gpx": false
        }
      ]
    },
    "status": "success"
  }
  • returning no activities

HTTP/1.1 200 OK
Content-Type: application/json

  {
      "data": {
          "activities": []
      },
      "status": "success"
  }
Parameters
  • auth_user_id (integer) – authenticate user id

Query Parameters
  • page (integer) – page if using pagination (default: 1)

  • per_page (integer) – number of activities per page (default: 5)

  • sport_id (integer) – sport id

  • from (string) – start date (format: %Y-%m-%d)

  • to (string) – end date (format: %Y-%m-%d)

  • distance_from (float) – minimal distance

  • distance_to (float) – maximal distance

  • duration_from (string) – minimal duration (format: %H:%M)

  • duration_to (string) – maximal distance (format: %H:%M)

  • ave_speed_from (float) – minimal average speed

  • ave_speed_to (float) – maximal average speed

  • max_speed_from (float) – minimal max. speed

  • max_speed_to (float) – maximal max. speed

  • order (string) – sorting order (default: desc)

Request Headers
Status Codes
GET /api/activities/(int: activity_id)

Get an activity

POST /api/activities

Post an activity (with gpx file)

POST /api/activities/no_gpx

Post an activity without gpx file

PATCH /api/activities/(int: activity_id)

Update an activity

DELETE /api/activities/(int: activity_id)

Delete an activity

GET /api/activities/(int: activity_id)/gpx

Get gpx file for an activity

GET /api/activities/(int: activity_id)/chart_data

Get chart data from an activity gpx file