Tube Archivist Channel API

The Channel API from Tube Archivist — 5 operation(s) for channel.

Operations 8

GET /api/channel/ Api channel retrieve #
POST /api/channel/ Api channel create #
GET /api/channel/{channel_id}/ Api channel retrieve 2 #
POST /api/channel/{channel_id}/ Api channel create 2 #
DELETE /api/channel/{channel_id}/ Api channel destroy #
GET /api/channel/{channel_id}/aggs/ Api channel aggs retrieve #
GET /api/channel/{channel_id}/nav/ Api channel nav retrieve #
GET /api/channel/search/ Api channel search retrieve #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/tubearchivist:tubearchivist-channel-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

tubearchivist-channel-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Tubearchivist Channel API
  version: v0.6.0
  description: 'Operations tagged Channel across 2 of this provider''s published API definitions: schema.yaml, tubearchivist-openapi.yml. Each path carries the servers of the definition it was published in.'
tags:
- name: Channel
paths:
  /api/channel/:
    get:
      operationId: api_channel_retrieve
      description: get request
      parameters:
      - in: query
        name: filter
        schema:
          enum:
          - subscribed
          - unsubscribed
          type: string
          minLength: 1
        description: '* `subscribed` - subscribed

          * `unsubscribed` - unsubscribed'
      - in: query
        name: page
        schema:
          type: integer
      tags:
      - Channel
      security:
      - tokenAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelList'
          description: ''
      summary: Api channel retrieve
      x-summary-source: derived
    post:
      operationId: api_channel_create
      description: subscribe/unsubscribe to list of channels
      tags:
      - Channel
      security:
      - tokenAuth: []
      responses:
        '200':
          description: No response body
      summary: Api channel create
      x-summary-source: derived
  /api/channel/{channel_id}/:
    get:
      operationId: api_channel_retrieve_2
      description: get channel detail
      parameters:
      - in: path
        name: channel_id
        schema:
          type: string
        required: true
      tags:
      - Channel
      security:
      - tokenAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Channel'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Channel not found
      summary: Api channel retrieve 2
      x-summary-source: derived
    post:
      operationId: api_channel_create_2
      description: modify channel
      parameters:
      - in: path
        name: channel_id
        schema:
          type: string
        required: true
      tags:
      - Channel
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChannelUpdate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ChannelUpdate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ChannelUpdate'
      security:
      - tokenAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelUpdate'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Bad request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Channel not found
      summary: Api channel create 2
      x-summary-source: derived
    delete:
      operationId: api_channel_destroy
      description: delete channel
      parameters:
      - in: path
        name: channel_id
        schema:
          type: string
        required: true
      tags:
      - Channel
      security:
      - tokenAuth: []
      responses:
        '204':
          description: Channel deleted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Channel not found
      summary: Api channel destroy
      x-summary-source: derived
  /api/channel/{channel_id}/aggs/:
    get:
      operationId: api_channel_aggs_retrieve
      description: get channel aggregations
      parameters:
      - in: path
        name: channel_id
        schema:
          type: string
        required: true
      tags:
      - Channel
      security:
      - tokenAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelAgg'
          description: ''
      summary: Api channel aggs retrieve
      x-summary-source: derived
  /api/channel/{channel_id}/nav/:
    get:
      operationId: api_channel_nav_retrieve
      description: get navigation
      parameters:
      - in: path
        name: channel_id
        schema:
          type: string
        required: true
      tags:
      - Channel
      security:
      - tokenAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChannelNav'
          description: ''
      summary: Api channel nav retrieve
      x-summary-source: derived
  /api/channel/search/:
    get:
      operationId: api_channel_search_retrieve
      description: search for local channel ID
      parameters:
      - in: query
        name: q
        schema:
          type: string
        description: Search query string
        required: true
      tags:
      - Channel
      security:
      - tokenAuth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Channel'
          description: ''
        '400':
          description: Bad Request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Channel not found
      summary: Api channel search retrieve
      x-summary-source: derived
