Big picture
Use case diagrams
Create new user (phase 2 only)
Non-technical flow diagram
User Stories - business integration
New User buys new STB
Action | API call required | Offline business process required | |
---|---|---|---|
1 | User go to Customer store and buy a new STB | Capture user details and the STB serial number | |
2 | Customer system then provision new user | Create user account | |
3 | Customer system then link the STB to that user | Link user account to STB | |
4 | User go home and turn on the new STB | ||
5 | STB uses the key included in the firmware to sign a JWT that includes the STB serial number as a "sub" claim | ||
6 | Amino API uses the JWT and the linkage from step 3 to determine which user to log in |
Existing User buys new STB
Action | API call required | Offline business process required | |
---|---|---|---|
1 | User go to Customer store and buy a new STB | Capture user details and the STB serial number | |
2 | Customer then link the STB to the existing user account | Link user account to STB | |
3 | Optionally, Customer unlinks the old STB | Remove STB Ownership from an User | |
4 | User go home and turn on the new STB | ||
5 | STB uses the key included in the firmware to sign a JWT that includes the STB serial number as a "sub" claim | ||
6 | Amino API uses the JWT and the linkage from step 2 to determine which user to log in |
Existing user sell his/her STB
Action | API call required | ||
---|---|---|---|
1 | User A sells his/her STB to user B | ||
2 | User A call Customer to unlink the STB from his/her account | Remove STB Ownership from an User | Capture user details and the STB serial number |
3 | User B call Customer to link the STB to his/her account | Link user account to STB | |
4 | Customer captures information and: | Capture user details and the STB serial number | |
4a | Unlink the STB from user account A | Remove STB Ownership from an User | |
4b | Link the STB to user account B | Link user account to STB | |
5 | User B turns STB on after being told the linking is complete | ||
6 | STB uses the key included in the firmware to sign a JWT that includes the STB serial number as a "sub" claim | ||
7 | Amino API uses the JWT and the linkage from step 3 to determine which user to log in |
Manage user entitlements
Action | API call required | |
---|---|---|
1 | Entitle a user to a package | Entitle user to "A" package |
2 | Remove entitlement from user to package | Remove user entitlement to "A" package |
Details of calls
Link user account to STB
Flow diagram (non-technical)
Code Block | ||||
---|---|---|---|---|
| ||||
title Create newLink user account noteto leftSTB of Aminonote factoryright of Customer At manufacture time end noteCustomer Aminocaptures factory->Move API: List of STB serial numbersuser account and keysthe noteSTB right of NetAdmin: At sale timeserial number end note NetAdminCustomer->Move API: User identity and their STB serial number |
Which endpoint NetAdmin should use
NetAdmin will POST to https://boox.fiPOST https://domain.tld/api/management/stb/link_user
Move API->Customer: 200 OK
|
Technical details
Customer will POST to https://domain.tld/api/management/stb/link_user
Request
Method | URL | Authorization |
---|---|---|
POST | https://domain.tld/api/management/stb/link_user |
IP |

Parameters
Please note that M is for Mandatory and O is for Optional.
Parameters | M/O | Description | Values |
---|---|---|---|
service | O | Service to which the user belongs. | String of service username. Shared separately. |
serial_no |
M |


Serial Number of STB. If device does not exists with provided serial no then it will be added. | Alpha numeric string. |
email |
M |

address of user who is provisioned for using the STB | Valid email address. e.g. john.doe@example.com |
public_keys |
M | This may be configured to be optional in your deployment, please check with your account manager | |
chipset_id |

O | STB device chipset number/ID. | chipset_id is a random list of characters (max 32 characters). |
mac |

How the user will sign in
See /wiki/spaces/BPLAT/pages/38550375 to see the process of letting the user sign in.
Entitle user to "A" OTT package
TBC: What Move API must be called by KN? Do we need to provision a new endpoint like the one at Channel License
Code Block | ||||
---|---|---|---|---|
| ||||
title Entitle user to "A" OTT package
KN BSS->Move API: GET /api/user/<email>/product/<product_id>/buy/option/<option_id>
Move API->Irdeto: SOAP entitlement call
Irdeto->Move API: 200 OK
Move API->KN BSS: 200 OK
|
Entitle user to "Start" DVB package
O | Ethernet interface MAC address. | mac is a random list of characters (max 18 characters). |
Response
HTTP Code | Response |
---|---|
200 | {
|
400 |
|
401 | none |
Error Codes
Error Code | Description |
---|---|
1414 | Email does not exist |
1426 | Parameter is required |
1427 | Invalid length of chipset_id |
1428 | Invalid length of mac |
1433 | STB exists and linked |
1434 | Record already exists for value |
1435 | STB is already assigned |
1436 | Invalid email address format |
How the user will sign in
Remove STB Ownership from an User
Technical details
Customer will POST to https://domain.tld/api/management/stb/unlink_user
Request
Method | URL | Authorization |
---|---|---|
POST | https://domain.tld/api/management/stb/unlink_user | IP |
Parameters
Please note that M is for Mandatory and O is for Optional.
Parameters | M/O | Description | Values |
---|---|---|---|
service_token | O | Token generated for a service. This param will be skipped if Service-Token HTTP Header exists. | |
serial_no | M | Serial Number of STB. | Alpha numeric string. |
email | M | Email address of user who is provisioned for using the STB | Valid email address. e.g. john.doe@example.com |
Error Codes
Error Code | Description |
---|---|
1414 | Email does not exist |
1426 | Parameter is required |
1432 | STB serial_number does not exist |
1418 | Invalid STB link, Service (Using service_token) |