Skip to content

Create trail

PUT
/api/v1/trail
curl --request PUT \
--url https://example.com/api/v1/trail \
--header 'Content-Type: application/json' \
--data '{ "id": "example", "name": "example", "author": "example", "description": "example", "location": "example", "date": "2026-04-15", "public": true, "difficulty": "easy", "lat": 1, "lon": 1, "distance": 1, "elevation_gain": 1, "elevation_loss": 1, "duration": 1, "photos": [], "thumbnail": 1, "like_count": 0, "category": "example", "tags": [], "gpx": "example" }'
Media type application/json
object
id

Optional custom ID (15 chars)

string
name
required
string
>= 1 characters
author
required

Author user ID (15 chars)

string
description
string
location
string
date
string format: date
public
required
boolean
difficulty
string
Allowed values: easy moderate difficult
lat
number
>= -90 <= 90
lon
number
>= -180 <= 180
distance
number
elevation_gain
number
elevation_loss
number
duration
number
photos
Array<string>
default:
thumbnail
integer
like_count
integer
0
category
string
tags
Array<string>
default:
gpx
string

Trail created

Media type application/json
object
id
required

Trail ID (15 chars)

string
name
required

Trail name

string
description
string
location
string
author
required

Author user ID

string
date
string format: date
public
required
boolean
difficulty
string
Allowed values: easy moderate difficult
lat
number
>= -90 <= 90
lon
number
>= -180 <= 180
distance

Distance in meters

number
elevation_gain

Elevation gain in meters

number
elevation_loss

Elevation loss in meters

number
duration

Duration in seconds

number
photos
Array<string>
thumbnail

Index of thumbnail photo

integer
like_count
integer
0
category

Category ID (15 chars)

string
tags
Array<string>
gpx

GPX file path

string
created
string format: date-time
updated
string format: date-time
Example
{
"difficulty": "easy",
"like_count": 0
}

Bad Request

Internal Server Error