Difference between revisions of "API Upload Recording"
IVSWikiBlue (talk | contribs) (→Failure Responses) |
IVSWikiBlue (talk | contribs) (→Failure Responses) |
||
Line 287: | Line 287: | ||
===Failure Responses=== | ===Failure Responses=== | ||
Sample responses are shown with line breaks to make it more readable. Actual responses will not include line breaks. | Sample responses are shown with line breaks to make it more readable. Actual responses will not include line breaks. | ||
− | ====Invalid | + | ====Invalid Content-Range header value==== |
<nowiki> | <nowiki> | ||
{ | { | ||
Line 297: | Line 297: | ||
</nowiki> | </nowiki> | ||
+ | ====The name or identifier for the file chunk is missing. This field must have a non-empty value.==== | ||
+ | <nowiki> | ||
+ | { | ||
+ | "data":{ | ||
+ | "message": "The chunk file was not transferred" | ||
+ | }, | ||
+ | "code": 400 | ||
+ | } | ||
+ | </nowiki> | ||
+ | |||
+ | ====The file to upload is missing==== | ||
<nowiki> | <nowiki> | ||
{ | { |
Revision as of 11:37, 9 May 2025
This API is a two-part request that creates a video record and then uploads a video file to the specified record.
Contents
1) Create Upload Record
Request URL
http://valt.example.com/api/v3/records/create-upload
Resource Information
Method | POST |
Response Type | JSON |
Authentication Required | Yes (access token as a query parameter) |
Authentication is performed with an access token obtained from the API Authentication request.
Request Parameters
Path Parameters
No path parameters are required for this request.
Query Parameters
Name | Type | Description |
---|---|---|
access_token | string | Token used for authentication. Must be appended to the request URL. |
Headers
Name | Value |
---|---|
Content-Type | application/json |
Body
The JSON body must be properly formatted. All fields and values should be enclosed in double quotes and separated by a colon.
Data | Required | ||
---|---|---|---|
name | Recording Name | Yes | |
template | Array of additional information template fields. | No | |
share | No | ||
groups | Array of group IDs the video is shared with in addition to default video permissions. | ||
users | Array of user IDs the video is shared with in addition to default video permissions. |
Response
HTTP Codes
Code | Reason |
---|---|
200 | Request Successful |
401 | Unauthorized |
500 | Invalid request payload |
JSON Body
data | |
---|---|
id | Record ID |
videos | Video ID |
Examples
Request
https://ivssvdev1.ad.ipivs.com/api/v3/records/create-upload?access_token=2407c9d2cfde75c49e5d356ee9f83422
Example 1
{ "name": "Upload Recording" }
Example 2
{ "name": "Upload Recording", "template": { "1": "Field Value 1", "2": "Field Value 2", }, "share": { "users": [1, 2, 3], "groups": [4, 5, 6] } }
Successful Response
Sample response is shown with line breaks to make it more readable. Actual responses will not include line breaks.
{ "id": "1bc87bea-9412-43f1-9e95-dbad0e60c99a", "videos":[ "198016d2-edf4-4eaa-aa84-1545b07270e2" ] }
Failure Responses
Sample responses are shown with line breaks to make it more readable. Actual responses will not include line breaks.
Invalid request payload
{ "error":{ "code":500, "message":"Internal Server Error" }
Unauthorized
{ "error":{ "code":401, "message":"No API token provided" } }
{ "error":{ "code": 401, "message": "Bad credentials." } }
2) Upload Video to Record
Request URL
http://valt.example.com/api/v3/records/{recordID}/videos/{videoID}
Resource Information
Method | POST |
Response Type | multipart/form-data |
Authentication Required | Yes (access token as a query parameter) |
Authentication is performed with an access token obtained from the API Authentication request.
Request Parameters
Path Parameters
Name | Type | Description |
---|---|---|
recordID | string | ID of the record to upload to |
videoID | string | ID of the video to upload to |
Query Parameters
Name | Type | Description |
---|---|---|
access_token | string | Token used for authentication. Must be appended to the request URL. |
Headers
Name | Value |
---|---|
content-type | multipart/form-data |
content-range | bytes 0-316620/316620 |
Body
The Body must be multipart/form-data and include the video file
Data | Required | |
---|---|---|
file | Video File to upload | Yes |
Response
Code | Reason |
---|---|
201 | Request Successful |
400 | Invalid request payload |
401 | Unauthorized |
500 | Invalid request payload |
data | |
---|---|
url | Download URL |
Examples
Request
https://ivssvdev1.ad.ipivs.com/api/v3/records/1bc87bea-9412-43f1-9e95-dbad0e60c99a/videos/198016d2-edf4-4eaa-aa84-1545b07270e2?access_token=2407c9d2cfde75c49e5d356ee9f83422
Headers
"Content-Type": "multipart/form-data" "Content-Range": "bytes 0-316620/316620"
Body
file [File] = {Video File}
Successful Response
Sample response is shown with line breaks to make it more readable. Actual responses will not include line breaks.
{ "id": "1bc87bea-9412-43f1-9e95-dbad0e60c99a", "videos":[ "198016d2-edf4-4eaa-aa84-1545b07270e2" ] }
Failure Responses
Sample responses are shown with line breaks to make it more readable. Actual responses will not include line breaks.
Invalid Content-Range header value
{ "data":{ "message": "Invalid range data" }, "code": 400 }
The name or identifier for the file chunk is missing. This field must have a non-empty value.
{ "data":{ "message": "The chunk file was not transferred" }, "code": 400 }
The file to upload is missing
{ "error":{ "code":500, "message":"Internal Server Error" }
Unauthorized
{ "error":{ "code":401, "message":"No API token provided" } }
{ "error":{ "code": 401, "message": "Bad credentials." } }