> Documentation index for AI agents: https://docs.pagerduty.com/llms.txt

# Create a status update on an incident

`POST https://api.pagerduty.com/incidents/{id}/status_updates`

Create a new status update for the specified incident. Optionally pass `subject` and `html_message` properties in the request body to override the email notification that gets sent.

An incident represents a problem or an issue that needs to be addressed and resolved.

For more information see the [API Concepts Document](https://docs.pagerduty.com/developer/api-concepts#incidents)

Scoped OAuth requires: `incidents.write`

## Authorization

- **api_key** (apiKey) — `Authorization` header. The API Key with format `Token token=<API_KEY>`

## Path parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `id` | string | yes | The ID of the resource. |

## Header parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `Accept` | string | yes | The `Accept` header is used as a versioning header. Default: `application/vnd.pagerduty+json;version=2`. |
| `From` | string (email) | yes | The email address of a valid user associated with the account making the request. |

## Request body (`application/json`)

| Field | Type | Required | Description |
|---|---|---|---|
| `message` | string | yes | The message to be posted as a status update. |
| `subject` | string |  | The subject to be sent for the custom html email status update. Required if sending custom html email. |
| `html_message` | string |  | The html content to be sent for the custom html email status update. Required if sending custom html email. |

Example: Request Example

```json
{
  "message": "The server fire is spreading.",
  "subject": "Server Fire Update",
  "html_message": "<h1>Server is still on fire</h1>"
}
```

## Response 200

The new status update for the specified incident.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `status_update` | object | yes |  |
| `status_update.id` | string |  |  |
| `status_update.message` | string |  | The message of the status update. |
| `status_update.created_at` | string |  | The date/time when this status update was created. |
| `status_update.sender` | object |  |  |
| `status_update.sender.id` | string | yes | Read-only. |
| `status_update.sender.summary` | string \| null |  | A short-form, server-generated string that provides succinct, important information about an object suitable for primary labeling of an entity in a client. In many cases, this will be identical to `name`, though it is not intended to be an identifier. Read-only. |
| `status_update.sender.type` | string | yes | One of: `user_reference`. |
| `status_update.sender.self` | string \| null (url) |  | the API show URL at which the object is accessible. Read-only. |
| `status_update.sender.html_url` | string \| null (url) |  | a URL at which the entity is uniquely displayed in the Web app. Read-only. |
| `status_update.subject` | string |  | The subject of the custom html email status update. Present if included in request body. |
| `status_update.html_message` | string |  | The html content of the custom html email status update. Present if included in request body. |

Example: Response Example

```json
{
  "status_update": {
    "id": "PWL7QXS",
    "message": "The server fire is spreading.",
    "sender": {
      "id": "PXPGF42",
      "type": "user_reference",
      "summary": "Earline Greenholt",
      "self": "https://api.pagerduty.com/users/PXPGF42",
      "html_url": "https://subdomain.pagerduty.com/users/PXPGF42"
    },
    "created_at": "2013-03-06T15:28:51-05:00",
    "html_message": "<h1>Server is still on fire</h1>",
    "subject": "Server Fire Update"
  }
}
```

## Response 400

Caller provided invalid arguments. Please review the response for error details. Retrying with the same arguments will *not* work.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Response 401

Caller did not supply credentials or did not provide the correct credentials.
If you are using an API key, it may be invalid or your Authorization header may be malformed.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Response 403

Caller is not authorized to view the requested resource.
While your authentication is valid, the authenticated user or token does not have permission to perform this action.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Response 404

The requested resource was not found.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Response 429

Too many requests have been made, the rate limit has been reached.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Developer Agreement

Your access to and use of the PagerDuty Developer Services is governed by the [PagerDuty Developer Agreement](https://docs.pagerduty.com/developer/pagerduty-developer-agreement).
