API Documentation
The Pathwayful API is easy to use and free for all plans.
Create Roadmap
Create a new roadmap. Default columns (Planned, In Progress, Done) and tags (Feature, Bug, Improvement) are created automatically.
POST
https://api.pathwayful.com/roadmaps
Headers
-
AuthorizationREQUIRED STRINGBearer $TOKEN -
Content-TypeREQUIRED STRINGapplication/json
Request body
{
"roadmap": {
"name": "Product Roadmap",
"slug": "product-roadmap",
"description": "Our product roadmap"
}
}
Response body
{
"id": "uuid",
"name": "Product Roadmap",
"slug": "product-roadmap",
"description": "Our product roadmap",
"custom_domain": null,
"domain_active": false,
"created_at": "2024-01-01T00:00:00Z",
"columns": [
{
"id": "uuid",
"name": "Planned",
"position": 0
}
],
"issues": [],
"tags": [
{
"id": "uuid",
"name": "Feature",
"color": "#3B82F6"
}
]
}
Code Examples
curl -X POST "https://api.pathwayful.com/roadmaps" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"roadmap": {
"name": "Product Roadmap",
"slug": "product-roadmap",
"description": "Our product roadmap"
}
}'
// Create a new roadmap
const response = await fetch('https://api.pathwayful.com/roadmaps', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + yourToken,
'Content-Type': 'application/json'
},
body: JSON.stringify({
roadmap: {
name: 'Product Roadmap',
slug: 'product-roadmap',
description: 'Our product roadmap'
}
})
});
const roadmap = await response.json();
console.log('Created roadmap:', roadmap);
# Create a new roadmap
import requests
headers = {
'Authorization': f'Bearer {your_token}',
'Content-Type': 'application/json'
}
data = {
'roadmap': {
'name': 'Product Roadmap',
'slug': 'product-roadmap',
'description': 'Our product roadmap'
}
}
response = requests.post(
'https://api.pathwayful.com/roadmaps',
headers=headers,
json=data
)
roadmap = response.json()
print(f"Created roadmap: {roadmap}")
// Create a new roadmap
package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
)
func main() {
data := map[string]interface{}{
"roadmap": map[string]string{
"name": "Product Roadmap",
"slug": "product-roadmap",
"description": "Our product roadmap",
},
}
jsonData, _ := json.Marshal(data)
req, _ := http.NewRequest("POST", "https://api.pathwayful.com/roadmaps", bytes.NewBuffer(jsonData))
req.Header.Set("Authorization", "Bearer "+yourToken)
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
var roadmap map[string]interface{}
json.NewDecoder(resp.Body).Decode(&roadmap)
fmt.Printf("Created roadmap: %v\n", roadmap)
}
# Create a new roadmap
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://api.pathwayful.com/roadmaps')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Authorization'] = "Bearer #{your_token}"
request['Content-Type'] = 'application/json'
request.body = {
roadmap: {
name: 'Product Roadmap',
slug: 'product-roadmap',
description: 'Our product roadmap'
}
}.to_json
response = http.request(request)
roadmap = JSON.parse(response.body)
puts "Created roadmap: #{roadmap}"
<?php
// Create a new roadmap
$data = [
'roadmap' => [
'name' => 'Product Roadmap',
'slug' => 'product-roadmap',
'description' => 'Our product roadmap'
]
];
$ch = curl_init('https://api.pathwayful.com/roadmaps');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $yourToken,
'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
$roadmap = json_decode($response, true);
print_r($roadmap);