---
updatedAt: 2026-05-08T15:45:20.000Z
agentTools:
  projectIndex: https://docs.zype.com/llms.txt
---

# Update RTMP Profile

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "Playout Scheduler",
    "description": "",
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://api.zype.com/"
    }
  ],
  "security": [
    {
      "api_key": []
    }
  ],
  "paths": {
    "/scheduler/v1/profiles/rtmp": {
      "post": {
        "summary": "Create RTMP Profile",
        "description": "",
        "tags": [
          "RTMP Profiles"
        ],
        "operationId": "createRtmpProfile",
        "x-codegen-request-body-name": "profile",
        "requestBody": {
          "description": "",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "title": "RtmpProfileRequest",
                "description": "Request body for creating or updating an RTMP profile. Must contain exactly one rendition group with both audio and video configs.",
                "properties": {
                  "code": {
                    "type": "string",
                    "description": "Determines the profile title that will be displayed in the UI."
                  },
                  "renditionGroups": {
                    "type": "array",
                    "description": "RTMP profiles allow exactly one rendition group, which must include both audio and video configs.",
                    "items": {
                      "type": "object",
                      "title": "RtmpRenditionGroup",
                      "properties": {
                        "name": {
                          "type": "string"
                        },
                        "renditionType": {
                          "type": "string",
                          "enum": [
                            "STANDARD_RTMP"
                          ]
                        },
                        "captionDescriptionName": {
                          "type": "string"
                        },
                        "audio": {
                          "type": "object",
                          "title": "AudioRenditionGroup",
                          "properties": {
                            "bitrate": {
                              "type": "number",
                              "description": "Average bitrate in bits/second."
                            },
                            "sampleRate": {
                              "type": "number",
                              "description": "Sample rate in Hz."
                            },
                            "audioNormalization": {
                              "type": "boolean",
                              "description": "Enable advanced audio normalization settings."
                            }
                          }
                        },
                        "video": {
                          "type": "object",
                          "title": "VideoRenditionGroup",
                          "properties": {
                            "codecProfile": {
                              "type": "string"
                            },
                            "codecLevel": {
                              "type": "string"
                            },
                            "width": {
                              "type": "number"
                            },
                            "height": {
                              "type": "number"
                            },
                            "framerate": {
                              "type": "number",
                              "enum": [
                                10,
                                11.988,
                                12,
                                12.5,
                                14.985,
                                15,
                                23.976,
                                24,
                                25,
                                29.997,
                                30,
                                50,
                                59.94,
                                60
                              ]
                            },
                            "bitrate": {
                              "type": "number",
                              "description": "Average bitrate in bits/second."
                            },
                            "gopSize": {
                              "type": "number",
                              "description": "GOP size (keyframe interval) in units of either frames or seconds per gopSizeUnits."
                            },
                            "gopUnits": {
                              "type": "string",
                              "enum": [
                                "FRAMES",
                                "SECONDS"
                              ],
                              "description": "Indicates if the gopSize is specified in frames or seconds."
                            },
                            "scalingBehavior": {
                              "type": "string",
                              "enum": [
                                "DEFAULT",
                                "STRETCH_TO_OUTPUT"
                              ],
                              "description": "STRETCH_TO_OUTPUT configures the output position to stretch the video to the specified output resolution (height and width). This option will override any position value. DEFAULT may insert black boxes (pillar boxes or letter boxes) around the video to provide the specified output resolution."
                            },
                            "bFrames": {
                              "type": "number",
                              "description": "Number of B-frames between reference frames. Must be a number between 0 and 7. Must be 0 when codecProfile is BASELINE."
                            },
                            "bFrameReference": {
                              "type": "string",
                              "enum": [
                                "ENABLED",
                                "DISABLED"
                              ],
                              "description": "If enabled, use reference B frames for GOP structures that have B frames > 1."
                            },
                            "entropyEncoding": {
                              "type": "string",
                              "enum": [
                                "CABAC",
                                "CAVLC"
                              ],
                              "default": "CABAC",
                              "description": "Entropy encoding mode for the H.264 stream. CABAC is only valid with MAIN or HIGH codec profiles; BASELINE requires CAVLC."
                            },
                            "adaptiveQuantization": {
                              "type": "string",
                              "enum": [
                                "HIGH",
                                "AUTO"
                              ]
                            },
                            "lookAheadRateControl": {
                              "type": "string",
                              "enum": [
                                "HIGH",
                                "MEDIUM"
                              ],
                              "description": "Amount of lookahead."
                            },
                            "parControl": {
                              "type": "string",
                              "enum": [
                                "SPECIFIED",
                                "INITIALIZE_FROM_SOURCE"
                              ],
                              "description": "This field indicates how the output pixel aspect ratio is specified. If 'specified' is selected then the output video pixel aspect ratio is determined by parNumerator and parDenominator, else if 'initializeFromSource' is selected then the output pixsel aspect ratio will be set equal to the input video pixel aspect ratio of the first input."
                            },
                            "slices": {
                              "type": "number",
                              "description": "Number of slices per picture. Must be less than or equal to the number of macroblock rows for progressive pictures, and less than or equal to half the number of macroblock rows for interlaced pictures. This field is optional; when no value is specified the encoder will choose the number of slices based on encode resolution. When it's present it must be a number between 1 and 32."
                            },
                            "refFrames": {
                              "type": "number",
                              "description": "Number of reference frames to use. Must be a number between 1 and 6."
                            }
                          }
                        }
                      }
                    }
                  },
                  "renditionGroupsToDelete": {
                    "type": "array",
                    "description": "IDs of existing rendition groups to remove (used in update requests).",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "RtmpProfile",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "created_at": {
                      "type": "string",
                      "format": "date"
                    },
                    "siteId": {
                      "type": "string"
                    },
                    "code": {
                      "type": "string",
                      "description": "Determines the profile title that will be displayed in the UI."
                    },
                    "renditionGroups": {
                      "type": "array",
                      "description": "RTMP profiles allow exactly one rendition group.",
                      "items": {
                        "type": "object",
                        "title": "RtmpRenditionGroup",
                        "description": "Rendition group for an RTMP profile. RTMP profiles allow exactly one rendition group, which must include both audio and video configs.",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "renditionType": {
                            "type": "string",
                            "enum": [
                              "STANDARD_RTMP"
                            ]
                          },
                          "captionDescriptionName": {
                            "type": "string"
                          },
                          "AudioRenditionGroup": {
                            "type": "object",
                            "title": "AudioRenditionGroup",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "bitrate": {
                                "type": "number",
                                "description": "Average bitrate in bits/second."
                              },
                              "sampleRate": {
                                "type": "number",
                                "description": "Sample rate in Hz."
                              },
                              "audioNormalization": {
                                "type": "boolean",
                                "description": "Enable advanced audio normalization settings."
                              }
                            }
                          },
                          "VideoRenditionGroup": {
                            "type": "object",
                            "title": "VideoRenditionGroup",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "codecProfile": {
                                "type": "string"
                              },
                              "codecLevel": {
                                "type": "string"
                              },
                              "width": {
                                "type": "number"
                              },
                              "height": {
                                "type": "number"
                              },
                              "framerate": {
                                "type": "number",
                                "enum": [
                                  10,
                                  11.988,
                                  12,
                                  12.5,
                                  14.985,
                                  15,
                                  23.976,
                                  24,
                                  25,
                                  29.997,
                                  30,
                                  50,
                                  59.94,
                                  60
                                ]
                              },
                              "bitrate": {
                                "type": "number",
                                "description": "Average bitrate in bits/second."
                              },
                              "gopSize": {
                                "type": "number",
                                "description": "GOP size (keyframe interval) in units of either frames or seconds per gopSizeUnits."
                              },
                              "gopUnits": {
                                "type": "string",
                                "enum": [
                                  "FRAMES",
                                  "SECONDS"
                                ],
                                "description": "Indicates if the gopSize is specified in frames or seconds."
                              },
                              "scalingBehavior": {
                                "type": "string",
                                "enum": [
                                  "DEFAULT",
                                  "STRETCH_TO_OUTPUT"
                                ],
                                "description": "STRETCH_TO_OUTPUT configures the output position to stretch the video to the specified output resolution (height and width). This option will override any position value. DEFAULT may insert black boxes (pillar boxes or letter boxes) around the video to provide the specified output resolution."
                              },
                              "bFrames": {
                                "type": "number",
                                "description": "Number of B-frames between reference frames. Must be a number between 0 and 7. Must be 0 when codecProfile is BASELINE."
                              },
                              "bFrameReference": {
                                "type": "string",
                                "enum": [
                                  "ENABLED",
                                  "DISABLED"
                                ],
                                "description": "If enabled, use reference B frames for GOP structures that have B frames > 1."
                              },
                              "entropyEncoding": {
                                "type": "string",
                                "enum": [
                                  "CABAC",
                                  "CAVLC"
                                ],
                                "default": "CABAC",
                                "description": "Entropy encoding mode for the H.264 stream. CABAC is only valid with MAIN or HIGH codec profiles; BASELINE requires CAVLC."
                              },
                              "adaptiveQuantization": {
                                "type": "string",
                                "enum": [
                                  "HIGH",
                                  "AUTO"
                                ]
                              },
                              "lookAheadRateControl": {
                                "type": "string",
                                "enum": [
                                  "HIGH",
                                  "MEDIUM"
                                ],
                                "description": "Amount of lookahead."
                              },
                              "parControl": {
                                "type": "string",
                                "enum": [
                                  "SPECIFIED",
                                  "INITIALIZE_FROM_SOURCE"
                                ],
                                "description": "This field indicates how the output pixel aspect ratio is specified. If 'specified' is selected then the output video pixel aspect ratio is determined by parNumerator and parDenominator, else if 'initializeFromSource' is selected then the output pixsel aspect ratio will be set equal to the input video pixel aspect ratio of the first input."
                              },
                              "slices": {
                                "type": "number",
                                "description": "Number of slices per picture. Must be less than or equal to the number of macroblock rows for progressive pictures, and less than or equal to half the number of macroblock rows for interlaced pictures. This field is optional; when no value is specified the encoder will choose the number of slices based on encode resolution. When it's present it must be a number between 1 and 32."
                              },
                              "refFrames": {
                                "type": "number",
                                "description": "Number of reference frames to use. Must be a number between 1 and 6."
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable entity",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/paths/~1scheduler~1v1~1types/get/responses/422/content/application~1json/schema"
                }
              }
            }
          }
        }
      }
    },
    "/scheduler/v1/profiles/rtmp/{id}": {
      "get": {
        "summary": "View RTMP Profile",
        "description": "",
        "tags": [
          "RTMP Profiles"
        ],
        "operationId": "getRtmpProfile",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "ID of RTMP Profile"
          }
        ],
        "responses": {
          "200": {
            "description": "Return an RTMP profile",
            "content": {
              "application/json": {
                "schema": {
                  "title": "RtmpProfileResponse",
                  "type": "object",
                  "properties": {
                    "profile": {
                      "$ref": "#/paths/~1scheduler~1v1~1profiles~1rtmp/post/responses/201/content/application~1json/schema"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "RTMP Profile not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/paths/~1scheduler~1v2~1uploads/post/responses/404/content/application~1json/schema"
                }
              }
            }
          }
        }
      },
      "put": {
        "summary": "Update RTMP Profile",
        "description": "",
        "tags": [
          "RTMP Profiles"
        ],
        "operationId": "updateRtmpProfile",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "ID of RTMP Profile"
          }
        ],
        "x-codegen-request-body-name": "profile",
        "requestBody": {
          "description": "",
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/paths/~1scheduler~1v1~1profiles~1rtmp/post/requestBody/content/application~1json/schema"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/paths/~1scheduler~1v1~1profiles~1rtmp~1{id}/get/responses/200/content/application~1json/schema"
                }
              }
            }
          },
          "404": {
            "description": "RTMP Profile id not found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/paths/~1scheduler~1v2~1uploads/post/responses/404/content/application~1json/schema"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable entity",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/paths/~1scheduler~1v1~1types/get/responses/422/content/application~1json/schema"
                }
              }
            }
          }
        }
      }
    },
    "/scheduler/v1/types": {
      "get": {
        "summary": "List Destination Types",
        "description": "",
        "operationId": "getDestinationTypes",
        "tags": [
          "Destinations"
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "description": "Page number to return, with per_page dictating page size"
          },
          {
            "name": "per_page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "description": "Number of records to return per page"
          }
        ],
        "responses": {
          "200": {
            "description": "Destination Types response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "DestinationTypesResponse",
                  "type": "object",
                  "properties": {
                    "destinationTypes": {
                      "type": "array",
                      "items": {
                        "$ref": "#/paths/~1scheduler~1v1~1types~1{id}/get/responses/200/content/application~1json/schema/properties/destinationType"
                      },
                      "description": ""
                    },
                    "pagination": {
                      "title": "PlayoutSchedulerPagination",
                      "type": "object",
                      "properties": {
                        "perPage": {
                          "type": "number",
                          "format": "int32",
                          "description": "the number of results returned per page"
                        },
                        "page": {
                          "type": "number",
                          "format": "int32",
                          "description": "The current page of results"
                        },
                        "totalPages": {
                          "type": "number",
                          "format": "int32",
                          "description": "the total number of pages available, using per_page"
                        },
                        "count": {
                          "type": "number",
                          "format": "int32",
                          "description": "the quantity of results on the current page"
                        }
                      },
                      "example": {
                        "perPage": 100,
                        "page": 1,
                        "totalPages": 3,
                        "count": 100
                      }
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable entity",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Unprocessable Entity",
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/scheduler/v2/uploads": {
      "post": {
        "summary": "Create Upload",
        "tags": [
          "Uploads"
        ],
        "operationId": "createUploadPlayout",
        "requestBody": {
          "required": true,
          "content": {
            "multipart/form-data": {
              "schema": {
                "title": "UploadRequest",
                "type": "object",
                "required": [
                  "region",
                  "upload"
                ],
                "properties": {
                  "region": {
                    "type": "string",
                    "title": "Channel region"
                  },
                  "upload": {
                    "type": "string",
                    "format": "binary",
                    "description": "The file to upload."
                  }
                }
              },
              "encoding": {
                "upload": {
                  "contentType": "image/png"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Upload",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Upload id"
                    },
                    "height": {
                      "type": "number",
                      "description": "Image height"
                    },
                    "width": {
                      "type": "number",
                      "description": "Image width"
                    },
                    "url": {
                      "type": "string",
                      "description": "Image URL to preview. Expires in 1 hour"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Region not found",
            "content": {
              "application/json": {
                "schema": {
                  "title": "NotFound",
                  "type": "object",
                  "required": [
                    "message"
                  ],
                  "properties": {
                    "message": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable entity",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/paths/~1scheduler~1v1~1types/get/responses/422/content/application~1json/schema"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "api_key": {
        "type": "apiKey",
        "name": "X-API-Key",
        "in": "header"
      }
    }
  }
}
```