components:
  schemas:
    ErrorResponse:
      type: object
      description: error message
      properties:
        error:
          type: string
      required:
      - error
    ChannelOverwrite:
      type: object
      description: serialize channel overwrites
      properties:
        download_format:
          type:
          - string
          - 'null'
        autodelete_days:
          type:
          - integer
          - 'null'
        index_playlists:
          type:
          - boolean
          - 'null'
        integrate_sponsorblock:
          type:
          - boolean
          - 'null'
        subscriptions_channel_size:
          type:
          - integer
          - 'null'
        subscriptions_live_channel_size:
          type:
          - integer
          - 'null'
        subscriptions_shorts_channel_size:
          type:
          - integer
          - 'null'
    ChannelList:
      type: object
      description: serialize channel list
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Channel'
        paginate:
          $ref: '#/components/schemas/Pagination'
      required:
      - data
      - paginate
    Pagination:
      type: object
      description: serialize paginate response
      properties:
        page_size:
          type: integer
        page_from:
          type: integer
        prev_pages:
          type:
          - array
          - 'null'
          items:
            type: integer
        current_page:
          type: integer
        max_hits:
          type: boolean
        params:
          type: string
        last_page:
          type: integer
        next_pages:
          type:
          - array
          - 'null'
          items:
            type: integer
        total_hits:
          type: integer
      required:
      - current_page
      - last_page
      - max_hits
      - next_pages
      - page_from
      - page_size
      - params
      - prev_pages
      - total_hits
    ChannelNav:
      type: object
      description: serialize channel navigation
      properties:
        has_pending:
          type: boolean
        has_ignored:
          type: boolean
        has_playlists:
          type: boolean
        has_videos:
          type: boolean
        has_streams:
          type: boolean
        has_shorts:
          type: boolean
      required:
      - has_ignored
      - has_pending
      - has_playlists
      - has_shorts
      - has_streams
      - has_videos
    Channel:
      type: object
      description: serialize channel
      properties:
        channel_id:
          type: string
        channel_active:
          type: boolean
        channel_banner_url:
          type:
          - string
          - 'null'
        channel_thumb_url:
          type:
          - string
          - 'null'
        channel_tvart_url:
          type:
          - string
          - 'null'
        channel_description:
          type:
          - string
          - 'null'
        channel_last_refresh:
          type: string
        channel_name:
          type: string
        channel_overwrites:
          $ref: '#/components/schemas/ChannelOverwrite'
        channel_subs:
          type: integer
        channel_subscribed:
          type: boolean
        channel_tags:
          type: array
          items:
            type: string
        channel_tabs:
          type: array
          items:
            $ref: '#/components/schemas/VidTypeFilterEnum'
        _index:
          type: string
          title: ' index'
        _score:
          type: integer
          title: ' score'
      required:
      - channel_active
      - channel_id
      - channel_last_refresh
      - channel_name
      - channel_subs
      - channel_subscribed
      - channel_tabs
    ChannelAggBucket:
      type: object
      description: serialize channel agg bucket
      properties:
        value:
          type: integer
        value_str:
          type: string
      required:
      - value
    ChannelAgg:
      type: object
      description: serialize channel aggregation
      properties:
        total_items:
          $ref: '#/components/schemas/ChannelAggBucket'
        total_size:
          $ref: '#/components/schemas/ChannelAggBucket'
        total_duration:
          $ref: '#/components/schemas/ChannelAggBucket'
      required:
      - total_duration
      - total_items
      - total_size
    ChannelUpdate:
      type: object
      description: update channel
      properties:
        channel_subscribed:
          type: boolean
        channel_overwrites:
          $ref: '#/components/schemas/ChannelOverwrite'
    VidTypeFilterEnum:
      enum:
      - videos
      - streams
      - shorts
      type: string
      description: '* `videos` - videos

        * `streams` - streams

        * `shorts` - shorts'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
    cookieAuth:
      type: apiKey
      in: cookie
      name: sessionid
    tokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Token-based authentication with required prefix "Token"
x-refined-from:
- schema.yaml
- tubearchivist-openapi.yml