Application Ingest Settings Update

Updates the stream ingest settings for an application.

Request

Property Value
Method PATCH
URL /api/applications/{appName}/settings/ingest
Content-Type application/json
Authentication Bearer Token

Path Parameters

Parameter Type Required Description
appName string Yes Application name

Request Body

Parameter Type Required Description
data.attributes.allowStreamIngest boolean No Allow stream ingestion
data.attributes.autoStreamPublish boolean No Auto-publish incoming streams
data.attributes.allowStreamOverwrite boolean No Allow overwriting existing streams with the same key
data.attributes.authorizationEnabled boolean No Enable ingest authorization
data.attributes.authType "none" | "managed" | "request" | "file" | "local" No Authorization type (required if authorizationEnabled is true)

Additional parameters depend on the authType. See Authorization Types section.

Example Request (No Authorization)

{
  "data": {
    "attributes": {
      "allowStreamIngest": true,
      "autoStreamPublish": true,
      "allowStreamOverwrite": false,
      "authorizationEnabled": false
    }
  }
}

Example Request (Managed Authorization)

{
  "data": {
    "attributes": {
      "allowStreamIngest": true,
      "autoStreamPublish": true,
      "allowStreamOverwrite": false,
      "authorizationEnabled": true,
      "authType": "managed"
    }
  }
}

Example Request (HTTP Request Authorization)

{
  "data": {
    "attributes": {
      "allowStreamIngest": true,
      "autoStreamPublish": true,
      "allowStreamOverwrite": true,
      "authorizationEnabled": true,
      "authType": "request",
      "requestURL": "https://api.example.com/auth/stream/${streamKey}",
      "apiKey": "bd34ddawe34v51rxw6tbn"
    }
  }
}

Example Request (File Authorization)

{
  "data": {
    "attributes": {
      "allowStreamIngest": true,
      "autoStreamPublish": true,
      "allowStreamOverwrite": false,
      "authorizationEnabled": true,
      "authType": "file",
      "fileURL": "/home/storm/auth/publish_keys.xml"
    }
  }
}

Example Request (Local Authorization)

{
  "data": {
    "attributes": {
      "allowStreamIngest": true,
      "autoStreamPublish": true,
      "allowStreamOverwrite": true,
      "authorizationEnabled": true,
      "authType": "local",
      "authUsers": [
        {
          "username": "admin",
          "password": "qwerty123"
        },
      ]
    }
  }
}

Response

Status Codes

Code Description
200 Success - Settings updated
400 Bad Request - Invalid parameters
401 Unauthorized - Invalid or missing token
404 Not Found - Application does not exist
429 Too Many Requests - Rate limit exceeded
500 Internal Server Error

Successful Response (200)

{
  "data": {
    "attributes": {
      "allowStreamIngest": {
        "editable": true,
        "value": true
      },
      "autoStreamPublish": {
        "editable": true,
        "value": true
      },
      "allowStreamOverwrite": {
        "editable": true,
        "value": false
      },
      "authorizationEnabled": {
        "editable": true,
        "value": false
      },
      "authType": {
        "editable": true,
        "value": "none"
      }
    }
  },
  "meta": {
    "executionTime": 7,
    "generatedAt": 1766071325856
  },
  "message": "Ingest Settings have been updated"
}

Response Body

Ingest Settings

Parameter Type Description
data.attributes.allowStreamIngest.value boolean Allow stream ingestion
data.attributes.allowStreamIngest.editable boolean Indicates if the field can be modified
data.attributes.allowStreamIngest.lockedBy string Locked by environment variable (if present)
data.attributes.autoStreamPublish.value boolean Auto-publish incoming streams
data.attributes.autoStreamPublish.editable boolean Indicates if the field can be modified
data.attributes.autoStreamPublish.lockedBy string Locked by environment variable (if present)
data.attributes.allowStreamOverwrite.value boolean Allow overwriting existing streams
data.attributes.allowStreamOverwrite.editable boolean Indicates if the field can be modified
data.attributes.allowStreamOverwrite.lockedBy string Locked by environment variable (if present)
data.attributes.authorizationEnabled.value boolean Ingest authorization enabled
data.attributes.authorizationEnabled.editable boolean Indicates if the field can be modified
data.attributes.authorizationEnabled.lockedBy string Locked by environment variable (if present)
data.attributes.authType.value string Authorization type
data.attributes.authType.editable boolean Indicates if the field can be modified
data.attributes.authType.lockedBy string Locked by environment variable (if present)
message string Response status message

Metadata

Parameter Type Description
meta.executionTime integer Request processing time in milliseconds
meta.generatedAt integer Response generation timestamp (Unix timestamp in ms)

Authorization Types

Type: "none" (Default)

No authorization required for stream ingest.

Type: "managed" (Stream-Level Auth)

Authentication data is attached to dynamically created streams. Streams can be created via the API or UI. Clients must include authentication credentials when publishing.

Type: "request" (HTTP Request)

Validates stream ingest via external HTTP API.

Parameter Type Description
data.attributes.requestURL string Authorization API URL (use ${streamKey} placeholder)
data.attributes.apiKey string API key for authorization requests

Type: "file" (XML File)

Validates stream ingest against an XML file with authorized keys.

Parameter Type Description
data.attributes.fileURL string Path to authorization XML file

Type: "local" (Local Users/Tokens)

Validates stream ingest against a local list of users and tokens.

Parameter Type Description
data.attributes.authUsers array List of authorized users/tokens
data.attributes.authUsers[].username string Username (for username/password auth)
data.attributes.authUsers[].password string Password (for username/password auth)
data.attributes.authUsers[].token string Token (for token-based auth)
data.attributes.authUsers[].expire integer Token expiration (Unix timestamp in ms, optional)

Error Responses

Application Not Found (404)

{
  "message": "Application not found"
}

Error Response Body

Parameter Type Description
message string Human-readable error message