-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathindex.html
166 lines (151 loc) · 8.31 KB
/
index.html
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
<!--
Written by BadDev / Cozi for NSBX API homepage
- All content needed to render the page is contained within this single file
- Static HTML and CSS site in one file
- Images are hosted on postimg
-->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="author" content="BadDev" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap" rel="stylesheet" />
<link rel="icon" href="/icon.webp" type="image/x-icon" />
<title>NSBX</title>
<link rel="canonical" href="https://nsbx.ru" />
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" />
<link href="/styles.css" rel="stylesheet" />
<script src="/index.js"></script>
</head>
<body>
<div class="col-lg-8 mx-auto p-4 py-md-5">
<header class="d-flex align-items-end pb-3 mb-3 justify-content-between">
<div>
<a href="/" rel="noopener" title="home page" class="d-flex flex-column align-items-center text-light text-decoration-none">
<img height="60px" width="auto" src="/home-icon.webp" alt="home icon with text" class="img-button" />
</a>
</div>
<div id="statusBox" class="text justify-content-center">
<span class="status-text font-monospace" id="statusText">Checking...</span>
</div>
</header>
<main>
<div class="row g-5" style="cursor: default;">
<div class="col-md-6">
<h3>WTF is a NSBX?</h3>
<hr />
<p class="text">
NSBX is a service that offers an API designed to assist users in fetching streams from different sources. It serves as a bridge between users and streaming sources, simplifying the process of fetching streams.
With NSBX you need not worry about the infrastructure or resources required to fetch streams - NSBX has you covered.
</p>
<h3>Sources</h3>
<hr />
<p class="text">At present, we offer a single source, but fully intend to grow in the future</p>
<div class="bar">
<dl class="row pt-1">
<dt class="col-1 font-monospace">D</dt>
<dd class="col-11">Delta</dd>
<dt class="col-1 font-monospace">A</dt>
<dd class="col-11">Alpha</dd>
<dt class="col-1 font-monospace">B</dt>
<dd class="col-11">Beta</dd>
</dl>
</div>
<div class="mb-3 text">
Note: Sources
<span class="inline-code">Alpha</span>
and
<span class="inline-code">Beta</span>
are non-operational at the moment
</div>
<h3>Updates</h3>
<hr />
<p class="text">
We are constantly updating our API to improve the user experience and add new features. You can take a look at our
<a href="/changelog.html"><span class="inline-code">changelog</span></a>
for the latest updates. Please note that we wont be able to provide detailed information about the changes made to the API due to security concerns.
</p>
<!-- <div class="box">
<button onclick="window.location.href = '/changelog'" class="email bg-dark mb-4">Open changelog</button>
</div> -->
</div>
<div class="col-md-6">
<h3>Our... Docs</h3>
<hr />
<div class="mb-3 text">
Our API simplifies content discovery with the
<span class="inline-code">/search</span>
endpoint. It takes a
<span class="inline-code">query</span>
parameter which is an url-encoded stringified json object which the following properties:
</div>
<div class="flex bg-dark mb-3 api-response" style="cursor: text; position: relative;">
<button onclick="copyToClipboard()" class="small-button" style="position: absolute; top: 0; right: 0; margin: 0.7em;">
<img title="copy to clipboard" height="26px" width="auto" src="/copy.webp" />
</button>
<pre>
{
'title': 'Castle',
'releaseYear': '2009',
'tmdbId': '1419',
'imdbId': 'tt1219024',
'type': 'show',
'season': '1',
'episode': '1'
}
</pre>
</div>
<div class="mb-3 text">
Note: The
<span class="inline-code">season</span>
and
<span class="inline-code">episode</span>
properties are optional and only required for TV shows.
<pre></pre>
This returns a value of type
<a href="https://github.com/movie-web/providers/blob/dev/src/providers/base.ts#L12-L15" target="_blank">
<span class="inline-code">SourcererOutput</span>
</a>
with an embedId property containing the source name and a url property containing the resourceId.
<pre></pre>
With this information, you can easily fetch the streams using the embedId and resourceId from
<span class="inline-code">/source/${embedId}/?resourceId=${resourceId}</span>
using the resourceId as a parameter. This returns a value of type
<a href="https://github.com/movie-web/providers/blob/dev/src/providers/base.ts#L45-L47" target="_blank">
<span class="inline-code">EmbedOutput</span>
</a>
with all the streams available for the given resourceId.
<pre></pre>
This response usually contains multiple qualities, and subitles if available.
</div>
<!-- <h4>Ratelimits</h4>
<hr />
<p class="text">
Our ratelimits are designed to be lenient for users and strict for scrapers, we are open to changing them at a later point.
</p>
<div class="ratelimit-box">20 requests per hour</div> -->
</div>
</div>
</main>
<div style="cursor: default;">
<h3>Contact Us</h3>
<hr />
<p class="text">
We are open to feedback about our API and services at NSBX.
<br />
Though we will not comply to complaints about scrapping unless our philosophy suddenly changes.
</p>
<div class="email-bar py-2">
<div class="pb-2">
<input class="bg-dark email-subject" type="email" id="email-subject-input" placeholder="Subject:" />
</div>
<textarea class="bg-dark email-body pb-5" id="email-content-input" placeholder="Email content..."></textarea>
<button onclick="openMailClient()" class="email bg-dark mt-2">Send to [email protected]</button>
</div>
</div>
</div>
</body>
</html>