TheTVDB Companies API

The Companies API from TheTVDB — 3 operation(s) for companies.

OpenAPI Specification

tvdb-companies-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  description: 'Documentation of [TheTVDB](https://thetvdb.com/) API V4. All related information is linked from our [Github repo](https://github.com/thetvdb/v4-api). You might also want to use our [Postman collection] (https://www.getpostman.com/collections/7a9397ce69ff246f74d0)

    ## Authentication

    1. Use the /login endpoint and provide your API key as "apikey". If you have a user-supported key, also provide your subscriber PIN as "pin". Otherwise completely remove "pin" from your call.

    2. Executing this call will provide you with a bearer token, which is valid for 1 month.

    3. Provide your bearer token for subsequent API calls by clicking Authorize below or including in the header of all direct API calls: `Authorization: Bearer [your-token]`


    ## Notes

    1. "score" is a field across almost all entities.  We generate scores for different types of entities in various ways, so no assumptions should be made about the meaning of this value.  It is simply used to hint at relative popularity for sorting purposes.

    '
  title: TVDB API V4 Artwork Companies API
  version: 4.7.10
  x-last-validated: '2026-05-30'
  x-spec-source: https://github.com/thetvdb/v4-api/blob/main/docs/swagger.yml
servers:
- url: https://api4.thetvdb.com/v4
  description: TheTVDB v4 API production
security:
- bearerAuth: []
tags:
- name: Companies
paths:
  /companies:
    get:
      description: returns a paginated list of company records
      operationId: getAllCompanies
      parameters:
      - description: name
        in: query
        name: page
        schema:
          type: number
        example: 1.0
      responses:
        '200':
          description: response
          content:
            application/json:
              schema:
                properties:
                  data:
                    items:
                      $ref: '#/components/schemas/Company'
                    type: array
                  status:
                    type: string
                  links:
                    $ref: '#/components/schemas/Links'
                type: object
              examples:
                GetAllCompanies200Example:
                  summary: Default getAllCompanies 200 response
                  x-microcks-default: true
                  value:
                    data:
                    - activeDate: '2024-01-15'
                      aliases:
                      - language: eng
                        name: Example Name
                      country: usa
                      id: 12345
                      inactiveDate: '2024-01-15'
                      name: Example Name
                      nameTranslations:
                      - example
                      overviewTranslations:
                      - example
                      primaryCompanyType: 12345
                      slug: example-slug
                      parentCompany:
                        id: 12345
                        name: Example Name
                        relation:
                          id: 12345
                          typeName: example
                      tagOptions:
                      - helpText: example
                        id: 12345
                        name: Example Name
                        tag: 12345
                        tagName: example
                    status: Continuing
                    links:
                      prev: example
                      self: example
                      next: example
                      total_items: 1
                      page_size: 1
        '401':
          description: Unauthorized
      tags:
      - Companies
      summary: TheTVDB Get All Companies
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /companies/types:
    get:
      description: returns all company type records
      operationId: getCompanyTypes
      responses:
        '200':
          description: response
          content:
            application/json:
              schema:
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/CompanyType'
                  status:
                    type: string
                type: object
              examples:
                GetCompanyTypes200Example:
                  summary: Default getCompanyTypes 200 response
                  x-microcks-default: true
                  value:
                    data:
                    - companyTypeId: 12345
                      companyTypeName: example
                    status: Continuing
        '401':
          description: Unauthorized
      tags:
      - Companies
      summary: TheTVDB Get Company Types
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /companies/{id}:
    get:
      description: returns a company record
      operationId: getCompany
      parameters:
      - description: id
        in: path
        name: id
        required: true
        schema:
          type: number
        example: 12345
      responses:
        '200':
          description: response
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/Company'
                  status:
                    type: string
                type: object
              examples:
                GetCompany200Example:
                  summary: Default getCompany 200 response
                  x-microcks-default: true
                  value:
                    data:
                      activeDate: '2024-01-15'
                      aliases:
                      - language: eng
                        name: Example Name
                      country: usa
                      id: 12345
                      inactiveDate: '2024-01-15'
                      name: Example Name
                      nameTranslations:
                      - example
                      overviewTranslations:
                      - example
                      primaryCompanyType: 12345
                      slug: example-slug
                      parentCompany:
                        id: 12345
                        name: Example Name
                        relation:
                          id: 12345
                          typeName: example
                      tagOptions:
                      - helpText: example
                        id: 12345
                        name: Example Name
                        tag: 12345
                        tagName: example
                    status: Continuing
        '400':
          description: Invalid company id
        '401':
          description: Unauthorized
        '404':
          description: Company not found
      tags:
      - Companies
      summary: TheTVDB Get Company
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    TagOption:
      description: tag option record
      properties:
        helpText:
          type: string
          example: example
        id:
          format: int64
          type: integer
          x-go-name: ID
          example: 12345
        name:
          type: string
          x-go-name: Name
          example: Example Name
        tag:
          format: int64
          type: integer
          x-go-name: Tag
          example: 12345
        tagName:
          type: string
          x-go-name: TagName
          example: example
      type: object
      x-go-package: github.com/whip-networks/tvdb-api-v4-core/tvdb-api-v4-core/pkg/model
    Company:
      description: A company record
      properties:
        activeDate:
          type: string
          example: '2024-01-15'
        aliases:
          items:
            $ref: '#/components/schemas/Alias'
          type: array
          x-go-name: Aliases
        country:
          type: string
          example: usa
        id:
          format: int64
          type: integer
          x-go-name: ID
          example: 12345
        inactiveDate:
          type: string
          example: '2024-01-15'
        name:
          type: string
          example: Example Name
        nameTranslations:
          items:
            type: string
          type: array
          x-go-name: NameTranslations
          example:
          - example
        overviewTranslations:
          items:
            type: string
          type: array
          x-go-name: OverviewTranslations
          example:
          - example
        primaryCompanyType:
          format: int64
          type: integer
          x-go-name: PrimaryCompanyType
          nullable: true
          example: 12345
        slug:
          type: string
          x-go-name: Slug
          example: example-slug
        parentCompany:
          type: object
          $ref: '#/components/schemas/ParentCompany'
        tagOptions:
          items:
            $ref: '#/components/schemas/TagOption'
          type: array
          x-go-name: TagOptions
      type: object
      x-go-package: github.com/whip-networks/tvdb-api-v4-core/tvdb-api-v4-core/pkg/model
    Alias:
      description: An alias model, which can be associated with a series, season, movie, person, or list.
      properties:
        language:
          type: string
          maximum: 4
          description: A 3-4 character string indicating the language of the alias, as defined in Language.
          example: eng
        name:
          type: string
          maximum: 100
          description: A string containing the alias itself.
          example: Example Name
      type: object
    Links:
      description: Links for next, previous and current record
      properties:
        prev:
          type: string
          nullable: true
          example: example
        self:
          type: string
          nullable: true
          example: example
        next:
          type: string
          example: example
        total_items:
          type: integer
          example: 1
        page_size:
          type: integer
          example: 1
    CompanyRelationShip:
      description: A company relationship
      properties:
        id:
          type: integer
          nullable: true
          example: 12345
        typeName:
          type: string
          example: example
    CompanyType:
      description: A company type record
      type: object
      properties:
        companyTypeId:
          type: integer
          example: 12345
        companyTypeName:
          type: string
          example: example
    ParentCompany:
      description: A parent company record
      type: object
      properties:
        id:
          type: integer
          nullable: true
          example: 12345
        name:
          type: string
          example: Example Name
        relation:
          type: object
          $ref: '#/components/schemas/CompanyRelationShip'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT