Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/nayalsaurav/deploy-your-app/llms.txt

Use this file to discover all available pages before exploring further.

The Deploy Your App REST API is a JSON HTTP API. All endpoints are served by the Next.js web application under the /api/v1/ path prefix, meaning there is no separate API host — your self-hosted instance handles every request in the same process that serves the dashboard UI.

Base URL

All API requests are made to your own instance. Replace your-domain.com with the domain where your Deploy Your App web app is running:
https://your-domain.com/api/v1

All Endpoints

The table below lists every available route, grouped by resource. Dynamic segments are written as :id.
MethodPathDescription
GET/api/v1/projectsList all projects owned by the authenticated user
POST/api/v1/projects/importImport a GitHub repository as a new project
GET/api/v1/projects/:idGet a single project including its deployments
PATCH/api/v1/projects/:idUpdate project settings (name, build command, etc.)
DELETE/api/v1/projects/:idPermanently delete a project
POST/api/v1/projects/:id/deployTrigger a manual deployment for a project
POST/api/v1/projects/:id/envsAdd or update an environment variable
DELETE/api/v1/projects/:id/envsDelete an environment variable by envId query param
POST/api/v1/projects/:id/domain/verifyVerify a custom domain CNAME record
GET/api/v1/projects/:id/server-logsStream live container logs for a running project (SSE)
GET/api/v1/deploymentsList recent deployments across all projects
GET/api/v1/deployments/:idGet a single deployment by ID
GET/api/v1/deployments/:id/logsStream build logs for a deployment (SSE)
GET/api/v1/repositoryList GitHub repositories accessible to the authenticated user
POST/webhook/:projectIdReceive a GitHub push event and trigger a new deployment
The POST /webhook/:projectId endpoint is handled by a dedicated Express API service (the apps/api package), not by the Next.js application. It runs on a separate port and is called directly by GitHub — not under the /api/v1/ prefix.

Response Format

Most endpoints return JSON. The majority of successful responses carry a message field describing the outcome and, when data is returned, a data field containing the resource payload. A small number of routes return a flatter shape — see the notes below. Error responses always carry a single error field with a human-readable message. Standard success response shape (used by most /api/v1/ routes):
{
  "message": "Projects fetched successfully",
  "data": {
    "projects": [...]
  }
}
Flat success response shape (used by POST /api/v1/projects/import and GET /api/v1/repository):
{ "project": { ... }, "deployment": { ... } }
{ "repositories": [...] }
Error response shape:
{
  "error": "Unauthorized"
}

HTTP Status Codes

CodeMeaning
200 OKRequest succeeded. Response body contains the requested data.
201 CreatedResource was created successfully.
400 Bad RequestThe request was malformed or missing required fields.
401 UnauthorizedNo valid session was found. Sign in before retrying.
404 Not FoundThe requested resource does not exist or does not belong to you.
500 Internal Server ErrorAn unexpected error occurred on the server.
All /api/v1/ endpoints require authentication. Requests without a valid session cookie are rejected with a 401 Unauthorized response. Authentication is handled via GitHub OAuth — see the Authentication page for details.

Explore the API

Authentication

Learn how GitHub OAuth session cookies are used to authenticate every API request.

Projects

List, import, update, and delete your deployed projects.

Deployments

Browse deployment history and stream build logs.

GitHub Webhook

Understand how GitHub push events automatically trigger new deployments.

Build docs developers (and LLMs) love