API Reference
The NeoEngine API provides programmatic access to the network for submitting jobs, managing providers, and querying data.
The API is in beta and subject to change. Pin your client to a specific version.
Base URL
https://api.neoengine.dev/v1Authentication
All requests require a Bearer token in the Authorization header:
curl -H "Authorization: Bearer <your-token>" \
https://api.neoengine.dev/v1/jobsGet your API token from the dashboard .
Rate Limits
| Tier | Requests/minute | Requests/day |
|---|---|---|
| Free | 60 | 1,000 |
| Pro | 300 | 10,000 |
| Enterprise | Custom | Custom |
Endpoints
Jobs
Submit Job
POST /jobsRequest Body:
{
"image": "python:3.11-slim",
"command": ["python", "-c", "print('Hello')"],
"resources": {
"cpu": 2,
"memory": "4Gi",
"gpu": 0
},
"maxPrice": "1.0",
"timeout": "1h"
}Response:
{
"id": "job_abc123",
"status": "pending",
"createdAt": "2026-01-15T12:00:00Z"
}Get Job Status
GET /jobs/{jobId}Response:
{
"id": "job_abc123",
"status": "running",
"provider": "prov_xyz789",
"startedAt": "2026-01-15T12:01:00Z",
"progress": 45
}Get Job Logs
GET /jobs/{jobId}/logsGet Job Results
GET /jobs/{jobId}/resultsCancel Job
POST /jobs/{jobId}/cancelList Jobs
GET /jobs?status=running&limit=20Providers
List Providers
GET /providers?gpu=true&minReputation=500Get Provider Details
GET /providers/{providerId}Market
Get Prices
GET /market/pricesResponse:
{
"cpu": {
"min": 0.01,
"avg": 0.025,
"max": 0.05
},
"memory": {
"min": 0.005,
"avg": 0.012,
"max": 0.02
},
"gpu": {
"nvidia-a100": {
"min": 0.50,
"avg": 0.75,
"max": 1.20
}
}
}Get Network Stats
GET /market/statsWallet
Get Balance
GET /wallet/balanceGet Earnings
GET /wallet/earningsWithdraw
POST /wallet/withdrawSDKs
Official SDKs are available for:
- Rust —
cargo add neoengine-sdk - TypeScript —
npm install @neoengine/sdk - Python —
pip install neoengine - Go —
go get github.com/neoengine-labs/neoengine-go
Errors
| Code | Description |
|---|---|
| 400 | Bad Request — Invalid parameters |
| 401 | Unauthorized — Invalid or missing token |
| 403 | Forbidden — Insufficient permissions |
| 404 | Not Found — Resource doesn’t exist |
| 429 | Rate Limited — Too many requests |
| 500 | Internal Error — Server-side issue |
Error Response Format:
{
"error": {
"code": "INVALID_PARAMETERS",
"message": "cpu must be at least 1",
"details": {
"field": "resources.cpu",
"value": 0
}
}
}