You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
IBM Cloud Video allows third-party clients to access IBM Cloud Video users' resources (data) via a HTTP-based (RESTful) API. It also provides a Broadcaster Library that is capable of broadcasting to a user's channel. Both the REST API and the Broadcaster Library uses the OAuth 2.0 protocol for authentication and authorization.
2
+
IBM Video Streaming allows third-party clients to access IBM Video Streaming users' resources (data) via a HTTP-based (RESTful) API. It also provides a Broadcaster Library that is capable of broadcasting to a user's channel. Both the REST API and the Broadcaster Library uses the OAuth 2.0 protocol for authentication and authorization.
3
3
4
4
## Basic workflow
5
5
The basic workflow of a third-party Client is the following:
6
6
7
7
1.**Authorize the user:** Obtain and validate the user's credentials (username and password). The client must never store these credentials, only pass it to the server for authorization.
8
-
2.**Obtain an access token:** If the user's credentials were entered correctly, the third-party client can obtain an access token. Once this token is received, it can be used to access the user's resources until the token expires or the user revokes it on the IBM Cloud Video website.
9
-
3.**Access the user's resources:** The client can use Ustream's REST API or the IBM Cloud Video Broadcasting Library to access the user's resources (data) or to broadcast to the user's channel. The client authorizes itself using the access token, with methods described by the OAuth 2.0 Protocol Draft.
8
+
2.**Obtain an access token:** If the user's credentials were entered correctly, the third-party client can obtain an access token. Once this token is received, it can be used to access the user's resources until the token expires or the user revokes it on the IBM Video Streaming website.
9
+
3.**Access the user's resources:** The client can use Ustream's REST API or the IBM Video Streaming Broadcasting Library to access the user's resources (data) or to broadcast to the user's channel. The client authorizes itself using the access token, with methods described by the OAuth 2.0 Protocol Draft.
10
10
11
11
### Authorization Flows
12
12
The OAuth 2.0 protocol provides several flows (workflows) for the first two phases. It depends on the type and architecture of the client which flow is the most suitable. The following flows are supported:
@@ -15,21 +15,20 @@ The OAuth 2.0 protocol provides several flows (workflows) for the first two phas
15
15
***Authorization code flow:** Suitable for third-party websites which contain a client and a server component. The user enters its credentials to a secure login webpage. After logging in, the browser is redirected to a special URL (defined by the client), passing an authorization code in the URL. The third-party server obtains the access token with another HTTP request in the background, using the authorization code. This method is more secure than the implicit flow if the third-party client has a client+server model. See the OAuth2 Draft for details.
16
16
17
17
### Endpoints
18
-
The webpages and HTTP services invoked in during this authorization process are called Endpoints. IBM Cloud Video has the following endpoints:
18
+
The webpages and HTTP services invoked in during this authorization process are called Endpoints. IBM Video Streaming has the following endpoints:
19
19
20
20
***Authorization endpoint:** this is the webpage where the user enters his/her credentials.
21
21
***Token endpoint:** this is the HTTP service where the access token can be obtained in an authorization code flow (when using the implicit flow, the access token can be obtained directly from the authorization endpoint).
22
22
23
23
### Access tokens
24
-
There are two types of access tokens: **Bearer tokens** and **MAC tokens.** They are equivalent in the sense that they can access the same resources on the IBM Cloud Video REST API. The difference is that while bearer tokens can be only used on encrypted channels (HTTPS), MAC tokens are suitable on non-encrypted channels as well.
24
+
There are two types of access tokens: **Bearer tokens** and **MAC tokens.** They are equivalent in the sense that they can access the same resources on the IBM Video Streaming REST API. The difference is that while bearer tokens can be only used on encrypted channels (HTTPS), MAC tokens are suitable on non-encrypted channels as well.
25
25
26
-
If the client uses the IBM Cloud Video Broadcasting Library, it must use MAC tokens: the broadcasting is done on the RTMP protocol, which is unencrypted. If the client only uses the REST API, the bearer tokens are preferred because their usage is very simple and lightweight.
26
+
If the client uses the IBM Video Streaming Broadcasting Library, it must use MAC tokens: the broadcasting is done on the RTMP protocol, which is unencrypted. If the client only uses the REST API, the bearer tokens are preferred because their usage is very simple and lightweight.
27
27
28
28
Bearer tokens and MAC tokens can be obtained in the same way: the authorization endpoint has a token type parameter, so the client can specify what kind of token it wants to create.
29
29
30
30
### Token scopes, expiration
31
-
By default, access tokens have a limited lifetime (they expire in a day) and can access only a limited amount of resources. In the authorization process the client can request extra permissions (scopes) from the user to overcome these limitations. These requests are shown to the user on the authorization endpoint. IBM Cloud Video currently supports the following scopes:
31
+
By default, access tokens have a limited lifetime (they expire in a day) and can access only a limited amount of resources. In the authorization process the client can request extra permissions (scopes) from the user to overcome these limitations. These requests are shown to the user on the authorization endpoint. IBM Video Streaming currently supports the following scopes:
32
32
33
33
***Offline scope:** If this scope is enabled, the access token never expires.
34
-
***Broadcaster scope:** If this Scope is enabled, the access token can be used for broadcasting with the IBM Cloud Video Broadcasting Library. This scope are enabled only for MAC tokens.
35
-
34
+
***Broadcaster scope:** If this Scope is enabled, the access token can be used for broadcasting with the IBM Video Streaming Broadcasting Library. This scope are enabled only for MAC tokens.
Copy file name to clipboardExpand all lines: _posts/2015-09-01-getting-started.html
+21-21
Original file line number
Diff line number
Diff line change
@@ -6,22 +6,22 @@
6
6
categoryItemType: documentation
7
7
categoryItemIsShown: 1
8
8
categoryItemWidth: 12
9
-
categoryItemDescription: IBM Cloud Video allows third-party clients to access IBM Cloud Video users' resources (data) via a HTTP-based (RESTful) API. It also provides a Broadcaster Library that is capable of broadcasting to a user's channel. Both the REST API and the Broadcaster Library uses the OAuth 2.0 protocol for authentication and authorization.
9
+
categoryItemDescription: IBM Video Streaming allows third-party clients to access IBM Video Streaming users' resources (data) via a HTTP-based (RESTful) API. It also provides a Broadcaster Library that is capable of broadcasting to a user's channel. Both the REST API and the Broadcaster Library uses the OAuth 2.0 protocol for authentication and authorization.
10
10
categoryItemLabel: Read the documentation
11
11
---
12
12
<articledata-sidenav="sidenav">
13
13
<section>
14
14
<h2>Overview</h2>
15
-
<p>IBM Cloud Video allows third-party clients to access IBM Cloud Video users' resources (data) via a HTTP-based (RESTful) API. It also provides a Broadcaster Library that is capable of broadcasting to a user's channel. Both the REST API and the Broadcaster Library uses the OAuth 2.0 protocol for authentication and authorization.</p>
15
+
<p>IBM Video Streaming allows third-party clients to access IBM Video Streaming users' resources (data) via a HTTP-based (RESTful) API. It also provides a Broadcaster Library that is capable of broadcasting to a user's channel. Both the REST API and the Broadcaster Library uses the OAuth 2.0 protocol for authentication and authorization.</p>
16
16
17
17
18
18
19
19
<h3>Basic workflow</h3>
20
20
<p>The basic workflow of a third-party Client is the following:</p>
21
21
<ol>
22
22
<li><strong>Authorize the user:</strong> Obtain and validate the user's credentials (username and password). The client must never store these credentials, only pass it to the server for authorization.</li>
23
-
<li><strong>Obtain an access token:</strong> If the user's credentials were entered correctly, the third-party client can obtain an access token. Once this token is received, it can be used to access the user's resources until the token expires or the user revokes it on the IBM Cloud Video website.</li>
24
-
<li><strong>Access the user's resources:</strong> The client can use Ustream's REST API or the IBM Cloud Video Broadcasting Library to access the user's resources (data) or to broadcast to the user's channel. The client authorizes itself using the access token, with methods described by the OAuth 2.0 Protocol Draft.</li>
23
+
<li><strong>Obtain an access token:</strong> If the user's credentials were entered correctly, the third-party client can obtain an access token. Once this token is received, it can be used to access the user's resources until the token expires or the user revokes it on the IBM Video Streaming website.</li>
24
+
<li><strong>Access the user's resources:</strong> The client can use Ustream's REST API or the IBM Video Streaming Broadcasting Library to access the user's resources (data) or to broadcast to the user's channel. The client authorizes itself using the access token, with methods described by the OAuth 2.0 Protocol Draft.</li>
25
25
</ol>
26
26
27
27
@@ -37,7 +37,7 @@ <h3>Authorization Flows</h3>
37
37
38
38
39
39
<h3>Endpoints</h3>
40
-
<p>The webpages and HTTP services invoked in during this authorization process are called endpoints. IBM Cloud Video has the following endpoints:</p>
40
+
<p>The webpages and HTTP services invoked in during this authorization process are called endpoints. IBM Video Streaming has the following endpoints:</p>
41
41
<ul>
42
42
<li><strong>Authorization endpoint:</strong> this is the webpage where the user enters his/her credentials.</li>
43
43
<li><strong>Token endpoint:</strong> this is the HTTP service where the access token can be obtained in an authorization code flow (when using the implicit flow, the access token can be obtained directly from the authorization endpoint).</li>
@@ -46,16 +46,16 @@ <h3>Endpoints</h3>
46
46
47
47
48
48
<h3>Access tokens</h3>
49
-
<p>There are two types of access tokens: <strong>Bearer tokens</strong> and <strong>MAC tokens.</strong> They are equivalent in the sense that they can access the same resources on the IBM Cloud Video REST API. The difference is that while bearer tokens can be only used on encrypted channels (HTTPS), MAC tokens are suitable on non-encrypted channels as well.</p>
50
-
<p>If the client uses the IBM Cloud Video Broadcasting Library, it must use MAC tokens: the broadcasting is done on the RTMP protocol, which is unencrypted. If the client only uses the REST API, the bearer tokens are preferred because their usage is very simple and lightweight.</p>
49
+
<p>There are two types of access tokens: <strong>Bearer tokens</strong> and <strong>MAC tokens.</strong> They are equivalent in the sense that they can access the same resources on the IBM Video Streaming REST API. The difference is that while bearer tokens can be only used on encrypted channels (HTTPS), MAC tokens are suitable on non-encrypted channels as well.</p>
50
+
<p>If the client uses the IBM Video Streaming Broadcasting Library, it must use MAC tokens: the broadcasting is done on the RTMP protocol, which is unencrypted. If the client only uses the REST API, the bearer tokens are preferred because their usage is very simple and lightweight.</p>
51
51
<p>Bearer tokens and MAC tokens can be obtained in the same way: the authorization endpoint has a token type parameter, so the client can specify what kind of token it wants to create.</p>
52
52
53
53
54
54
55
55
<h3>Token scopes, expiration</h3>
56
-
<p>By default, access tokens have a limited lifetime (they expire in a day) and can access only a limited amount of resources. In the authorization process the client can request extra permissions (scopes) from the user to overcome these limitations. These requests are shown to the user on the authorization endpoint. IBM Cloud Video currently supports the following scope:</p>
56
+
<p>By default, access tokens have a limited lifetime (they expire in a day) and can access only a limited amount of resources. In the authorization process the client can request extra permissions (scopes) from the user to overcome these limitations. These requests are shown to the user on the authorization endpoint. IBM Video Streaming currently supports the following scope:</p>
57
57
<ul>
58
-
<li><strong>Broadcaster scope:</strong> If this scope is enabled, the access token can be used for broadcasting with the IBM Cloud Video Broadcasting Library. This scope can only be used with MAC tokens.</li>
58
+
<li><strong>Broadcaster scope:</strong> If this scope is enabled, the access token can be used for broadcasting with the IBM Video Streaming Broadcasting Library. This scope can only be used with MAC tokens.</li>
59
59
</ul>
60
60
</section>
61
61
@@ -120,7 +120,7 @@ <h6>Supported OAuth 2.0 standard parameters</h6>
120
120
</tr>
121
121
</table>
122
122
123
-
<h6>IBM Cloud Video specific extra parameters</h6>
123
+
<h6>IBM Video Streaming specific extra parameters</h6>
124
124
<tableclass="table responsive">
125
125
<tr>
126
126
<th>parameter</th>
@@ -138,7 +138,7 @@ <h6>IBM Cloud Video specific extra parameters</h6>
138
138
<td><strong>device_name</strong></td>
139
139
<td>string</td>
140
140
<td>OPTIONAL</td>
141
-
<td>Full product name of the Client device or application. It is used for easy identification of the OAuth2 Token. The User will be able to review which Clients are connected to his/her account, and revoke these grants on the IBM Cloud Video website.</td>
141
+
<td>Full product name of the Client device or application. It is used for easy identification of the OAuth2 Token. The User will be able to review which Clients are connected to his/her account, and revoke these grants on the IBM Video Streaming website.</td>
142
142
</tr>
143
143
<tr>
144
144
<td><strong>display</strong></td>
@@ -204,19 +204,19 @@ <h6>Result</h6>
204
204
</tr>
205
205
<tr>
206
206
<td><strong>access_token</strong></td>
207
-
<td>Access Token (40 character length, hexa encoded sha1 hash). Referred as <em>macId</em> in the IBM Cloud Video Broadcaster Library.</td>
207
+
<td>Access Token (40 character length, hexa encoded sha1 hash). Referred as <em>macId</em> in the IBM Video Streaming Broadcaster Library.</td>
208
208
</tr>
209
209
<tr>
210
210
<td><strong>expires_in</strong></td>
211
211
<td>The current lifetime of the token in seconds.</td>
212
212
</tr>
213
213
<tr>
214
214
<td><strong>mac_key</strong></td>
215
-
<td>MAC secret (40 character length, hexa encoded sha1 hash). Referred as <em>macSecret</em> in the IBM Cloud Video Broadcaster Library.</td>
215
+
<td>MAC secret (40 character length, hexa encoded sha1 hash). Referred as <em>macSecret</em> in the IBM Video Streaming Broadcaster Library.</td>
216
216
</tr>
217
217
<tr>
218
218
<td><strong>created_at</strong></td>
219
-
<td>UTC timestamp of the creation datetime. Referred as <em>macIssueTime</em> in the IBM Cloud Video Broadcaster Library.</td>
219
+
<td>UTC timestamp of the creation datetime. Referred as <em>macIssueTime</em> in the IBM Video Streaming Broadcaster Library.</td>
<td>MAC secret (40 character length, hexa encoded sha1 hash). Referred as macSecret in the IBM Cloud Video Broadcaster Library.</td>
410
+
<td>MAC secret (40 character length, hexa encoded sha1 hash). Referred as macSecret in the IBM Video Streaming Broadcaster Library.</td>
411
411
</tr>
412
412
<tr>
413
413
<td><strong>created_at</strong></td>
414
-
<td>UTC timestamp of the creation datetime. Referred as macIssueTime in the IBM Cloud Video Broadcaster Library.</td>
414
+
<td>UTC timestamp of the creation datetime. Referred as macIssueTime in the IBM Video Streaming Broadcaster Library.</td>
415
415
</tr>
416
416
<tr>
417
417
<td><strong>mac_algorithm</strong></td>
@@ -484,11 +484,11 @@ <h6>Response</h6>
484
484
</tr>
485
485
<tr>
486
486
<td><strong>mac_key</strong></td>
487
-
<td>MAC tokens only: MAC secret (40 character length, hexa encoded sha1 hash). Referred as macSecret in the IBM Cloud Video Broadcaster Library.</td>
487
+
<td>MAC tokens only: MAC secret (40 character length, hexa encoded sha1 hash). Referred as macSecret in the IBM Video Streaming Broadcaster Library.</td>
488
488
</tr>
489
489
<tr>
490
490
<td><strong>created_at</strong></td>
491
-
<td>UTC timestamp of the creation datetime. Referred as macIssueTime in the IBM Cloud Video Broadcaster Library.</td>
491
+
<td>UTC timestamp of the creation datetime. Referred as macIssueTime in the IBM Video Streaming Broadcaster Library.</td>
492
492
</tr>
493
493
<tr>
494
494
<td><strong>mac_algorithm</strong></td>
@@ -655,4 +655,4 @@ <h3>Creating a channel (POST)</h3>
655
655
{"channel":{"id":"13091307","title":"Whatever Test 1234","url":"whatever-test-1234","tiny_url":"http://ustre.am/SVE7"}}
0 commit comments