add 9anime

This commit is contained in:
Kiera Affarantia 2024-03-08 16:01:25 +07:00
parent 40bc222263
commit 29244288e5
4 changed files with 314 additions and 0 deletions

View File

@ -0,0 +1,5 @@
{
"search": "Search",
"get-anime-info": "Get Anime Info",
"get-anime-episode-streaming-links": "Get Anime Episode Streaming Links"
}

View File

@ -0,0 +1,111 @@
---
title: 9anime | Streaming Links
---
import { Tab, Tabs } from "nextra-theme-docs";
# Get Anime Episode Streaming Links
Technical details regarding the usage of the get anime streaming links function for the 9anime provider can be found below. Example code is provided for both JavaScript and Python, along with a response schema.
## Route Schema (URL)
```
https://api.nganime.my.id/anime/9anime/watch/{episodeId}?server={serverName}
```
## Query Parameters
| Parameter | Type | Description | Required? | Default |
| :-------: | :--------------------------------------------------------------------------: | ----------------------------------------------------------------- | :-------: | :----------: |
| query | string | The search query; i.e. the title of the item you are looking for. | Yes | `""` |
| server | Enum: `"vidcloud"` `"streamsb"` `"vidstreaming"` `"streamtape"` `"vidcloud"` | The page number of results to return. | No | `"vidcloud"` |
## Request Samples
<Tabs items={["JavaScript", "Python"]}>
<Tab>
<>
```js
import axios from "axios";
/*
Using the example episode ID of '159332',
explicitly defining default server for demostrative purposes.
*/
const url = "https://api.nganime.my.id/anime/9anime/watch/1593321&server=vidcloud"
const data = async () => {
try {
const { data } = await axios.get(url, { params: {
episodeId: "159332",
server: "vidcloud"
} });
return data;
} catch (err) {
throw new Error(err.message);
}
};
console.log(data);
```
</>
</Tab>
<Tab>
<>
```python
import requests
"""
Using the example episode ID of '159332',
explicitly defining default server for demostrative purposes.
"""
url = "https://api.nganime.my.id/anime/9anime/watch/159332&server=vidcloud"
response = requests.get(url, params={
"episodeId": "159332",
"server": "vidcloud"
})
data = response.json()
print(data)
```
</>
</Tab>
</Tabs>
## Response Schema
<Tabs items={["200 OK", "404 Not Found", "500 Internal Server Error"]}>
<Tab>
**MIME Type:** `application/json`
```json copy=false
{
"headers": {
"Referer": "string",
"watchsb": "string", // or null, since only provided with server being equal to "streamsb".
"User-Agent": "string" // or null
},
"sources": [
{
"url": "string",
"quality": "string",
"isM3U8": true
}
]
}
```
</Tab>
<Tab>
**MIME Type:** `application/json`
```json copy=false
"message": {}
```
</Tab>
<Tab>
**MIME Type:** `application/json`
```json copy=false
"message": {}
```
</Tab>
</Tabs>

View File

@ -0,0 +1,107 @@
---
title: 9anime | Anime Info
---
import { Tab, Tabs } from "nextra-theme-docs";
# Get Anime Info
Technical details regarding the usage of the get anime info function for the 9anime provider can be found below. Example code is provided for both JavaScript and Python, along with a response schema.
## Route Schema (URL)
```
https://api.nganime.my.id/anime/9anime/info/{id}
```
## Path Parameters
| Parameter | Type | Description | Required? | Default |
| :-------: | :----: | ---------------------------------------------------------------------------------------------------- | :-------: | :-----: |
| id | string | The 9anime ID of the anime; i.e. provided by searching for said anime and selecting the correct one. | Yes | |
## Request Samples
<Tabs items={["JavaScript", "Python"]}>
<Tab>
<>
```js
import axios from "axios";
// Using the example ID of "spy-x-family.6ll19".
const url = "https://api.nganime.my.id/anime/9anime/info/spy-x-family.6ll19";
const data = async () => {
try {
const { data } = await axios.get(url, {params: {id: "spy-x-family.6ll19"}});
return data;
} catch (err) {
throw new Error(err.message);
}
};
console.log(data);
```
</>
</Tab>
<Tab>
<>
```python
import requests
# Using the example ID of "spy-x-family.6ll19".
url = "https://api.nganime.my.id/anime/9anime/info/spy-x-family.6ll19"
response = requests.get(url)
data = response.json()
print(data)
```
</>
</Tab>
</Tabs>
## Response Schema
<Tabs items={["200 OK", "404 Not Found", "500 Internal Server Error"]}>
<Tab>
**MIME Type:** `application/json`
```json copy=false
{
"id": "string",
"title": "string",
"url": "string",
"image": "string",
"releaseDate": "string", // or null
"description": "string", // or null
"genres": [
"string"
],
"subOrDub": "sub",
"type": "string", // or null
"status": "Ongoing",
"otherName": "string", // or null
"totalEpisodes": 0,
"episodes": [
{
"id": "string",
"number": 0,
"url": "string"
}
]
}
```
</Tab>
<Tab>
**MIME Type:** `application/json`
```json copy=false
"message": {}
```
</Tab>
<Tab>
**MIME Type:** `application/json`
```json copy=false
"message": {}
```
</Tab>
</Tabs>

View File

@ -0,0 +1,91 @@
---
title: 9anime | Search
---
import { Tab, Tabs } from "nextra-theme-docs";
# Search
Technical details regarding the usage of the search function for the 9anime provider can be found below. Example code is provided for both JavaScript and Python, along with a response schema.
## Route Schema (URL)
```
https://api.nganime.my.id/anime/9anime/{query}?page={number}
```
## Path Parameters
| Parameter | Type | Description | Required? | Default |
| :-------: | :----: | ----------------------------------------------------------------- | :-------: | :-----: |
| query | string | The search query; i.e. the title of the item you are looking for. | Yes | `""` |
## Query Parameters
| Parameter | Type | Description | Required? | Default |
| :-------: | :-----: | ------------------------------------- | :-------: | :-----: |
| page | integer | The page number of results to return. | No | `1` |
## Request Samples
<Tabs items={["JavaScript", "Python"]}>
<Tab>
<>
```js
import axios from "axios";
// Using the example query "demon", and looking at the 2nd page of results.
const url = "https://api.nganime.my.id/anime/9anime/demon?page=2";
const data = async () => {
try {
const { data } = await axios.get(url, { params: { page: 2 } });
return data;
} catch (err) {
throw new Error(err.message);
}
};
console.log(data);
```
</>
</Tab>
<Tab>
<>
```python
import requests
# Using the example query "demon", and looking at the 2nd page of results.
url = "https://api.nganime.my.id/anime/9anime/demon"
response = requests.get(url, params={"page": 2})
data = response.json()
print(data)
```
</>
</Tab>
</Tabs>
## Response Schema
<Tabs items={["200 OK"]}>
<Tab>
**MIME Type:** `application/json`
```json copy=false
{
"currentPage": 0,
"hasNextPage": true,
"results": [
{
"id": "string",
"title": "string",
"image": "string",
"releaseDate": "string", // or null
"subOrDub": "sub" // or "dub"
}
]
}
```
</Tab>
</Tabs>