-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.json
129 lines (129 loc) · 6.25 KB
/
main.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
{
"name": "ScaleEngine",
"baseUrl": "https://api.scaleengine.net/stable/",
"description": "The ScaleEngine API.",
"operations": {
"BaseRequest": {
"summary": "The base operation configuration for defining default parameters required.",
"httpMethod": "POST",
"additionalParameters": false,
"parameters": {
"apiKey": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "The secret API key used to authenticate with your ScaleEngine account.",
"sentAs": "api_key"
},
"cdn": {
"location": "scaleengineParameter",
"required": true,
"type": "integer",
"description": "The CDN id of your ScaleEngine account."
},
"command": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "The API command to execute against ScaleEngine (should be automatically set by the command)."
},
"timestamp": {
"location": "scaleengineParameter",
"type": "integer",
"format": "timestamp",
"description": "The UNIX timestamp of your request, used to prevent authenticated API requests from being replayed. Defaults to the current time."
}
}
},
"GetTicketStatus": {
"extends": "BaseRequest",
"summary": "This API finds the status of a SEVU Ticket. This system allows you to lookup the status of any SEVU Ticket created by your account using the SEVU Ticket key that was returned by calling sevu.request. The ticket will show the criteria it was created with as well as information on last used date, # of uses remaining, and active status.",
"documentationUrl": "https://cp.scaleengine.net/docs/api/sevu/status",
"responseClass": "FloSports\\ScaleEngine\\Response\\GetTicketStatusResponse",
"responseNotes": "The ticket, if found, is included in the response.",
"parameters": {
"command": {
"location": "scaleengineParameter",
"default": "sevu.status",
"static": true
},
"key": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "The SEVU ticket. This is the string that combined with the password provided when the ticket was created allows a user access to a protected stream."
}
}
},
"RequestTicket": {
"extends": "BaseRequest",
"summary": "This API creates a SEVU ticket. This ticket allows a user to view a protected video. This system allows you to restrict access to a specific video or subset of videos, to a specific IP address, timeframe and usage count.",
"documentationUrl": "https://cp.scaleengine.net/docs/api/sevu/request",
"responseClass": "FloSports\\ScaleEngine\\Response\\RequestTicketResponse",
"responseNotes": "The ticket created, if successful, is included in the response.",
"parameters": {
"app": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "The ScaleEngine Application name to restrict viewing to. A pipe-separated list of applications, optionally with wildcards."
},
"command": {
"location": "scaleengineParameter",
"default": "sevu.request",
"static": true
},
"expires": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "The expiration date of the ticket in YYYY-MM-DD hh:mm:ss (Y-m-d H:i:s) format. After this time, access will no longer be allowed, the user will require a new ticket."
},
"ip": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "The IP address or CIDR mask to allow access from. May also be auto or auto/24. This will update the ticket the first time it is used to restrict it to the IP address of the user. This will prevent account sharing, while at the same time dealing with edge cases such as users behind corporate firewalls or proxies that may have a different IP address on the website than they will use to access the video stream."
},
"pass": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "A randomly generated password. Should be unique for each request. Recommended length at least 10 characters."
},
"uses": {
"location": "scaleengineParameter",
"required": true,
"type": "integer",
"description": "The number of times the video will be allowed to start. This can be used to restrict how many times a ticket may be used, and helps further protect against account sharing."
},
"video": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "The stream name or path of the VOD video the user is restricted to. A pipe-separated list of streams/VODs, optionally with wildcards. This allows for things like multi-bitrate streams or files, or allowing users access to a group of streams and videos."
}
}
},
"RevokeTicket": {
"extends": "BaseRequest",
"summary": "This API revokes a SEVU ticket. Once revoked the ticket can no longer be used, and a new ticket will be required for the user to continue viewing protected videos.",
"documentationUrl": "https://cp.scaleengine.net/docs/api/sevu/revoke",
"responseClass": "FloSports\\ScaleEngine\\Response\\RevokeTicketResponse",
"responseNotes": "The response will only indicate success/failure and does not include any data.",
"parameters": {
"command": {
"location": "scaleengineParameter",
"default": "sevu.revoke",
"static": true
},
"key": {
"location": "scaleengineParameter",
"required": true,
"type": "string",
"description": "The SEVU ticket. This is the string that combined with the password provided when the ticket was created allows a user access to a protected stream."
}
}
}
}
}