This is the API reference for Aircore cloud recording.
With cloud recording, you can record audio for a channel🔗 and save it to cloud storage. This feature works with all Aircore SDKs that support audio.
Aircore uploads recordings as .m4a
files with AAC encoding.
See the Quickstart🔗 for a sample workflow.
Use this endpoint to start a recording.
To find the recorded file, use a unique value for filename
or callback_url
in the request body.
required | object |
required | object (Location) Location for selecting the recording server. To minimize latency, use the most accurate location you can, such as:
|
user_id required | string ID for the user who initiated recording. |
channel_id required | string ID for the channel🔗 to record. |
callback_url | string Unique callback URL for updates on the recording. See callbacks for more info. |
{- "storage": {
- "filename": "record",
- "s3": {
- "access_key_id": "AKIAIOSFODNN7EXAMPLE",
- "secret_access_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
- "bucket": "S3_BUCKET_NAME",
- "region": "us-east-1",
- "server_side_encryption": "AES256"
}
}, - "location": {
- "latitude": 40.785091,
- "longitude": -73.968285
}, - "user_id": "4a1c5943-994e-4c2b-a717-7f6ff42c5396",
- "channel_id": "9a01c703-48db-4101-ad8a-c907f04f0c3a",
}
{- "state": "started",
- "startTime": 1678995784690,
- "elapsedTime": 0
}
{- "event": "recording-started",
- "timestamp": 1678995527368,
- "recording": {
- "state": "started",
- "startTime": 1678995784690,
- "elapsedTime": 0
}
}
Use this endpoint to stop a recording. Recording also stops automatically if all users leave the channel.
This DELETE
request stops the recording resource. It does not delete the recording.
The response when you start a recording provides the full URL for this request, including the UNIQUE_IDENTIFIER
.