API & Integrations

Integrate Praxyo with your tools and automate workflows with our complete REST API.

REST API

A Powerful, Well-Documented API

The Praxyo REST API lets you access all the platform's data and features programmatically. Designed following REST best practices, it offers intuitive endpoints, structured JSON responses and support for pagination, filtering and sorting.

  • ✓Base URL: https://api.praxyo.com/v1
  • ✓Response format: JSON
  • ✓Authentication: OAuth 2.0 and API Key
  • ✓Versioning: via URL path (/v1, /v2)
API REST Praxyo
AUTENTICAZIONE

Authentication

Two authentication methods for every need.

API Key

Ideal for server-to-server integrations. Generate an API key from your account Settings and include it in the header of every request.

curl -X GET "https://api.praxyo.com/v1/projects" \
  -H "Authorization: Bearer pk_live_abc123def456" \
  -H "Content-Type: application/json"

OAuth 2.0

For applications acting on behalf of a user. Supports the Authorization Code flow with PKCE.

POST https://auth.praxyo.com/oauth/token
Content-Type: application/x-www-form-urlencoded

grant_type=authorization_code
&code=AUTH_CODE_HERE
&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_SECRET
&redirect_uri=https://yourapp.com/callback
ENDPOINT

Principali Endpoint

Access all the platform's resources through RESTful endpoints.

Progetti

GET    /v1/projects              # Lista progetti
POST   /v1/projects              # Crea progetto
GET    /v1/projects/:id          # Dettaglio progetto
PUT    /v1/projects/:id          # Aggiorna progetto
DELETE /v1/projects/:id          # Elimina progetto

Attività

GET    /v1/projects/:id/tasks    # Lista attività
POST   /v1/projects/:id/tasks    # Crea attività
GET    /v1/tasks/:id             # Dettaglio attività
PUT    /v1/tasks/:id             # Aggiorna attività
DELETE /v1/tasks/:id             # Elimina attività

Time Tracking

GET    /v1/time-entries           # Lista registrazioni
POST   /v1/time-entries           # Crea registrazione
PUT    /v1/time-entries/:id       # Aggiorna registrazione
DELETE /v1/time-entries/:id       # Elimina registrazione
POST   /v1/time-entries/start     # Avvia timer
POST   /v1/time-entries/stop      # Ferma timer

Example Response

{
  "result": true,
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "Website Redesign",
    "status": "active",
    "created": "2026-03-01T10:30:00Z",
    "tasks_count": 24,
    "completed_tasks": 18
  },
  "message": null
}
LIMITI

Rate Limiting

To ensure service stability, the APIs are subject to usage limits.

🚀

Free

100

requests / hour

⚡

Professional

1.000

requests / hour

🌟

Enterprise

10.000

requests / hour

Response headers include rate limiting information:

X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 847
X-RateLimit-Reset: 1711036800
SDK

SDK Disponibili

Official libraries for the most popular languages.

💻

JavaScript / TypeScript

npm install @praxyo/sdk
🐍

Python

pip install praxyo
⚖

C# / .NET

dotnet add package Praxyo.SDK
☕

Java / Kotlin

implementation 'com.praxyo:sdk:1.0'
WEBHOOK

Webhook

Receive real-time notifications when events occur on the platform.

Eventi Disponibili

  • ✓project.created — New project created
  • ✓task.created — New task created
  • ✓task.completed — Task completed
  • ✓task.assigned — Task assigned
  • ✓time_entry.created — Time entry logged
  • ✓expense.created — Expense recorded

Esempio Payload

{
  "event": "task.completed",
  "timestamp": "2026-03-19T14:30:00Z",
  "data": {
    "task_id": "550e8400-e29b-41d4-a716-446655440000",
    "project_id": "660f9500-f39c-52e5-b827-557766551111",
    "name": "Design homepage mockup",
    "completed_by": "user@example.com"
  },
  "signature": "sha256=abc123..."
}

Ready to transform the way you work?

Join thousands of teams using Praxyo to manage their projects more intelligently.