Skip to main content
POST
/
orgs
/
{organization}
/
roles
Create role
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://forge.laravel.com/api/orgs/{organization}/roles",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode([
    'name' => '<string>',
    'permissions' => [
        'organization:view'
    ]
  ]),
  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": "customRoles",
    "links": {
      "self": {
        "href": "<string>",
        "rel": "<string>",
        "describedby": "<string>",
        "title": "<string>",
        "type": "<string>",
        "hreflang": "<string>",
        "meta": {}
      }
    },
    "attributes": {
      "name": "<string>",
      "created_at": "2023-11-07T05:31:56Z",
      "updated_at": "2023-11-07T05:31:56Z"
    },
    "relationships": {
      "permissions": {
        "data": [
          {
            "type": "permissions",
            "id": "<string>"
          }
        ]
      }
    }
  },
  "included": [
    {
      "id": "<string>",
      "type": "permissions",
      "links": {
        "self": {
          "href": "<string>",
          "rel": "<string>",
          "describedby": "<string>",
          "title": "<string>",
          "type": "<string>",
          "hreflang": "<string>",
          "meta": {}
        }
      },
      "attributes": {
        "name": "<string>"
      }
    }
  ]
}

Documentation Index

Fetch the complete documentation index at: https://forge.laravel.com/docs/llms.txt

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

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

Body

application/json
name
string
required
Maximum string length: 50
permissions
enum<string>[]
Available options:
organization:view,
organization:manage,
organization:delete,
server:view,
server:create,
server:delete,
server:archive,
server:transfer,
server:manage-meta,
server:manage-packages,
server:manage-php,
server:manage-logs,
server:manage-network,
server:manage-nginx-templates,
server:manage-services,
server:manage-password,
server:create-keys,
server:delete-keys,
server:create-monitors,
server:delete-monitors,
server:create-databases,
server:delete-databases,
server:create-backups,
server:delete-backups,
server:create-daemons,
server:delete-daemons,
server:create-schedulers,
server:delete-schedulers,
server:web-terminal,
site:create,
site:delete,
site:meta,
site:manage-commands,
site:manage-deploys,
site:manage-nginx,
site:manage-project,
site:manage-environment,
site:manage-notifications,
site:manage-queues,
site:manage-redirects,
site:manage-security,
site:manage-ssl,
site:manage-integrations,
site:manage-heartbeats,
credential:view,
credential:manage,
team:view,
team:create,
team:delete,
recipe:view,
recipe:manage,
billing:manage,
storage:manage,
integrations:manage,
user:view,
resources:view,
resources:create-databases,
resources:delete-databases,
resources:manage-databases

Response

CustomRoleResource

data
CustomRoleResource · object
required
included
PermissionResource · object[]