### Get Supported Genres (Curl) Source: https://mangabaka.org/api/explorer Fetches a list of all supported manga genres from the MangaBaka API using a cURL command. This helps users filter searches and understand available categorization. ```bash curl -X GET "https://api.mangabaka.dev/v1/genres" ``` -------------------------------- ### Batch Get Series (Node.js Axios) Source: https://mangabaka.org/api/explorer Efficiently retrieves information for multiple manga series in a single request using Node.js and Axios. This is optimized for fetching data for up to 50 series at once. ```javascript const axios = require('axios'); async function batchGetSeries(seriesIds) { if (seriesIds.length > 50) { throw new Error('Cannot request more than 50 series IDs at once.'); } try { const response = await axios.get('https://api.mangabaka.dev/v1/series/batch', { params: { ids: seriesIds.join(',') } // Assuming IDs are comma-separated }); return response.data; } catch (error) { console.error('Error batch fetching series:', error); throw error; } } ``` -------------------------------- ### Get Series by ID (Python Requests) Source: https://mangabaka.org/api/explorer Fetches detailed information for a manga series using its ID with the Python Requests library. This is a common operation for applications interacting with the MangaBaka API. ```python import requests def get_series_by_id(series_id): url = f"https://api.mangabaka.dev/v1/series/{series_id}" try: response = requests.get(url) response.raise_for_status() # Raise an exception for bad status codes return response.json() except requests.exceptions.RequestException as e: print(f"Error fetching series: {e}") return None ``` -------------------------------- ### Get Series by ID (Node.js Axios) Source: https://mangabaka.org/api/explorer Retrieves a specific manga series by its unique ID using Node.js and the Axios library. This endpoint is useful for fetching detailed information about a single series. ```javascript const axios = require('axios'); async function getSeriesById(seriesId) { try { const response = await axios.get(`https://api.mangabaka.dev/v1/series/${seriesId}`); return response.data; } catch (error) { console.error('Error fetching series:', error); throw error; } } ``` -------------------------------- ### Get Latest News (Python Requests) Source: https://mangabaka.org/api/explorer Retrieves the latest news articles related to manga series using Python and the Requests library. This endpoint is useful for staying updated on new releases and announcements. ```python import requests def get_latest_news(): url = "https://api.mangabaka.dev/v1/news" try: response = requests.get(url) response.raise_for_status() return response.json() except requests.exceptions.RequestException as e: print(f"Error fetching news: {e}") return None ``` -------------------------------- ### Download OpenAPI Document (YAML) Source: https://mangabaka.org/api/explorer Offers a link to download the OpenAPI 3.0.1 specification in YAML format. This is an alternative format for API documentation, preferred by some developers for its readability. ```link https://api.mangabaka.dev/openapi.yaml ``` -------------------------------- ### Download OpenAPI Document (JSON) Source: https://mangabaka.org/api/explorer Provides a direct link to download the OpenAPI 3.0.1 specification document in JSON format. This document describes the API structure, endpoints, and data models. ```link https://api.mangabaka.dev/openapi.json ``` -------------------------------- ### MangaBaka API Endpoints Source: https://mangabaka.org/api/index This section details the available endpoints for the MangaBaka API, including search, lookup, and news retrieval. ```APIDOC ## API Base URL `https://api.mangabaka.dev/` ## Data Format All API endpoints return data in JSON format. ## Supported Metadata Providers * AniList * Anime-Planet * Kitsu * MangaUpdates * MyAnimeList * Shikimori ## Rate Limiting Rate limiting is applied to uncached requests. Exceeding the rate limit will result in a `429 Too Many Requests` response. ### Search Endpoint - **Kind**: Search - **Path**: `GET /v1/series/search` - **Cache Duration**: 2 hours - **Limit**: 60 requests per minute - **Limited by**: IP + Leaky Bucket ### Lookup Endpoints - **Kind**: Lookup - **Path**: `GET /*` (e.g., `GET /v1/series/1`) - **Cache Duration**: 12 hours - **Limit**: 120 requests per minute - **Limited by**: IP + Leaky Bucket ### News Endpoints - **Kind**: Lookup - **Path**: `GET /v1/news` or `GET /v1/series/*/news` - **Cache Duration**: 2 hours - **Limit**: 120 requests per minute - **Limited by**: IP + Leaky Bucket ## Rights and Attribution ### Acceptable Usage Policy and Terms of Service Users must adhere to the Acceptable Usage Policy (AUP) and Terms of Service (TOS) of the underlying metadata providers. ### Data Attribution When using the API, attribute both MangaBaka and the underlying data providers. This can be done via links in footers, README files, or 'About' pages. ``` -------------------------------- ### Search for Series (Node.js Axios) Source: https://mangabaka.org/api/explorer Allows searching for manga series based on various criteria using Node.js and Axios. This endpoint is essential for discovering new series or finding specific titles within the MangaBaka database. ```javascript const axios = require('axios'); async function searchSeries(params) { try { const response = await axios.get('https://api.mangabaka.dev/v1/series/search', { params: params }); return response.data; } catch (error) { console.error('Error searching series:', error); throw error; } } // Example usage: // searchSeries({ query: 'One Piece', genre: 'Action' }).then(data => console.log(data)); ``` -------------------------------- ### News and Genres Endpoints Source: https://mangabaka.org/api/explorer Endpoints for retrieving general news and supported genres. ```APIDOC ## GET /v1/news ### Description Get the latest news across all series. ### Method GET ### Endpoint `https://api.mangabaka.dev/v1/news` ### Parameters #### Query Parameters - **limit** (integer) - Optional - The maximum number of news items to return. - **page** (integer) - Optional - The page number for pagination. ### Request Example ```json { "example": "GET /v1/news?limit=10" } ``` ### Response #### Success Response (200) - **status** (number) - The HTTP status code of the response. - **data** (array) - A list of the latest news items. - **pagination** (object) - Present if the response is paginated. #### Response Example ```json { "status": 200, "data": [ { "title": "Major Series Update", "date": "2023-10-27", "url": "http://example.com/news/latest" } ], "pagination": { "next_page": "/v1/news?page=2" } } ``` ``` ```APIDOC ## GET /v1/genres ### Description Get a list of all supported series genres. ### Method GET ### Endpoint `https://api.mangabaka.dev/v1/genres` ### Request Example ```json { "example": "GET /v1/genres" } ``` ### Response #### Success Response (200) - **status** (number) - The HTTP status code of the response. - **data** (array) - A list of genre strings. #### Response Example ```json { "status": 200, "data": [ "Action", "Comedy", "Drama", "Fantasy" ] } ``` ``` -------------------------------- ### Series Endpoints Source: https://mangabaka.org/api/explorer Endpoints for retrieving and searching manga series data. ```APIDOC ## GET /v1/series/{id} ### Description Get a series by its ID. ### Method GET ### Endpoint `https://api.mangabaka.dev/v1/series/{id}` ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the series. ### Request Example ```json { "example": "GET /v1/series/84926" } ``` ### Response #### Success Response (200) - **status** (number) - The HTTP status code of the response. - **data** (object) - Contains the series details. - **pagination** (object) - Present if the response is paginated. #### Response Example ```json { "status": 200, "data": { "id": "84926", "title": "Example Series Title", "description": "A brief description of the series.", "genres": ["Action", "Adventure"], "status": "Ongoing" } } ``` ``` ```APIDOC ## GET /v1/series/{id}/full ### Description Get a series by ID with full source response fields. ### Method GET ### Endpoint `https://api.mangabaka.dev/v1/series/{id}/full` ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the series. ### Request Example ```json { "example": "GET /v1/series/84926/full" } ``` ### Response #### Success Response (200) - **status** (number) - The HTTP status code of the response. - **data** (object) - Contains the full series details from the source. #### Response Example ```json { "status": 200, "data": { "id": "84926", "source_title": "Example Series Title Source", "source_description": "Full detailed description from the original source.", "genres": ["Action", "Adventure"], "status": "Ongoing" } } ``` ``` ```APIDOC ## GET /v1/series/{id}/news ### Description Get news related to the series. ### Method GET ### Endpoint `https://api.mangabaka.dev/v1/series/{id}/news` ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the series. ### Request Example ```json { "example": "GET /v1/series/84926/news" } ``` ### Response #### Success Response (200) - **status** (number) - The HTTP status code of the response. - **data** (array) - A list of news articles related to the series. - **pagination** (object) - Present if the response is paginated. #### Response Example ```json { "status": 200, "data": [ { "title": "New Chapter Released", "date": "2023-10-27", "url": "http://example.com/news/1" } ] } ``` ``` ```APIDOC ## GET /v1/series/{id}/related ### Description Get related series for the series. ### Method GET ### Endpoint `https://api.mangabaka.dev/v1/series/{id}/related` ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the series. ### Request Example ```json { "example": "GET /v1/series/84926/related" } ``` ### Response #### Success Response (200) - **status** (number) - The HTTP status code of the response. - **data** (array) - A list of related series. #### Response Example ```json { "status": 200, "data": [ { "id": "12345", "title": "Related Series Title" } ] } ``` ``` ```APIDOC ## GET /v1/series/search ### Description Search for series based on various criteria. ### Method GET ### Endpoint `https://api.mangabaka.dev/v1/series/search` ### Parameters #### Query Parameters - **query** (string) - Optional - The search term. - **genre** (string) - Optional - Filter by genre. - **status** (string) - Optional - Filter by status (e.g., 'Ongoing', 'Completed'). - **licensed** (boolean) - Optional - Filter by licensed status. ### Request Example ```json { "example": "GET /v1/series/search?query=one%20piece&genre=Action" } ``` ### Response #### Success Response (200) - **status** (number) - The HTTP status code of the response. - **data** (array) - A list of series matching the search criteria. - **pagination** (object) - Present if the response is paginated. #### Response Example ```json { "status": 200, "data": [ { "id": "12345", "title": "Search Result Series" } ], "pagination": { "next_page": "/v1/series/search?page=2" } } ``` ``` ```APIDOC ## GET /v1/series/batch ### Description Batch get up to 50 series in one request by their IDs. ### Method GET ### Endpoint `https://api.mangabaka.dev/v1/series/batch` ### Parameters #### Query Parameters - **ids** (string) - Required - A comma-separated list of series IDs (max 50). ### Request Example ```json { "example": "GET /v1/series/batch?ids=84926,12345,67890" } ``` ### Response #### Success Response (200) - **status** (number) - The HTTP status code of the response. - **data** (array) - A list of series matching the provided IDs. #### Response Example ```json { "status": 200, "data": [ { "id": "84926", "title": "Example Series Title" }, { "id": "12345", "title": "Another Series Title" } ] } ``` ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.