Creates an ingest point.
Request
Request syntax:
POST /managed-slicer/slicers/ingest-points
Request body parameters:
Pass the following request body parameters:
Name | Data Type | Description |
---|---|---|
desc | String | Sets the ingest point's description. |
endpoint_name Required | String | Sets the ingest point's name. |
server_region_id Required | String | Specify the system-defined ID for the region where this ingest point will be available. Only CSL slicers within this region will be able to use this ingest point. Use the Get CSL Slicer Regions endpoint to retrieve a list of regions and their system-defined IDs. |
stream_type_name Required | String | Identifies the streaming protocol that this ingest point will accept. Only feeds that use this protocol will be ingested. Use the Get CSL Slicer Protocols endpoint to retrieve a list of protocols. |
Response
The response for a successful request contains the following properties:
Name | Data Type | Description |
---|---|---|
@id | String | Indicates the relative path to a resource-specific endpoint. |
@type | String | Returns IngestPoint. |
created | String | Indicates the timestamp at which this ingest point was created. |
desc | String | Indicates the ingest point's description. |
endpoint_name | String | Indicates the ingest point's name. |
id | String | Indicates the ingest point's system-defined ID. |
ingest_point | Dictionary | Contains the ingest point's hostname and ports. |
lastmod | String | Indicates the timestamp at which this ingest point was last modified. |
server_region_id | String | Indicates the system-defined ID for the region assigned to the ingest point. |
stream_type_id Deprecated | String | This property has been replaced by stream_type_name. |
stream_type_name | String | Indicates the ingest point's protocol. |
ingest_point Dictionary
The ingest_point dictionary describes an ingest point through the following properties:
Name | Data Type | Description |
---|---|---|
reserved_domain_name | String | Indicates the ingest point's domain. |
reserved_ports | Dictionary | Contains all of the ports associated with the ingest point. |
secure_rtmp_url | String | RTMP Only Indicates the URL to which your encoder should push a RTMP feed. This URL uses the RTMP scheme. |
server_region | String | Indicates the ingest point's region. |
status | String | Returns NOT_IN_USE. |
stream_rtmp_url | String | RTMPS Only Indicates the URL to which your encoder should push a RTMP feed. This URL, which uses the rtmps scheme, is secured using a TLS connection. |
reserved_ports Dictionary
The reserved_ports dictionary describes an ingest point's ports through the following properties:
Name | Data Type | Description |
---|---|---|
port | Number | Indicates the ingest point's port. |
port_fec2 | Number | Indicates the ingest point's port for the row forward error correction (FEC) stream. |
port_fec4 | Number | Indicates the ingest point's port for the column forward error correction (FEC) stream. |
Sample Request/Response
Call the create_ingest_point module (Python 3) to create an ingest point. This module imports names from the api_auth module.
import json, requests, datetime, time
from api_auth import APICredentials, APIParams
class IngestPoint:
def __init__(self):
self.host = "https://services.uplynk.com"
def run(self):
"""
Create an ingest point.
"""
self._create_ingest_point()
def _create_ingest_point(self):
url = "{}{}".format(self.host, "/api/v4/managed-slicer/slicers/ingest-points")
payload = {
'endpoint_name': 'My New Ingest Point', # Replace with the ingest point's name.
'server_region_id': 'e1d9f8f3c9a24be68177654ded5b2912', # Replace with the desired region ID.
'stream_type_name': 'RTMP' # Replace with the desired protocol name.
}
headers = {'Content-Type': 'application/json'}
response = requests.post(
url, params=APIParams(APICredentials()).get_params({}), data=json.dumps(payload), headers=headers
)
print(response.json())
IngestPoint().run()
Response:
{
'@id': '/api/v4/managed-slicer/slicers/ingest-points/4e7cf1330dfb405bb1fbcff715771d1b',
'@type': 'IngestPoint',
'created': '2022-10-03T22:28:00.539Z',
'lastmod': '2022-10-03T22:28:00.539Z',
'id': '4e7cf1330dfb405bb1fbcff715771d1b',
'desc': '',
'endpoint_name': 'My New Ingest Point',
'ingest_point': {
'reserved_domain_name': 'ingest-prod-0-us-west-2.mss.aws.oath.cloud',
'reserved_ports': {
'port': 47435,
'port_fec2': 47437,
'port_fec4': 47439
},
'server_region': 'us-west-2',
'status': 'NOT_IN_USE',
'slicer_stream_key': '060d6c2b-0a46-4fce-bf5d-e9ce28ea1b8d',
'secure_rtmp_url': 'rtmps://ingest-prod-0-us-west-2.mss.aws.oath.cloud:4935/slicer47435',
'stream_rtmp_url': 'rtmp://ingest-prod-0-us-west-2.mss.aws.oath.cloud/slicer47435'
},
'stream_type_name': 'RTMP',
'server_region_id': 'ac123581b66c45ecb2660d2da16de109',
'stream_type_id': ''
}