---
updatedAt: 2026-07-30T09:16:34.000Z
agentTools:
  siteIndex: https://developer.bitmovin.com/llms.txt
  projectIndex: https://developer.bitmovin.com/encoding/llms.txt
---

# Create 'Encoding Status Changed' Webhook for a specific Encoding

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "VOD Encoding API",
    "description": "Bitmovins API Reference Description",
    "version": "3.0",
    "termsOfService": "https://bitmovin.com",
    "contact": {
      "name": "Bitmovin Inc",
      "url": "https://bitmovin.com",
      "email": "support@bitmovin.com"
    }
  },
  "servers": [
    {
      "url": "https://api.bitmovin.com/v1",
      "description": "Bitmovin Server",
      "variables": {}
    }
  ],
  "security": [
    {
      "ApiKeyAuth": []
    },
    {
      "ApiKeyAuth": [],
      "TenantOrgId": []
    }
  ],
  "paths": {
    "/notifications/webhooks/encoding/encodings/{encoding_id}/encoding-status-changed": {
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Create 'Encoding Status Changed' Webhook for a specific Encoding",
        "operationId": "PostNotificationsWebhooksEncodingEncodingsEncodingStatusChangedByEncodingId",
        "x-bitmovin": {
          "product": "shared",
          "operationName": "createByEncodingId"
        },
        "parameters": [
          {
            "name": "encoding_id",
            "in": "path",
            "description": "Id of the encoding resource",
            "style": "simple",
            "required": true,
            "schema": {
              "type": "string",
              "example": "f3177c2e-0000-4ba6-bd20-1dee353d8a72"
            }
          }
        ],
        "requestBody": {
          "description": "The webhook notifications object. For conditions, following attributes are possible: 'type': 'Input file download', 'Input file analysis', 'Per-Title analysis', 'Encoding', 'Progressive Muxing' 'progress': number in range of 0-100 'status': 'RUNNING', 'FINISHED', 'ERROR'\nExamples: To only get notified about the encoding process, create a Condition object and set attribute='type', value='Encoding', operator=EQUAL To only get notified if a workflow step is finished, create a Condition object and set attribute='status', value='FINISHED', operator=EQUAL To only get notified if a workflow step is over 50%,  create a Condition object and set attribute='progress', value='50', operator=GREATER_THAN ",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookNotificationWithStreamConditionsRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Successful response.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/ResponseEnvelope"
                    },
                    {
                      "properties": {
                        "data": {
                          "properties": {
                            "result": {
                              "allOf": [
                                {
                                  "$ref": "#/components/schemas/WebhookNotificationWithStreamConditions"
                                },
                                {
                                  "description": "Notification Details"
                                }
                              ]
                            }
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error response.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResponseError"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "description": "Your Bitmovin API key",
        "name": "X-Api-Key",
        "in": "header"
      },
      "TenantOrgId": {
        "type": "apiKey",
        "description": "Your Bitmovin account organization",
        "name": "X-Tenant-Org-Id",
        "in": "header"
      }
    },
    "schemas": {
      "BitmovinResponse": {
        "title": "BitmovinResponse",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string",
            "readOnly": true,
            "description": "Id of the resource",
            "example": "cb90b80c-8867-4e3b-8479-174aa2843f62"
          }
        }
      },
      "AbstractCondition": {
        "title": "AbstractCondition"
      },
      "Link": {
        "title": "Link",
        "required": [
          "href"
        ],
        "properties": {
          "href": {
            "type": "string",
            "description": "webpage target URL",
            "example": "https://bitmovin.com/encoding-documentation/bitmovin-api/#/reference/encoding/manifests/add-period"
          },
          "title": {
            "type": "string",
            "description": "Short description of the linked page",
            "example": "how to add a period to a manifest"
          }
        }
      },
      "Message": {
        "title": "Message",
        "required": [
          "type",
          "text"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/BitmovinResponse"
          },
          {
            "properties": {
              "type": {
                "description": "Message type giving a hint on the importance of the message (log level)",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/MessageType"
                  }
                ]
              },
              "text": {
                "type": "string",
                "description": "Message text",
                "example": "field must not be empty"
              },
              "field": {
                "type": "string",
                "description": "Name of the field to which the message is referring to",
                "example": "manifestId"
              },
              "links": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Link"
                },
                "description": "collection of links to webpages containing further information on the topic"
              },
              "more": {
                "type": "object",
                "description": "Service-specific information"
              },
              "date": {
                "type": "string",
                "format": "date-time",
                "description": "Timestamp when the message occurred",
                "example": "2016-06-25T20:09:23.69Z"
              }
            }
          }
        ]
      },
      "MessageType": {
        "title": "MessageType",
        "type": "string",
        "enum": [
          "ERROR",
          "WARNING",
          "INFO",
          "DEBUG",
          "TRACE"
        ]
      },
      "Notification": {
        "title": "Notification",
        "allOf": [
          {
            "$ref": "#/components/schemas/BitmovinResponse"
          },
          {
            "properties": {
              "resolve": {
                "type": "boolean",
                "description": "Notify when condition resolves after it was met",
                "example": "true"
              },
              "resourceId": {
                "type": "string",
                "description": "Specific resource, e.g. encoding id"
              },
              "triggeredAt": {
                "type": "string",
                "format": "date-time",
                "readOnly": true,
                "description": "Last time the notification was triggered",
                "example": "2016-06-25T20:09:23.69Z"
              },
              "type": {
                "type": "string",
                "example": "EMAIL"
              },
              "eventType": {
                "type": "string",
                "example": "LIVE_INPUT_STREAM_CHANGED",
                "readOnly": true
              },
              "category": {
                "type": "string",
                "example": "ENCODING",
                "readOnly": true
              },
              "resourceType": {
                "type": "string",
                "example": "ENCODING",
                "readOnly": true
              },
              "muted": {
                "type": "boolean"
              },
              "customData": {
                "type": "string",
                "writeOnly": true,
                "description": "User-specific meta data. This can hold anything.",
                "additionalProperties": {
                  "type": "object"
                }
              }
            }
          }
        ]
      },
      "ResponseEnvelope": {
        "title": "ResponseEnvelope",
        "required": [
          "requestId",
          "status",
          "data"
        ],
        "properties": {
          "requestId": {
            "type": "string",
            "readOnly": true,
            "description": "Unique correlation id",
            "example": "6d84e126-d10c-4e52-bbfb-bd4c92bc8333"
          },
          "status": {
            "description": "Response status information",
            "readOnly": true,
            "example": "SUCCESS",
            "allOf": [
              {
                "$ref": "#/components/schemas/ResponseStatus"
              }
            ]
          },
          "data": {
            "description": "Response information",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ResultWrapper"
              }
            ]
          },
          "more": {
            "type": "object",
            "description": "Additional endpoint specific information"
          }
        }
      },
      "ResponseError": {
        "title": "ResponseError",
        "required": [
          "requestId",
          "status",
          "data"
        ],
        "properties": {
          "requestId": {
            "type": "string",
            "readOnly": true,
            "description": "Unique correlation id",
            "example": "6d84e126-d10c-4e52-bbfb-bd4c92bc8333"
          },
          "status": {
            "description": "Response status information",
            "readOnly": true,
            "example": "ERROR",
            "allOf": [
              {
                "$ref": "#/components/schemas/ResponseStatus"
              }
            ]
          },
          "data": {
            "description": "Response information",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ResponseErrorData"
              }
            ]
          }
        }
      },
      "ResponseErrorData": {
        "title": "ResponseErrorData",
        "required": [
          "code",
          "message",
          "developerMessage"
        ],
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32",
            "readOnly": true,
            "description": "Contains an error code as defined in https://bitmovin.com/encoding-documentation/bitmovin-api/#/introduction/api-error-codes\n",
            "example": 1005
          },
          "message": {
            "type": "string",
            "readOnly": true,
            "description": "General error message"
          },
          "developerMessage": {
            "type": "string",
            "readOnly": true,
            "description": "More detailed message meant for developers"
          },
          "links": {
            "type": "array",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Link"
            },
            "description": "collection of links to webpages containing further information on the topic"
          },
          "details": {
            "type": "array",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Message"
            },
            "description": "collection of messages containing more detailed information on the cause of the error"
          }
        }
      },
      "ResponseStatus": {
        "title": "ResponseStatus",
        "type": "string",
        "enum": [
          "SUCCESS",
          "ERROR"
        ]
      },
      "ResultWrapper": {
        "title": "ResultWrapper",
        "properties": {
          "result": {
            "type": "object",
            "readOnly": true
          }
        }
      },
      "SignatureType": {
        "title": "SignatureType",
        "type": "string",
        "enum": [
          "HMAC"
        ]
      },
      "WebhookHttpMethod": {
        "title": "WebhookHttpMethod",
        "type": "string",
        "enum": [
          "POST",
          "PUT"
        ]
      },
      "WebhookSignature": {
        "title": "WebhookSignature",
        "required": [
          "type",
          "key"
        ],
        "properties": {
          "type": {
            "description": "The signature type used for the webhook.\n\nSelects one of the supported signatures. The signature is attached to the list of headers with the key `Bitmovin-Signature`.\nIn case of the `HMAC` type the SHA512 hashing algorithm is used to generate an authentication code from the webhook body.\n",
            "example": "HMAC",
            "allOf": [
              {
                "$ref": "#/components/schemas/SignatureType"
              }
            ]
          },
          "key": {
            "type": "string",
            "description": "The key of the signature",
            "writeOnly": true,
            "example": "secretKey"
          }
        }
      },
      "WebhookNotification": {
        "title": "WebhookNotification",
        "required": [
          "url"
        ],
        "allOf": [
          {
            "$ref": "#/components/schemas/Notification"
          },
          {
            "properties": {
              "type": {
                "type": "string",
                "example": "WEBHOOK",
                "readOnly": true
              },
              "url": {
                "type": "string",
                "example": "https://www.example.com/my/webhook/endpoint",
                "description": "The destination URL where the webhook data is send to"
              },
              "method": {
                "description": "HTTP method used for the webhook",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/WebhookHttpMethod"
                  }
                ]
              },
              "insecureSsl": {
                "type": "boolean",
                "description": "Skip verification of the SSL certificate",
                "example": false
              },
              "signature": {
                "description": "Signature used for the webhook",
                "allOf": [
                  {
                    "$ref": "#/components/schemas/WebhookSignature"
                  }
                ]
              }
            }
          }
        ]
      },
      "WebhookNotificationWithStreamConditionsRequest": {
        "title": "WebhookNotificationWithStreamConditionsRequest",
        "allOf": [
          {
            "$ref": "#/components/schemas/WebhookNotification"
          },
          {
            "properties": {
              "resolve": {
                "type": "boolean",
                "default": true,
                "description": "Notify when the given conditions are resolved. E.g. when the input stream is online again after a disconnect"
              },
              "conditions": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AbstractCondition"
                  }
                ]
              }
            }
          }
        ]
      },
      "WebhookNotificationWithStreamConditions": {
        "title": "WebhookNotificationWithStreamConditions",
        "allOf": [
          {
            "$ref": "#/components/schemas/WebhookNotification"
          },
          {
            "properties": {
              "resolve": {
                "type": "boolean",
                "default": true,
                "description": "Notify when condition resolves after it was met"
              },
              "conditions": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/AbstractCondition"
                  }
                ]
              }
            }
          }
        ]
      }
    }
  },
  "tags": [
    {
      "name": "Webhooks"
    }
  ]
}
```