List deployments
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://forge.laravel.com/api/orgs/{organization}/servers/{server}/sites/{site}/deployments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}curl --request GET \
--url https://forge.laravel.com/api/orgs/{organization}/servers/{server}/sites/{site}/deployments \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://forge.laravel.com/api/orgs/{organization}/servers/{server}/sites/{site}/deployments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://forge.laravel.com/api/orgs/{organization}/servers/{server}/sites/{site}/deployments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": [
{
"id": "<string>",
"type": "deployments",
"attributes": {
"commit": {
"hash": "<string>",
"author": "<string>",
"message": "<string>",
"branch": "<string>"
},
"type": "<string>",
"status": "cancelled",
"started_at": "2025-07-29T09:00:00Z",
"ended_at": "2025-07-29T09:00:00Z",
"created_at": "2025-07-29T09:00:00Z",
"updated_at": "2025-07-29T09:00:00Z"
},
"relationships": {
"site": {
"data": {
"type": "sites",
"id": "<string>"
}
},
"initiator": {
"data": {
"type": "users",
"id": "<string>"
}
}
}
}
],
"links": {
"first": "<string>",
"last": "<string>",
"prev": "<string>",
"next": "<string>"
},
"meta": {
"path": "<string>",
"per_page": 1,
"next_cursor": "<string>",
"prev_cursor": "<string>"
},
"included": [
{
"id": "<string>",
"type": "sites",
"links": {
"self": {
"href": "<string>",
"rel": "<string>",
"describedby": "<string>",
"title": "<string>",
"type": "<string>",
"hreflang": "<string>",
"meta": {}
}
},
"attributes": {
"name": "<string>",
"status": "installed",
"url": "<string>",
"user": "<string>",
"https": true,
"web_directory": "<string>",
"root_directory": "<string>",
"aliases": [
"<unknown>"
],
"php_version": null,
"deployment_status": "<string>",
"quick_deploy": true,
"isolated": true,
"shared_paths": {},
"repository": {
"provider": "<string>",
"url": "<string>",
"branch": "<string>",
"status": "installed"
},
"database": "<string>",
"maintenance_mode": {
"enabled": true,
"status": "disabling"
},
"zero_downtime_deployments": true,
"deployment_retention": 123,
"deployment_script": "<string>",
"wildcards": true,
"app_type": "Statamic",
"uses_envoyer": true,
"deployment_url": "<string>",
"healthcheck_url": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
},
"relationships": {
"server": {
"data": {
"type": "servers",
"id": "<string>"
}
},
"tags": {
"data": [
{
"type": "tags",
"id": "<string>"
}
]
},
"latestDeployment": {
"data": {
"type": "deployments",
"id": "<string>"
}
},
"securityRules": {
"data": [
{
"type": "securityRules",
"id": "<string>"
}
]
},
"redirectRules": {
"data": [
{
"type": "redirect-rules",
"id": "<string>"
}
]
}
}
}
]
}{
"message": "<string>"
}{
"message": "<string>"
}Deployments
List deployments
Show all recent deployments for the site.
Processing mode: sync
GET
/
orgs
/
{organization}
/
servers
/
{server}
/
sites
/
{site}
/
deployments
List deployments
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://forge.laravel.com/api/orgs/{organization}/servers/{server}/sites/{site}/deployments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}curl --request GET \
--url https://forge.laravel.com/api/orgs/{organization}/servers/{server}/sites/{site}/deployments \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://forge.laravel.com/api/orgs/{organization}/servers/{server}/sites/{site}/deployments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://forge.laravel.com/api/orgs/{organization}/servers/{server}/sites/{site}/deployments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"data": [
{
"id": "<string>",
"type": "deployments",
"attributes": {
"commit": {
"hash": "<string>",
"author": "<string>",
"message": "<string>",
"branch": "<string>"
},
"type": "<string>",
"status": "cancelled",
"started_at": "2025-07-29T09:00:00Z",
"ended_at": "2025-07-29T09:00:00Z",
"created_at": "2025-07-29T09:00:00Z",
"updated_at": "2025-07-29T09:00:00Z"
},
"relationships": {
"site": {
"data": {
"type": "sites",
"id": "<string>"
}
},
"initiator": {
"data": {
"type": "users",
"id": "<string>"
}
}
}
}
],
"links": {
"first": "<string>",
"last": "<string>",
"prev": "<string>",
"next": "<string>"
},
"meta": {
"path": "<string>",
"per_page": 1,
"next_cursor": "<string>",
"prev_cursor": "<string>"
},
"included": [
{
"id": "<string>",
"type": "sites",
"links": {
"self": {
"href": "<string>",
"rel": "<string>",
"describedby": "<string>",
"title": "<string>",
"type": "<string>",
"hreflang": "<string>",
"meta": {}
}
},
"attributes": {
"name": "<string>",
"status": "installed",
"url": "<string>",
"user": "<string>",
"https": true,
"web_directory": "<string>",
"root_directory": "<string>",
"aliases": [
"<unknown>"
],
"php_version": null,
"deployment_status": "<string>",
"quick_deploy": true,
"isolated": true,
"shared_paths": {},
"repository": {
"provider": "<string>",
"url": "<string>",
"branch": "<string>",
"status": "installed"
},
"database": "<string>",
"maintenance_mode": {
"enabled": true,
"status": "disabling"
},
"zero_downtime_deployments": true,
"deployment_retention": 123,
"deployment_script": "<string>",
"wildcards": true,
"app_type": "Statamic",
"uses_envoyer": true,
"deployment_url": "<string>",
"healthcheck_url": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
},
"relationships": {
"server": {
"data": {
"type": "servers",
"id": "<string>"
}
},
"tags": {
"data": [
{
"type": "tags",
"id": "<string>"
}
]
},
"latestDeployment": {
"data": {
"type": "deployments",
"id": "<string>"
}
},
"securityRules": {
"data": [
{
"type": "securityRules",
"id": "<string>"
}
]
},
"redirectRules": {
"data": [
{
"type": "redirect-rules",
"id": "<string>"
}
]
}
}
}
]
}{
"message": "<string>"
}{
"message": "<string>"
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
The organization slug
The server ID
The site ID
Query Parameters
The number of results that will be returned per page.
The cursor to start the pagination from.
The commit hash of the deployment.
Example:
"011118f"
The commit message of the deployment.
Example:
"WIP"
The commit author of the deployment.
Example:
"Taylor Otwell"
Available options:
created_at, -created_at Response
Paginated set of DeploymentResource
Was this page helpful?