{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Create a live app","description":"Developer documentation for Wowza","siteUrl":"https://developer.wowza.com","keywords":"wowza video developer portal, api reference docs","lang":"en-US","image":"https://www.wowza.com/wp-content/uploads/Graphics-Social-Profile-Images-Docs-Resources-1024x512-1.jpg","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"create-a-live-app","__idx":0},"children":["Create a live app"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can use the Wowza Streaming Engine™ REST API to create and manage applications in Wowza Streaming Engine ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://www.wowza.com/products/streaming-engine"},"children":["media server software"]},"."," ","This article shows how to use cURL to query the REST API to create and manage a live streaming application."]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Notes:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Wowza Streaming Engine 4.3.0 or later is required."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["PHP examples for the tasks in this article are available in the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["tests"]}," folder of the ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://github.com/WowzaMediaSystems/wse-rest-library-php"},"children":["PHP REST Library for Wowza Streaming Engine on GitHub"]},"."]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"create-an-application","__idx":1},"children":["Create an application"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Create an application for live streaming with Wowza Streaming Engine default settings."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X POST \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  -H 'Content-Type:application/json; charset=utf-8' \\\n  http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/{appName} \\\n  -d'\n  {\n      \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/{appName}\",\n      \"name\": \"testlive\",\n      \"appType\": \"Live\",\n      \"clientStreamReadAccess\": \"*\",\n      \"clientStreamWriteAccess\": \"*\",\n      \"description\": \"A basic live application\",\n      \"streamConfig\": {\n          \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/{appName}/streamconfiguration\",\n          \"streamType\": \"live\"\n      }\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This example creates an application named ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["testlive"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X POST \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  -H 'Content-Type:application/json; charset=utf-8' \\\n   http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive \\\n  -d'\n    {\n      \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive\",\n      \"name\": \"testlive\",\n      \"appType\": \"Live\",\n      \"clientStreamReadAccess\": \"*\",\n      \"clientStreamWriteAccess\": \"*\",\n      \"description\": \"A basic live application\",\n      \"streamConfig\": {\n        \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/streamconfiguration\",\n        \"streamType\": \"live\"\n      }\n    }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The command should return a response that looks something like this:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","data-title":"Example response","header":{"title":"Example response","controls":{"copy":{}}},"source":"{\n  \"success\": true,\n  \"message\": \"Application (testlive) created successfully.\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You could also create the application ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["testlive"]}," with password authentication by adding ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["securityConfig"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ModuleCoreSecurity"]}," to the request:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X POST \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  -H 'Content-Type:application/json; charset=utf-8' \\\n  http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive \\\n  -d'\n  {\n    \"restURI\": \"http://localhost:8087/v2/servers/(serverName}/vhosts/{vhostName}/applications/testlive\",\n    \"name\": \"testlive\",\n    \"appType\": \"Live\",\n    \"description\": \"A live application with password authentication\",\n    \"streamConfig\": {\n      \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/streamconfiguration\",\n      \"streamType\": \"live\"\n    },\n    \"securityConfig\": {\n    \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/security\",\n    \"secureTokenVersion\": 0,\n    \"clientStreamWriteAccess\": \"*\",\n    \"publishRequirePassword\": true,\n    \"publishPasswordFile\": \"\",\n    \"publishRTMPSecureURL\": \"\",\n    \"publishIPBlackList\": \"\",\n    \"publishIPWhiteList\": \"\",\n    \"publishBlockDuplicateStreamNames\": false,\n    \"publishValidEncoders\": \"\",\n    \"publishAuthenticationMethod\": \"digest\",\n    \"playMaximumConnections\": 0,\n    \"playRequireSecureConnection\": false,\n    \"secureTokenSharedSecret\": \"\",\n    \"secureTokenUseTEAForRTMP\": false,\n    \"secureTokenIncludeClientIPInHash\": false,\n    \"secureTokenHashAlgorithm\": \"\",\n    \"secureTokenQueryParametersPrefix\": \"\",\n    \"secureTokenOriginSharedSecret\": \"\",\n    \"playIPBlackList\": \"\",\n    \"playIPWhiteList\": \"\",\n    \"playAuthenticationMethod\": \"none\"\n  },\n  \"modules\": {\n    \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/modules\",\n    \"moduleList\": \\[{\n    \"order\": 0,\n    \"name\": \"base\",\n    \"description\": \"Base\",\n    \"class\": \"com.wowza.wms.module.ModuleCore\"\n    }, {\n    \"order\": 1,\n    \"name\": \"logging\",\n    \"description\": \"Client Logging\",\n    \"class\": \"com.wowza.wms.module.ModuleClientLogging\"\n    }, {\n    \"order\": 2,\n    \"name\": \"flvplayback\",\n    \"description\": \"FLVPlayback\",\n    \"class\": \"com.wowza.wms.module.ModuleFLVPlayback\"\n    }, {\n    \"order\": 3,\n    \"name\": \"ModuleCoreSecurity\",\n    \"description\": \"Core Security Module for Applications\",\n    \"class\": \"com.wowza.wms.security.ModuleCoreSecurity\"\n  }\\]\n  }\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Here's how you would create the application ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["testlive"]}," with password authentication and a live stream packetizer enabled:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X POST \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  -H 'Content-Type:application/json; charset=utf-8' \\\n  http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}\\_/applications/testlive \\\n  -d'\n    {\n      \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive\",\n      \"name\": \"testlive\",\n      \"appType\": \"Live\",\n      \"description\": \"A live application with password authentication and packetizers\",\n      \"streamConfig\": {\n      \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/streamconfiguration\",\n      \"streamType\": \"live\",\n      \"liveStreamPacketizer\": \\[\n          \"cupertinostreamingpacketizer\"\n        \\]\n      },\n      \"securityConfig\": {\n        \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/security\",\n        \"secureTokenVersion\": 0,\n        \"clientStreamWriteAccess\": \"*\",\n        \"publishRequirePassword\": true,\n        \"publishPasswordFile\": \"\",\n        \"publishRTMPSecureURL\": \"\",\n        \"publishIPBlackList\": \"\",\n        \"publishIPWhiteList\": \"\",\n        \"publishBlockDuplicateStreamNames\": false,\n        \"publishValidEncoders\": \"\",\n        \"publishAuthenticationMethod\": \"digest\",\n        \"playMaximumConnections\": 0,\n        \"playRequireSecureConnection\": false,\n        \"secureTokenSharedSecret\": \"\",\n        \"secureTokenUseTEAForRTMP\": false,\n        \"secureTokenIncludeClientIPInHash\": false,\n        \"secureTokenHashAlgorithm\": \"\",\n        \"secureTokenQueryParametersPrefix\": \"\",\n        \"secureTokenOriginSharedSecret\": \"\",\n        \"playIPBlackList\": \"\",\n        \"playIPWhiteList\": \"\",\n        \"playAuthenticationMethod\": \"none\"\n      },\n    \"modules\": {\n      \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/modules\",\n      \"moduleList\": \\[\n        {\n          \"order\": 0,\n          \"name\": \"base\",\n          \"description\": \"Base\",\n          \"class\": \"com.wowza.wms.module.ModuleCore\"\n        }, {\n          \"order\": 1,\n          \"name\": \"logging\",\n          \"description\": \"Client Logging\",\n          \"class\": \"com.wowza.wms.module.ModuleClientLogging\"\n        }, {\n          \"order\": 2,\n          \"name\": \"flvplayback\",\n          \"description\": \"FLVPlayback\",\n          \"class\": \"com.wowza.wms.module.ModuleFLVPlayback\"\n        }, {\n          \"order\": 3,\n          \"name\": \"ModuleCoreSecurity\",\n          \"description\": \"Core Security Module for Applications\",\n          \"class\": \"com.wowza.wms.security.ModuleCoreSecurity\"\n      }\\]\n    }\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"update-an-applications-settings","__idx":2},"children":["Update an application's settings"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Update the application:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X PUT \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  -H 'Content-Type:application/json; charset=utf-8' \\\n  http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/{appName}'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Update the application ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["testlive"]}," to include the MPEG-DASH packetizer:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X PUT \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  -H 'Content-Type:application/json; charset=utf-8' \\\n  http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive \\\n  -d'\n  {\n    \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive\",\n    \"name\":\" testlive\",\n    \"appType\": \"Live\",\n    \"streamConfig\": {\n      \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/streamconfiguration\",\n      \"streamType\": \"live\",\n      \"liveStreamPacketizer\": \\[\n        \"cupertinostreamingpacketizer\",\n        \"mpegdashstreamingpacketizer\"\n      \\]\n    }\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The command should return a response that looks something like this:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","data-title":"Example response","header":{"title":"Example response","controls":{"copy":{}}},"source":"{\n  \"success\": true,\n  \"message\": \"Saved\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"add-custom-properties-to-an-application","__idx":3},"children":["Add custom properties to an application"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Update the ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["testlive"]}," application to include a custom module called ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["MyCustomModule"]},":"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X PUT \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  -H 'Content-Type:application/json; charset=utf-8' \\\n  http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/adv \\\n  -d'\n  {\n    \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/testlive/adv\",\n    \"version\": \"1430682096000\",\n    \"modules\": \\[\n      {\n        \"order\": 0,\n        \"name\": \"base\",\n        \"description\": \"Base\",\n        \"class\": \"com.wowza.wms.module.ModuleCore\"\n      }, {\n        \"order\": 0,\n        \"name\": \"logging\",\n        \"description\": \"Client Logging\",\n        \"class\": \"com.wowza.wms.module.ModuleClientLogging\"\n      }, {\n        \"order\": 0,\n        \"name\": \"flvplayback\",\n        \"description\": \"FLVPlayback\",\n        \"class\": \"com.wowza.wms.module.ModuleFLVPlayback\"\n      }, {\n        \"order\": 0,\n        \"name\": \"ModuleDRMVerimatrix\",\n        \"description\": \"ModuleDRMVerimatrix\",\n        \"class\": \"com.wowza.wms.drm.module.verimatrix.ModuleDRMVerimatrix\"\n      }, {\n        \"order\": 0,\n        \"name\": \"ModuleDRMBuyDRM\",\n        \"description\": \"ModuleDRMBuyDRM\",\n        \"class\": \"com.wowza.wms.drm.module.buydrm.ModuleDRMBuyDRM\"\n      }, {\n        \"order\": 0,\n        \"name\": \"ModulePushPublish\",\n        \"description\": \"Module Push Publish\",\n        \"class\": \"com.wowza.wms.pushpublish.module.ModulePushPublish\"\n      }, {\n        \"order\": 0,\n        \"name\": \"MyCustomModule\",\n        \"description\": \"Module Custom Module\",\n        \"class\": \"com.my.custom.path.MyCustomModule\"\n      }\\],\n    \"advancedSettings\": \\[\n      {\n        \"enabled\": false,\n        \"canRemove\": true,\n        \"name\": \"debugAACTimecodes\",\n        \"value\": \"false\",\n        \"defaultValue\": \"false\",\n        \"type\": \"Boolean\",\n        \"sectionName\": \"cupertinostreamingpacketizer\",\n        \"section\": \"/Root/Application/LiveStreamPacketizer\",\n        \"documented\": true\n      }, {\n        \"enabled\": false,\n        \"canRemove\": true,\n        \"name\": \"debugMP3Timecodes\",\n        \"value\": \"false\",\n        \"defaultValue\": \"false\",\n        \"type\": \"Boolean\",\n        \"sectionName\": \"cupertinostreamingpacketizer\",\n        \"section\": \"/Root/Application/LiveStreamPacketizer\",\n        \"documented\": true\n      }, {\n        \"enabled\": false,\n        \"canRemove\": true,\n        \"name\": \"cupertinoChunkDurationTarget\",\n        \"value\": \"0\",\n        \"defaultValue\": \"10000\",\n        \"type\": \"Integer\",\n        \"sectionName\": \"cupertinostreamingpacketizer\",\n        \"section\": \"/Root/Application/LiveStreamPacketizer\",\n        \"documented\": true\n      }, {\n        \"enabled\": true,\n        \"canRemove\": false,\n        \"name\": \"myCustomPropertyName\",\n        \"value\": \"myValue\",\n        \"defaultValue\": null,\n        \"type\": \"String\",\n        \"sectionName\": \"Application\",\n        \"section\": \"/Root/Application\",\n        \"documented\": false\n      }\\]\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The result is that your application's configuration includes the following custom modules and properties:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"html","header":{"controls":{"copy":{}}},"source":"<Modules>\n    <Module>\n        <Name>base</Name>\n        <Description>Base</Description>\n        <Class>com.wowza.wms.module.ModuleCore</Class>\n    </Module>\n    <Module>\n        <Name>logging</Name>\n        <Description>Client Logging</Description>\n        <Class>com.wowza.wms.module.ModuleClientLogging</Class>\n    </Module>\n    <Module>\n        <Name>flvplayback</Name>\n        <Description>FLVPlayback</Description>\n        <Class>com.wowza.wms.module.ModuleFLVPlayback</Class>\n    </Module>\n    <Module>\n        <Name>ModuleDRMVerimatrix</Name>\n        <Description>ModuleDRMVerimatrix</Description>\n        <Class>com.wowza.wms.drm.module.verimatrix.ModuleDRMVerimatrix</Class>\n    </Module>\n    <Module>\n        <Name>ModuleDRMBuyDRM</Name>\n        <Description>ModuleDRMBuyDRM</Description>\n        <Class>com.wowza.wms.drm.module.buydrm.ModuleDRMBuyDRM</Class>\n    </Module>\n    <Module>\n        <Name>ModulePushPublish</Name>\n        <Description>Module Push Publish</Description>\n        <Class>com.wowza.wms.pushpublish.module.ModulePushPublish</Class>\n    </Module>\n    <Module>\n        <Name>MyCustomModule</Name>\n        <Description>Module Custom Module</Description>\n        <Class>com.my.custom.path.MyCustomModule</Class>\n    </Module>\n</Modules>\n<!-- Properties defined here will be added to the IApplication.getProperties() and IApplicationInstance.getProperties() collections -->\n<Properties>\n    <Property>\n        <Name>myCustomPropertyName</Name>\n        <Value>myValue</Value>\n        <Type>String</Type>\n    </Property>\n</Properties>\n","lang":"html"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"restart-an-application","__idx":4},"children":["Restart an application"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Restart an application:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X PUT \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/{appName}/actions/restart\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"get-a-list-of-applications","__idx":5},"children":["Get a list of applications"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Get a list of all applications on an instance of Wowza Streaming Engine:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","data-title":"Example request","header":{"title":"Example request","controls":{"copy":{}}},"source":"curl -X GET \\\n  -H 'Accept:application/json; charset=utf-8' \\\n  http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The command should return a response that looks something like this:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","data-title":"Example response","header":{"title":"Example response","controls":{"copy":{}}},"source":"{\n  \"restURI\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications\",\n  \"applications\": [\n    {\n      \"id\": \"live\",\n      \"href\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/live\",\n      \"appType\": \"Live\",\n      \"dvrEnabled\": false,\n      \"drmEnabled\": false,\n      \"transcoderEnabled\": false\n    },\n    {\n      \"id\": \"vod\",\n      \"href\": \"http://localhost:8087/v2/servers/{serverName}/vhosts/{vhostName}/applications/vod\",\n      \"appType\": \"VOD\",\n      \"dvrEnabled\": false,\n      \"drmEnabled\": false,\n      \"transcoderEnabled\": false\n    }\n  ]\n}\n","lang":"json"},"children":[]}]},"headings":[{"value":"Create a live app","id":"create-a-live-app","depth":1},{"value":"Create an application","id":"create-an-application","depth":2},{"value":"Update an application's settings","id":"update-an-applications-settings","depth":2},{"value":"Add custom properties to an application","id":"add-custom-properties-to-an-application","depth":2},{"value":"Restart an application","id":"restart-an-application","depth":2},{"value":"Get a list of applications","id":"get-a-list-of-applications","depth":2}],"frontmatter":{"seo":{"title":"Create a live app"}},"lastModified":"2026-04-16T14:49:25.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/wowza-engine/guides/live-app","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}