# Introduction

Source: https://www.jawsdeploy.net/rest-api/introduction

What the Jaws Deploy REST API is for, and how the docs are organized.

The Jaws Deploy REST API lets your build server, CLI, or platform tooling drive the same workflows you can do in the web UI: creating releases, deploying them, promoting them through environments, and managing the underlying topology (projects, environments, lifecycles, feeds, tags, variables, step templates, script modules, cloud accounts).

## Base URL

All endpoints accept and return JSON unless otherwise noted (the package upload endpoint takes `multipart/form-data`).

```
https://app.jawsdeploy.net/api
```

## What is documented here

Every public endpoint in the platform's `Api` namespace decorated with service-account authentication is listed in the sidebar, grouped by resource. Internal agent-side endpoints (deployment monitor, agent handshake, package downloads) are intentionally not part of this reference.

## Conventions

- IDs in request and response bodies are opaque strings (GUIDs or short tokens).
- `workspaceId`, `projectId`, etc. always refer to resources visible to the authenticated service account.
- Successful mutations return `200 OK` with either an empty body or a small response object containing the new resource's ID.
- Validation failures return `400 Bad Request` with `{ errorcode, error }` and (where applicable) a `validationErrors` map.
- Authorization failures return `401 Unauthorized` with the same shape.

