Create trail
PUT
/api/v1/trail
const url = 'https://example.com/api/v1/trail';const options = { method: 'PUT', headers: {'Content-Type': 'application/json'}, body: '{"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"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}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" }'Request Body required
Section titled “Request Body required ” Media type application/json
object
id
Optional custom ID (15 chars)
string
name
required
string
author
required
Author user ID (15 chars)
string
description
string
location
string
date
string format: date
public
required
boolean
difficulty
string
lat
number
lon
number
distance
number
elevation_gain
number
elevation_loss
number
duration
number
photos
Array<string>
thumbnail
integer
like_count
integer
category
string
tags
Array<string>
gpx
string
Responses
Section titled “ Responses ”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
lat
number
lon
number
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
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