export const metadata = {
  title: "Status Page Component Groups - OnlineOrNot API Documentation",
  description:
    "Organize status page components into logical groups",
}

## List all component groups   {{ tag: 'GET', label: '/v1/status_pages/{status_page_id}/groups' }}
<Row>
<Col>

### Security: Bearer Auth
Provide your bearer token in the Authorization header when making requests to protected resources.

Example: `Authorization: Bearer 123`

<ParameterTree parameters={[{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page ID"},"required":true,"description":"Status Page ID","name":"status_page_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page ID","style":"simple"}]} title="Path parameters" />

<ParameterTree parameters={[{"schema":{"type":"string","default":"1","example":1,"description":"Page number of paginated results."},"required":false,"description":"Page number of paginated results.","name":"page","in":"query","exampleValues":{"object":1,"json":"'1'"},"originalType":"string","safeType":"string","shortDesc":"Page number of paginated results.","style":"form"},{"schema":{"type":"string","default":"20","example":20,"description":"Number of items per page."},"required":false,"description":"Number of items per page.","name":"per_page","in":"query","exampleValues":{"object":20,"json":"'20'"},"originalType":"string","safeType":"string","shortDesc":"Number of items per page.","style":"form"},{"schema":{"type":"string","example":"example","description":"Search term to filter results."},"required":false,"description":"Search term to filter results.","name":"search","in":"query","exampleValues":{"object":"example","json":"'example'"},"originalType":"string","safeType":"string","shortDesc":"Search term to filter results.","style":"form"}]} title="Query parameters" />

<h3 id="get__v1_status_pages_{status_page_id}_groups-responses">Responses</h3>

|Status|Meaning|Description|
|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|Returns a list of component groups for a status page|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|Internal Server Error|

<ResponseSchemas schemas={[{"status":"200","properties":[{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"name":{"type":"string","example":"Core Services","description":"Name of the component group"},"description":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"sort_order":{"type":"number","example":1,"description":"Sort order of the group"},"created_at":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"When the component group was created"},"updated_at":{"type":"string","example":"2021-02-01T00:00:00.000Z","description":"When the component group was last updated"}},"required":["id","name","sort_order","created_at","updated_at"]}},"in":"body","name":"result","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» result"},{"schema":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"in":"body","name":"id","depth":2,"description":"Status Page Component Group ID","type":"string","safeType":"string","required":true,"displayName":"»» id"},{"schema":{"type":"string","example":"Core Services","description":"Name of the component group"},"in":"body","name":"name","depth":2,"description":"Name of the component group","type":"string","safeType":"string","required":true,"displayName":"»» name"},{"schema":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"in":"body","name":"description","depth":2,"description":"Description of the component group","type":["string","null"],"safeType":["string","null"],"required":false,"displayName":"»» description"},{"schema":{"type":"number","example":1,"description":"Sort order of the group"},"in":"body","name":"sort_order","depth":2,"description":"Sort order of the group","type":"number","safeType":"number","required":true,"displayName":"»» sort_order"},{"schema":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"When the component group was created"},"in":"body","name":"created_at","depth":2,"description":"When the component group was created","type":"string","safeType":"string","required":true,"displayName":"»» created_at"},{"schema":{"type":"string","example":"2021-02-01T00:00:00.000Z","description":"When the component group was last updated"},"in":"body","name":"updated_at","depth":2,"description":"When the component group was last updated","type":"string","safeType":"string","required":true,"displayName":"»» updated_at"},{"schema":{"type":"object","properties":{"page":{"type":"number","default":1,"example":1,"description":"Page number of paginated results."},"per_page":{"type":"number","default":20,"example":20,"description":"Number of items per page."},"count":{"type":"number","example":1,"description":"Number of items on the current page."},"total_count":{"type":"number","example":1,"description":"Total number of items."}},"required":["count","total_count"]},"in":"body","name":"result_info","depth":1,"type":"object","safeType":"object","required":true,"displayName":"» result_info"},{"schema":{"type":"number","default":1,"example":1,"description":"Page number of paginated results."},"in":"body","name":"page","depth":2,"description":"Page number of paginated results.","type":"number","safeType":"number","required":false,"displayName":"»» page"},{"schema":{"type":"number","default":20,"example":20,"description":"Number of items per page."},"in":"body","name":"per_page","depth":2,"description":"Number of items per page.","type":"number","safeType":"number","required":false,"displayName":"»» per_page"},{"schema":{"type":"number","example":1,"description":"Number of items on the current page."},"in":"body","name":"count","depth":2,"description":"Number of items on the current page.","type":"number","safeType":"number","required":true,"displayName":"»» count"},{"schema":{"type":"number","example":1,"description":"Total number of items."},"in":"body","name":"total_count","depth":2,"description":"Total number of items.","type":"number","safeType":"number","required":true,"displayName":"»» total_count"},{"schema":{"type":"boolean","default":true,"example":true,"description":"Whether the API call was successful"},"in":"body","name":"success","depth":1,"description":"Whether the API call was successful","type":"boolean","safeType":"boolean","required":true,"displayName":"» success"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"errors","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» errors"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"messages","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» messages"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"}]}]} />

</Col>

<Col sticky>

<CodeGroup title="Request" tag="GET" label="/v1/status_pages/{status_page_id}/groups">
```bash {{ title: 'cURL' }}
curl --request GET \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}'
```

```javascript
fetch("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups", {
  "method": "GET",
  "headers": {
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
  }
})
.then(response => {
  console.log(response);
})
.catch(err => {
  console.error(err);
});
```

```java
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups")
  .get()
  .addHeader("Accept", "application/json")
  .addHeader("Authorization", "Bearer {access-token}")
  .build();

Response response = client.newCall(request).execute();
```

```php
<?php

$request = new HttpRequest();
$request->setUrl('https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups');
$request->setMethod(HTTP_METH_GET);

$request->setHeaders([
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
]);

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
```

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["Authorization"] = 'Bearer {access-token}'

response = http.request(request)
puts response.read_body
```

```python
import requests

url = "https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups"

headers = {
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
}

response = requests.request("GET", url, headers=headers)

print(response.text)
```

</CodeGroup>

```json {{ title: 'Response' }}
{
  "result": [
    {
      "id": "a1b2c3d4",
      "name": "Core Services",
      "description": "Our core infrastructure services",
      "sort_order": 1,
      "created_at": "2021-01-01T00:00:00.000Z",
      "updated_at": "2021-02-01T00:00:00.000Z"
    }
  ],
  "result_info": {
    "page": 1,
    "per_page": 20,
    "count": 1,
    "total_count": 1
  },
  "success": true,
  "errors": [],
  "messages": []
}
```

</Col>
</Row>

---

## Create a component group   {{ tag: 'POST', label: '/v1/status_pages/{status_page_id}/groups' }}
<Row>
<Col>

### Security: Bearer Auth
Provide your bearer token in the Authorization header when making requests to protected resources.

Example: `Authorization: Bearer 123`

<ParameterTree parameters={[{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page ID"},"required":true,"description":"Status Page ID","name":"status_page_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page ID","style":"simple"}]} title="Path parameters" />

<ParameterTree parameters={[{"in":"body","schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"example":"Core Services","description":"Name of the component group"},"description":{"type":"string","example":"Our core infrastructure services","description":"Description of the component group"}},"required":["name"]},"name":"body","required":true,"exampleValues":{"object":{"name":"Core Services","description":"Our core infrastructure services"},"json":"{\n  \"name\": \"Core Services\",\n  \"description\": \"Our core infrastructure services\"\n}"},"originalType":"object","safeType":"object"},{"in":"body","schema":{"type":"string","minLength":1,"example":"Core Services","description":"Name of the component group"},"name":"» name","required":true,"description":"Name of the component group","safeType":"string","depth":1,"exampleValues":{"object":"Core Services","json":"'Core Services'"},"shortDesc":"Name of the component group"},{"in":"body","schema":{"type":"string","example":"Our core infrastructure services","description":"Description of the component group"},"name":"» description","required":false,"description":"Description of the component group","safeType":"string","depth":1,"exampleValues":{"object":"Our core infrastructure services","json":"'Our core infrastructure services'"},"shortDesc":"Description of the component group"}]} title="Body parameters" />

<h3 id="post__v1_status_pages_{status_page_id}_groups-responses">Responses</h3>

|Status|Meaning|Description|
|---|---|---|
|201|[Created](https://tools.ietf.org/html/rfc7231#section-6.3.2)|Returns the newly created component group|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|Internal Server Error|

<ResponseSchemas schemas={[{"status":"201","properties":[{"schema":{"type":"object","properties":{"id":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"name":{"type":"string","example":"Core Services","description":"Name of the component group"},"description":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"sort_order":{"type":"number","example":1,"description":"Sort order of the group"},"created_at":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"When the component group was created"},"updated_at":{"type":"string","example":"2021-02-01T00:00:00.000Z","description":"When the component group was last updated"}},"required":["id","name","sort_order","created_at","updated_at"]},"in":"body","name":"result","depth":1,"type":"object","safeType":"object","required":true,"displayName":"» result"},{"schema":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"in":"body","name":"id","depth":2,"description":"Status Page Component Group ID","type":"string","safeType":"string","required":true,"displayName":"»» id"},{"schema":{"type":"string","example":"Core Services","description":"Name of the component group"},"in":"body","name":"name","depth":2,"description":"Name of the component group","type":"string","safeType":"string","required":true,"displayName":"»» name"},{"schema":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"in":"body","name":"description","depth":2,"description":"Description of the component group","type":["string","null"],"safeType":["string","null"],"required":false,"displayName":"»» description"},{"schema":{"type":"number","example":1,"description":"Sort order of the group"},"in":"body","name":"sort_order","depth":2,"description":"Sort order of the group","type":"number","safeType":"number","required":true,"displayName":"»» sort_order"},{"schema":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"When the component group was created"},"in":"body","name":"created_at","depth":2,"description":"When the component group was created","type":"string","safeType":"string","required":true,"displayName":"»» created_at"},{"schema":{"type":"string","example":"2021-02-01T00:00:00.000Z","description":"When the component group was last updated"},"in":"body","name":"updated_at","depth":2,"description":"When the component group was last updated","type":"string","safeType":"string","required":true,"displayName":"»» updated_at"},{"schema":{"type":"boolean","default":true,"example":true,"description":"Whether the API call was successful"},"in":"body","name":"success","depth":1,"description":"Whether the API call was successful","type":"boolean","safeType":"boolean","required":true,"displayName":"» success"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"errors","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» errors"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"messages","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» messages"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"}]}]} />

</Col>

<Col sticky>

<CodeGroup title="Request" tag="POST" label="/v1/status_pages/{status_page_id}/groups">
```bash {{ title: 'cURL' }}
curl --request POST \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'Content-Type: application/json' \
  --data '{"name":"Core Services","description":"Our core infrastructure services"}'
```

```javascript
fetch("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups", {
  "method": "POST",
  "headers": {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
  },
  "body": "{\"name\":\"Core Services\",\"description\":\"Our core infrastructure services\"}"
})
.then(response => {
  console.log(response);
})
.catch(err => {
  console.error(err);
});
```

```java
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"name\":\"Core Services\",\"description\":\"Our core infrastructure services\"}");
Request request = new Request.Builder()
  .url("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups")
  .post(body)
  .addHeader("Content-Type", "application/json")
  .addHeader("Accept", "application/json")
  .addHeader("Authorization", "Bearer {access-token}")
  .build();

Response response = client.newCall(request).execute();
```

```php
<?php

$request = new HttpRequest();
$request->setUrl('https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups');
$request->setMethod(HTTP_METH_POST);

$request->setHeaders([
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
]);

$request->setBody('{"name":"Core Services","description":"Our core infrastructure services"}');

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
```

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Authorization"] = 'Bearer {access-token}'
request.body = "{\"name\":\"Core Services\",\"description\":\"Our core infrastructure services\"}"

response = http.request(request)
puts response.read_body
```

```python
import requests

url = "https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups"

payload = {
    "name": "Core Services",
    "description": "Our core infrastructure services"
}
headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
}

response = requests.request("POST", url, json=payload, headers=headers)

print(response.text)
```

</CodeGroup>

```json {{ title: 'Response' }}
{
  "result": {
    "id": "a1b2c3d4",
    "name": "Core Services",
    "description": "Our core infrastructure services",
    "sort_order": 1,
    "created_at": "2021-01-01T00:00:00.000Z",
    "updated_at": "2021-02-01T00:00:00.000Z"
  },
  "success": true,
  "errors": [],
  "messages": []
}
```

</Col>
</Row>

---

## Retrieve a component group   {{ tag: 'GET', label: '/v1/status_pages/{status_page_id}/groups/{group_id}' }}
<Row>
<Col>

### Security: Bearer Auth
Provide your bearer token in the Authorization header when making requests to protected resources.

Example: `Authorization: Bearer 123`

<ParameterTree parameters={[{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page ID"},"required":true,"description":"Status Page ID","name":"status_page_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page ID","style":"simple"},{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page Component Group ID"},"required":true,"description":"Status Page Component Group ID","name":"group_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page Component Group ID","style":"simple"}]} title="Path parameters" />

<h3 id="get__v1_status_pages_{status_page_id}_groups_{group_id}-responses">Responses</h3>

|Status|Meaning|Description|
|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|Returns a component group|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|Internal Server Error|

<ResponseSchemas schemas={[{"status":"200","properties":[{"schema":{"type":"object","properties":{"id":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"name":{"type":"string","example":"Core Services","description":"Name of the component group"},"description":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"sort_order":{"type":"number","example":1,"description":"Sort order of the group"},"created_at":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"When the component group was created"},"updated_at":{"type":"string","example":"2021-02-01T00:00:00.000Z","description":"When the component group was last updated"}},"required":["id","name","sort_order","created_at","updated_at"]},"in":"body","name":"result","depth":1,"type":"object","safeType":"object","required":true,"displayName":"» result"},{"schema":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"in":"body","name":"id","depth":2,"description":"Status Page Component Group ID","type":"string","safeType":"string","required":true,"displayName":"»» id"},{"schema":{"type":"string","example":"Core Services","description":"Name of the component group"},"in":"body","name":"name","depth":2,"description":"Name of the component group","type":"string","safeType":"string","required":true,"displayName":"»» name"},{"schema":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"in":"body","name":"description","depth":2,"description":"Description of the component group","type":["string","null"],"safeType":["string","null"],"required":false,"displayName":"»» description"},{"schema":{"type":"number","example":1,"description":"Sort order of the group"},"in":"body","name":"sort_order","depth":2,"description":"Sort order of the group","type":"number","safeType":"number","required":true,"displayName":"»» sort_order"},{"schema":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"When the component group was created"},"in":"body","name":"created_at","depth":2,"description":"When the component group was created","type":"string","safeType":"string","required":true,"displayName":"»» created_at"},{"schema":{"type":"string","example":"2021-02-01T00:00:00.000Z","description":"When the component group was last updated"},"in":"body","name":"updated_at","depth":2,"description":"When the component group was last updated","type":"string","safeType":"string","required":true,"displayName":"»» updated_at"},{"schema":{"type":"boolean","default":true,"example":true,"description":"Whether the API call was successful"},"in":"body","name":"success","depth":1,"description":"Whether the API call was successful","type":"boolean","safeType":"boolean","required":true,"displayName":"» success"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"errors","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» errors"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"messages","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» messages"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"}]}]} />

</Col>

<Col sticky>

<CodeGroup title="Request" tag="GET" label="/v1/status_pages/{status_page_id}/groups/{group_id}">
```bash {{ title: 'cURL' }}
curl --request GET \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}'
```

```javascript
fetch("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4", {
  "method": "GET",
  "headers": {
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
  }
})
.then(response => {
  console.log(response);
})
.catch(err => {
  console.error(err);
});
```

```java
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4")
  .get()
  .addHeader("Accept", "application/json")
  .addHeader("Authorization", "Bearer {access-token}")
  .build();

Response response = client.newCall(request).execute();
```

```php
<?php

$request = new HttpRequest();
$request->setUrl('https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4');
$request->setMethod(HTTP_METH_GET);

$request->setHeaders([
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
]);

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
```

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Get.new(url)
request["Accept"] = 'application/json'
request["Authorization"] = 'Bearer {access-token}'

response = http.request(request)
puts response.read_body
```

```python
import requests

url = "https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4"

headers = {
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
}

response = requests.request("GET", url, headers=headers)

print(response.text)
```

</CodeGroup>

```json {{ title: 'Response' }}
{
  "result": {
    "id": "a1b2c3d4",
    "name": "Core Services",
    "description": "Our core infrastructure services",
    "sort_order": 1,
    "created_at": "2021-01-01T00:00:00.000Z",
    "updated_at": "2021-02-01T00:00:00.000Z"
  },
  "success": true,
  "errors": [],
  "messages": []
}
```

</Col>
</Row>

---

## Update a component group   {{ tag: 'PATCH', label: '/v1/status_pages/{status_page_id}/groups/{group_id}' }}
<Row>
<Col>

### Security: Bearer Auth
Provide your bearer token in the Authorization header when making requests to protected resources.

Example: `Authorization: Bearer 123`

<ParameterTree parameters={[{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page ID"},"required":true,"description":"Status Page ID","name":"status_page_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page ID","style":"simple"},{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page Component Group ID"},"required":true,"description":"Status Page Component Group ID","name":"group_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page Component Group ID","style":"simple"}]} title="Path parameters" />

<ParameterTree parameters={[{"in":"body","schema":{"type":"object","properties":{"name":{"type":"string","minLength":1,"example":"Core Services","description":"Name of the component group"},"description":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"}}},"name":"body","required":true,"exampleValues":{"object":{"name":"Core Services","description":"Our core infrastructure services"},"json":"{\n  \"name\": \"Core Services\",\n  \"description\": \"Our core infrastructure services\"\n}"},"originalType":"object","safeType":"object"},{"in":"body","schema":{"type":"string","minLength":1,"example":"Core Services","description":"Name of the component group"},"name":"» name","required":false,"description":"Name of the component group","safeType":"string","depth":1,"exampleValues":{"object":"Core Services","json":"'Core Services'"},"shortDesc":"Name of the component group"},{"in":"body","schema":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"name":"» description","required":false,"description":"Description of the component group","safeType":["string","null"],"depth":1,"exampleValues":{"object":"Our core infrastructure services","json":"'Our core infrastructure services'"},"shortDesc":"Description of the component group"}]} title="Body parameters" />

<h3 id="patch__v1_status_pages_{status_page_id}_groups_{group_id}-responses">Responses</h3>

|Status|Meaning|Description|
|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|Returns the updated component group|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|Internal Server Error|

<ResponseSchemas schemas={[{"status":"200","properties":[{"schema":{"type":"object","properties":{"id":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"name":{"type":"string","example":"Core Services","description":"Name of the component group"},"description":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"sort_order":{"type":"number","example":1,"description":"Sort order of the group"},"created_at":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"When the component group was created"},"updated_at":{"type":"string","example":"2021-02-01T00:00:00.000Z","description":"When the component group was last updated"}},"required":["id","name","sort_order","created_at","updated_at"]},"in":"body","name":"result","depth":1,"type":"object","safeType":"object","required":true,"displayName":"» result"},{"schema":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"in":"body","name":"id","depth":2,"description":"Status Page Component Group ID","type":"string","safeType":"string","required":true,"displayName":"»» id"},{"schema":{"type":"string","example":"Core Services","description":"Name of the component group"},"in":"body","name":"name","depth":2,"description":"Name of the component group","type":"string","safeType":"string","required":true,"displayName":"»» name"},{"schema":{"type":["string","null"],"example":"Our core infrastructure services","description":"Description of the component group"},"in":"body","name":"description","depth":2,"description":"Description of the component group","type":["string","null"],"safeType":["string","null"],"required":false,"displayName":"»» description"},{"schema":{"type":"number","example":1,"description":"Sort order of the group"},"in":"body","name":"sort_order","depth":2,"description":"Sort order of the group","type":"number","safeType":"number","required":true,"displayName":"»» sort_order"},{"schema":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"When the component group was created"},"in":"body","name":"created_at","depth":2,"description":"When the component group was created","type":"string","safeType":"string","required":true,"displayName":"»» created_at"},{"schema":{"type":"string","example":"2021-02-01T00:00:00.000Z","description":"When the component group was last updated"},"in":"body","name":"updated_at","depth":2,"description":"When the component group was last updated","type":"string","safeType":"string","required":true,"displayName":"»» updated_at"},{"schema":{"type":"boolean","default":true,"example":true,"description":"Whether the API call was successful"},"in":"body","name":"success","depth":1,"description":"Whether the API call was successful","type":"boolean","safeType":"boolean","required":true,"displayName":"» success"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"errors","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» errors"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"messages","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» messages"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"}]}]} />

</Col>

<Col sticky>

<CodeGroup title="Request" tag="PATCH" label="/v1/status_pages/{status_page_id}/groups/{group_id}">
```bash {{ title: 'cURL' }}
curl --request PATCH \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'Content-Type: application/json' \
  --data '{"name":"Core Services","description":"Our core infrastructure services"}'
```

```javascript
fetch("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4", {
  "method": "PATCH",
  "headers": {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
  },
  "body": "{\"name\":\"Core Services\",\"description\":\"Our core infrastructure services\"}"
})
.then(response => {
  console.log(response);
})
.catch(err => {
  console.error(err);
});
```

```java
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"name\":\"Core Services\",\"description\":\"Our core infrastructure services\"}");
Request request = new Request.Builder()
  .url("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4")
  .patch(body)
  .addHeader("Content-Type", "application/json")
  .addHeader("Accept", "application/json")
  .addHeader("Authorization", "Bearer {access-token}")
  .build();

Response response = client.newCall(request).execute();
```

```php
<?php

HttpRequest::methodRegister('PATCH');
$request = new HttpRequest();
$request->setUrl('https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4');
$request->setMethod(HttpRequest::HTTP_METH_PATCH);

$request->setHeaders([
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
]);

$request->setBody('{"name":"Core Services","description":"Our core infrastructure services"}');

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
```

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Authorization"] = 'Bearer {access-token}'
request.body = "{\"name\":\"Core Services\",\"description\":\"Our core infrastructure services\"}"

response = http.request(request)
puts response.read_body
```

```python
import requests

url = "https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4"

payload = {
    "name": "Core Services",
    "description": "Our core infrastructure services"
}
headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
}

response = requests.request("PATCH", url, json=payload, headers=headers)

print(response.text)
```

</CodeGroup>

```json {{ title: 'Response' }}
{
  "result": {
    "id": "a1b2c3d4",
    "name": "Core Services",
    "description": "Our core infrastructure services",
    "sort_order": 1,
    "created_at": "2021-01-01T00:00:00.000Z",
    "updated_at": "2021-02-01T00:00:00.000Z"
  },
  "success": true,
  "errors": [],
  "messages": []
}
```

</Col>
</Row>

---

## Delete a component group   {{ tag: 'DELETE', label: '/v1/status_pages/{status_page_id}/groups/{group_id}' }}
<Row>
<Col>

### Security: Bearer Auth
Provide your bearer token in the Authorization header when making requests to protected resources.

Example: `Authorization: Bearer 123`

<ParameterTree parameters={[{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page ID"},"required":true,"description":"Status Page ID","name":"status_page_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page ID","style":"simple"},{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page Component Group ID"},"required":true,"description":"Status Page Component Group ID","name":"group_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page Component Group ID","style":"simple"}]} title="Path parameters" />

<h3 id="delete__v1_status_pages_{status_page_id}_groups_{group_id}-responses">Responses</h3>

|Status|Meaning|Description|
|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|Returns the deleted group's ID|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|Internal Server Error|

<ResponseSchemas schemas={[{"status":"200","properties":[{"schema":{"type":"object","properties":{"id":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"}},"required":["id"]},"in":"body","name":"result","depth":1,"type":"object","safeType":"object","required":true,"displayName":"» result"},{"schema":{"type":"string","example":"a1b2c3d4","description":"Status Page Component Group ID"},"in":"body","name":"id","depth":2,"description":"Status Page Component Group ID","type":"string","safeType":"string","required":true,"displayName":"»» id"},{"schema":{"type":"boolean","default":true,"example":true,"description":"Whether the API call was successful"},"in":"body","name":"success","depth":1,"description":"Whether the API call was successful","type":"boolean","safeType":"boolean","required":true,"displayName":"» success"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"errors","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» errors"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"messages","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» messages"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"}]}]} />

</Col>

<Col sticky>

<CodeGroup title="Request" tag="DELETE" label="/v1/status_pages/{status_page_id}/groups/{group_id}">
```bash {{ title: 'cURL' }}
curl --request DELETE \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}'
```

```javascript
fetch("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4", {
  "method": "DELETE",
  "headers": {
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
  }
})
.then(response => {
  console.log(response);
})
.catch(err => {
  console.error(err);
});
```

```java
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4")
  .delete(null)
  .addHeader("Accept", "application/json")
  .addHeader("Authorization", "Bearer {access-token}")
  .build();

Response response = client.newCall(request).execute();
```

```php
<?php

$request = new HttpRequest();
$request->setUrl('https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4');
$request->setMethod(HTTP_METH_DELETE);

$request->setHeaders([
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
]);

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
```

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Delete.new(url)
request["Accept"] = 'application/json'
request["Authorization"] = 'Bearer {access-token}'

response = http.request(request)
puts response.read_body
```

```python
import requests

url = "https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4"

headers = {
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
}

response = requests.request("DELETE", url, headers=headers)

print(response.text)
```

</CodeGroup>

```json {{ title: 'Response' }}
{
  "result": {
    "id": "a1b2c3d4"
  },
  "success": true,
  "errors": [],
  "messages": []
}
```

</Col>
</Row>

---

## Update the sort order of component groups   {{ tag: 'PUT', label: '/v1/status_pages/{status_page_id}/groups/sort-order' }}
<Row>
<Col>

### Security: Bearer Auth
Provide your bearer token in the Authorization header when making requests to protected resources.

Example: `Authorization: Bearer 123`

<ParameterTree parameters={[{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page ID"},"required":true,"description":"Status Page ID","name":"status_page_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page ID","style":"simple"}]} title="Path parameters" />

<ParameterTree parameters={[{"in":"body","schema":{"type":"object","properties":{"group_ids":{"type":"array","items":{"type":"string"},"example":["a1b2c3d4","e5f6g7h8"],"description":"Ordered list of component group IDs"}},"required":["group_ids"]},"name":"body","required":true,"exampleValues":{"object":{"group_ids":["a1b2c3d4","e5f6g7h8"]},"json":"{\n  \"group_ids\": [\n    \"a1b2c3d4\",\n    \"e5f6g7h8\"\n  ]\n}"},"originalType":"object","safeType":"object"},{"in":"body","schema":{"type":"array","items":{"type":"string"},"example":["a1b2c3d4","e5f6g7h8"],"description":"Ordered list of component group IDs"},"name":"» group_ids","required":true,"description":"Ordered list of component group IDs","safeType":"string[]","depth":1,"exampleValues":{"object":["a1b2c3d4","e5f6g7h8"],"json":"[\n  \"a1b2c3d4\",\n  \"e5f6g7h8\"\n]"},"shortDesc":"Ordered list of component group IDs"}]} title="Body parameters" />

<h3 id="put__v1_status_pages_{status_page_id}_groups_sort-order-responses">Responses</h3>

|Status|Meaning|Description|
|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|Sort order updated successfully|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|Internal Server Error|

<ResponseSchemas schemas={[{"status":"200","properties":[{"schema":{"type":"object","properties":{"message":{"type":"string","example":"Sort order updated successfully","description":"Success message"}},"required":["message"]},"in":"body","name":"result","depth":1,"type":"object","safeType":"object","required":true,"displayName":"» result"},{"schema":{"type":"string","example":"Sort order updated successfully","description":"Success message"},"in":"body","name":"message","depth":2,"description":"Success message","type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"boolean","default":true,"example":true,"description":"Whether the API call was successful"},"in":"body","name":"success","depth":1,"description":"Whether the API call was successful","type":"boolean","safeType":"boolean","required":true,"displayName":"» success"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"errors","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» errors"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"messages","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» messages"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"}]}]} />

</Col>

<Col sticky>

<CodeGroup title="Request" tag="PUT" label="/v1/status_pages/{status_page_id}/groups/sort-order">
```bash {{ title: 'cURL' }}
curl --request PUT \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/sort-order \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'Content-Type: application/json' \
  --data '{"group_ids":["a1b2c3d4","e5f6g7h8"]}'
```

```javascript
fetch("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/sort-order", {
  "method": "PUT",
  "headers": {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
  },
  "body": "{\"group_ids\":[\"a1b2c3d4\",\"e5f6g7h8\"]}"
})
.then(response => {
  console.log(response);
})
.catch(err => {
  console.error(err);
});
```

```java
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"group_ids\":[\"a1b2c3d4\",\"e5f6g7h8\"]}");
Request request = new Request.Builder()
  .url("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/sort-order")
  .put(body)
  .addHeader("Content-Type", "application/json")
  .addHeader("Accept", "application/json")
  .addHeader("Authorization", "Bearer {access-token}")
  .build();

Response response = client.newCall(request).execute();
```

```php
<?php

$request = new HttpRequest();
$request->setUrl('https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/sort-order');
$request->setMethod(HTTP_METH_PUT);

$request->setHeaders([
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
]);

$request->setBody('{"group_ids":["a1b2c3d4","e5f6g7h8"]}');

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
```

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/sort-order")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Authorization"] = 'Bearer {access-token}'
request.body = "{\"group_ids\":[\"a1b2c3d4\",\"e5f6g7h8\"]}"

response = http.request(request)
puts response.read_body
```

```python
import requests

url = "https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/sort-order"

payload = {"group_ids": ["a1b2c3d4", "e5f6g7h8"]}
headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
}

response = requests.request("PUT", url, json=payload, headers=headers)

print(response.text)
```

</CodeGroup>

```json {{ title: 'Response' }}
{
  "result": {
    "message": "Sort order updated successfully"
  },
  "success": true,
  "errors": [],
  "messages": []
}
```

</Col>
</Row>

---

## Update the sort order of components within a group   {{ tag: 'PUT', label: '/v1/status_pages/{status_page_id}/groups/{group_id}/sort-order' }}
<Row>
<Col>

### Security: Bearer Auth
Provide your bearer token in the Authorization header when making requests to protected resources.

Example: `Authorization: Bearer 123`

<ParameterTree parameters={[{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page ID"},"required":true,"description":"Status Page ID","name":"status_page_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page ID","style":"simple"},{"schema":{"type":"string","minLength":8,"example":"a1b2c3d4","description":"Status Page Component Group ID"},"required":true,"description":"Status Page Component Group ID","name":"group_id","in":"path","exampleValues":{"object":"a1b2c3d4","json":"'a1b2c3d4'"},"originalType":"string","safeType":"string","shortDesc":"Status Page Component Group ID","style":"simple"}]} title="Path parameters" />

<ParameterTree parameters={[{"in":"body","schema":{"type":"object","properties":{"component_ids":{"type":"array","items":{"type":"string"},"example":["a1b2c3d4","e5f6g7h8"],"description":"Ordered list of component IDs within the group"}},"required":["component_ids"]},"name":"body","required":true,"exampleValues":{"object":{"component_ids":["a1b2c3d4","e5f6g7h8"]},"json":"{\n  \"component_ids\": [\n    \"a1b2c3d4\",\n    \"e5f6g7h8\"\n  ]\n}"},"originalType":"object","safeType":"object"},{"in":"body","schema":{"type":"array","items":{"type":"string"},"example":["a1b2c3d4","e5f6g7h8"],"description":"Ordered list of component IDs within the group"},"name":"» component_ids","required":true,"description":"Ordered list of component IDs within the group","safeType":"string[]","depth":1,"exampleValues":{"object":["a1b2c3d4","e5f6g7h8"],"json":"[\n  \"a1b2c3d4\",\n  \"e5f6g7h8\"\n]"},"shortDesc":"Ordered list of component IDs within the group"}]} title="Body parameters" />

<h3 id="put__v1_status_pages_{status_page_id}_groups_{group_id}_sort-order-responses">Responses</h3>

|Status|Meaning|Description|
|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|Sort order updated successfully|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|Internal Server Error|

<ResponseSchemas schemas={[{"status":"200","properties":[{"schema":{"type":"object","properties":{"message":{"type":"string","example":"Sort order updated successfully","description":"Success message"}},"required":["message"]},"in":"body","name":"result","depth":1,"type":"object","safeType":"object","required":true,"displayName":"» result"},{"schema":{"type":"string","example":"Sort order updated successfully","description":"Success message"},"in":"body","name":"message","depth":2,"description":"Success message","type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"boolean","default":true,"example":true,"description":"Whether the API call was successful"},"in":"body","name":"success","depth":1,"description":"Whether the API call was successful","type":"boolean","safeType":"boolean","required":true,"displayName":"» success"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"errors","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» errors"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"},{"schema":{"type":"array","items":{"type":"object","properties":{"code":{"type":"number"},"message":{"type":"string"},"type":{"type":"string"}},"required":["code","message"]},"example":[]},"in":"body","name":"messages","depth":1,"type":"array","safeType":"object[]","required":true,"displayName":"» messages"},{"schema":{"type":"number"},"in":"body","name":"code","depth":2,"type":"number","safeType":"number","required":true,"displayName":"»» code"},{"schema":{"type":"string"},"in":"body","name":"message","depth":2,"type":"string","safeType":"string","required":true,"displayName":"»» message"},{"schema":{"type":"string"},"in":"body","name":"type","depth":2,"type":"string","safeType":"string","required":false,"displayName":"»» type"}]}]} />

</Col>

<Col sticky>

<CodeGroup title="Request" tag="PUT" label="/v1/status_pages/{status_page_id}/groups/{group_id}/sort-order">
```bash {{ title: 'cURL' }}
curl --request PUT \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4/sort-order \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'Content-Type: application/json' \
  --data '{"component_ids":["a1b2c3d4","e5f6g7h8"]}'
```

```javascript
fetch("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4/sort-order", {
  "method": "PUT",
  "headers": {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
  },
  "body": "{\"component_ids\":[\"a1b2c3d4\",\"e5f6g7h8\"]}"
})
.then(response => {
  console.log(response);
})
.catch(err => {
  console.error(err);
});
```

```java
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"component_ids\":[\"a1b2c3d4\",\"e5f6g7h8\"]}");
Request request = new Request.Builder()
  .url("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4/sort-order")
  .put(body)
  .addHeader("Content-Type", "application/json")
  .addHeader("Accept", "application/json")
  .addHeader("Authorization", "Bearer {access-token}")
  .build();

Response response = client.newCall(request).execute();
```

```php
<?php

$request = new HttpRequest();
$request->setUrl('https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4/sort-order');
$request->setMethod(HTTP_METH_PUT);

$request->setHeaders([
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
]);

$request->setBody('{"component_ids":["a1b2c3d4","e5f6g7h8"]}');

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
```

```ruby
require 'uri'
require 'net/http'
require 'openssl'

url = URI("https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4/sort-order")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request["Accept"] = 'application/json'
request["Authorization"] = 'Bearer {access-token}'
request.body = "{\"component_ids\":[\"a1b2c3d4\",\"e5f6g7h8\"]}"

response = http.request(request)
puts response.read_body
```

```python
import requests

url = "https://api.onlineornot.com/v1/status_pages/a1b2c3d4/groups/a1b2c3d4/sort-order"

payload = {"component_ids": ["a1b2c3d4", "e5f6g7h8"]}
headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer {access-token}"
}

response = requests.request("PUT", url, json=payload, headers=headers)

print(response.text)
```

</CodeGroup>

```json {{ title: 'Response' }}
{
  "result": {
    "message": "Sort order updated successfully"
  },
  "success": true,
  "errors": [],
  "messages": []
}
```

</Col>
</Row>

---

