Skip to main content
PUT
/
orgs
/
{organization}
/
recipes
/
{recipe}
Update recipe
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://forge.laravel.com/api/orgs/{organization}/recipes/{recipe}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "PUT",
  CURLOPT_POSTFIELDS => json_encode([
    'name' => '<string>',
    'user' => 'root',
    'script' => '<string>'
  ]),
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer <token>",
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
{
  "data": {
    "id": "<string>",
    "type": "recipes",
    "attributes": {
      "name": "Install Security tooling",
      "script": "apt-get install -y my-custom-tooling",
      "user": "root",
      "created_at": "2025-07-29T09:00:00Z",
      "updated_at": "2025-07-30T09:00:00Z"
    },
    "links": {
      "self": {
        "href": "<string>",
        "rel": "<string>",
        "describedby": "<string>",
        "title": "<string>",
        "type": "<string>",
        "hreflang": "<string>",
        "meta": {}
      }
    }
  }
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Path Parameters

organization
string
required

The organization slug

recipe
integer
required

The recipe ID

Body

application/json
name
string
Required string length: 1 - 255
user
enum<string>
Available options:
root,
forge
script
string

Response

RecipeResource

data
object
required
I