openapi: 3.0.0
servers:
  - url: https://etmdb.com
info:
  contact:
    x-twitter: etmdb
  description: The Ethiopian Movie Database
  title: EtMDB REST API v1
  version: 1.0.0
  x-apisguru-categories:
    - media
  x-logo:
    backgroundColor: "#FFFFFF"
    url: https://twitter.com/etmdb/profile_image?size=original
  x-origin:
    - format: openapi
      url: https://etmdb.com/api/docs/endpoints/?format=openapi
      version: "3.0"
  x-providerName: etmdb.com
paths:
  "/api/v1/cinema-detail/search/{cinema_name}":
    get:
      description: |-
        Return cinema details search result

        ### Response Class (Status 200)

        * __{cinema_name}__: Used as a key word to search cinemas,

        For more details on how cinemas are listed [see here][ref].
        [ref]: https://etmdb.com/en/cinema-list/-updated_date
      operationId: cinema-detail_search_read
      parameters:
        - description: ""
          in: path
          name: cinema_name
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return cinema details search result
      tags:
        - cinema-detail
  "/api/v1/cinema-schedule/search/{movie_title}":
    get:
      description: |-
        Return cinema schedule search result

        ### Response Class (Status 200)

        * __{movie_title}__: Used as a key word to search movie cast
        * You can use both Amharic or English charset/font to search

        For more details about cinema schedule, check each cinema from the cinema list [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: cinema-schedule_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return cinema schedule search result
      tags:
        - cinema-schedule
  "/api/v1/cinema-schedule/searchall/{param}":
    get:
      description: |-
        Return cinema schedule search result

        ### Response Class (Status 200)
        __{param}__ argument can be
        * movie title
        * cinema name
        * cinema hall name or
        * cinema technology

        For more details about cinema schedule, check each cinema from the cinema list [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: cinema-schedule_searchall_read
      parameters:
        - description: ""
          in: path
          name: param
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return cinema schedule search result
      tags:
        - cinema-schedule
  "/api/v1/cinema-shedule-showtime/search/{movie_title}":
    get:
      description: |-
        Return cinema schedule and showtime search result

        ### Response Class (Status 200)
        * __{movie_title}__: Used as a key word to search movie cast
        * You can use both Amharic or English charset/font to search

        For more details about cinema schedule showtime, check each cinema from the cinema list [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: cinema-shedule-showtime_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return cinema schedule and showtime search result
      tags:
        - cinema-shedule-showtime
  "/api/v1/cinema-shedule-showtime/searchall/{param}":
    get:
      description: |-
        Return cinema schedule and showtime search result

        ### Response Class (Status 200)
        __{param}__ argument can be
        * movie title
        * cinema name
        * cinema hall name
        * showtime starting date
        * showtime ending date or
        * cinema technology

        For more details about cinema schedule, check each cinema from the cinema list [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: cinema-shedule-showtime_searchall_read
      parameters:
        - description: ""
          in: path
          name: param
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return cinema schedule and showtime search result
      tags:
        - cinema-shedule-showtime
  "/api/v1/cinema/search/{id}":
    get:
      description: |-
        Return cinema search result

        ### Response Class (Status 200)

        * __{id}__: Used as a key to search cinemas,

        For more details on how cinemas are listed [see here][ref].
        [ref]: https://etmdb.com/en/cinema-list/-updated_date
      operationId: cinema_search_read
      parameters:
        - description: ""
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return cinema search result
      tags:
        - cinema
  "/api/v1/company-credits/search/{movie_title}":
    get:
      description: |-
        Return company credits search result

        ### Response Class (Status 200)

        * __{movie_title}__: Used as a key word to search company credits for the movie
        * You can use both Amharic or English charset/font to search

        For more details on how company credits are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: company-credits_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return company credits search result
      tags:
        - company-credits
  "/api/v1/company-credits/searchall/{param}":
    get:
      description: |-
        Return company credits search result

        ### Response Class (Status 200)
        __{param}__ argument can be
        * company name
        * movie title or
        * company credit description (such as production, cinematography, etc)

        For more details on how company credits are listed [see here][ref].
        [ref]: https://etmdb.com/en/company-list/company_name
      operationId: company-credits_searchall_read
      parameters:
        - description: ""
          in: path
          name: param
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return company credits search result
      tags:
        - company-credits
  "/api/v1/company/search/{company_name}":
    get:
      description: |-
        Return company search result

        ### Response Class (Status 200)

        * __{company_name}__: Used as a key word to search companies,

        For more details on how companies are listed [see here][ref].
        [ref]: https://etmdb.com/en/company-list/-updated_date
      operationId: company_search_read
      parameters:
        - description: ""
          in: path
          name: company_name
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return company search result
      tags:
        - company
  "/api/v1/filmography-type/search/{filmography_description}":
    get:
      description: |-
        Return filmography type search result

        ### Response Class (Status 200)

        * __{filmography_description}__: Used as a key word to search filmography types

        For more details on how filmography types are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: filmography-type_search_read
      parameters:
        - description: ""
          in: path
          name: filmography_description
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return filmography type search result
      tags:
        - filmography-type
  "/api/v1/filmography/search/{movie_title}":
    get:
      description: |-
        Return filmography search result

        ### Response Class (Status 200)

        * __{movie_title}__: Used as a key word to search movies
        * You can use both Amharic or English charset/font to search

        For more details on how filmographies are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: filmography_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return filmography search result
      tags:
        - filmography
  "/api/v1/filmography/searchall/{param}":
    get:
      description: |-
        Return filmography search result

        ### Response Class (Status 200)
        __{param}__ argument can be
        * artist first name
        * artist last name
        * artist username
        * movie title or
        * filmography description (such as director, actor, producer, etc)

        For more details on how filmographies are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: filmography_searchall_read
      parameters:
        - description: ""
          in: path
          name: param
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return filmography search result
      tags:
        - filmography
  "/api/v1/genre-type/search/{genre_description}":
    get:
      description: |-
        Return genre type search result

        ### Response Class (Status 200)

        * __{genre_description}__: Used as a key word to search genre types

        For more details on how genre types are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: genre-type_search_read
      parameters:
        - description: ""
          in: path
          name: genre_description
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return genre type search result
      tags:
        - genre-type
  "/api/v1/genre/search/{movie_title}":
    get:
      description: |-
        Return movie genre search result

        ### Response Class (Status 200)

        * __{movie_title}__: Used as a key word to search movie genres
        * You can use both Amharic or English charset/font to search

        For more details on how movies are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: genre_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return movie genre search result
      tags:
        - genre
  "/api/v1/genre/searchall/{movie_genre_type}":
    get:
      description: |-
        Return movie genre search result

        ### Response Class (Status 200)

        * __{movie_genre_type}__: Used as a key word to search movie genres

        For more details on how movies are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: genre_searchall_read
      parameters:
        - description: ""
          in: path
          name: movie_genre_type
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return movie genre search result
      tags:
        - genre
  "/api/v1/job/search/{job_title}":
    get:
      description: |-
        Return job details search result

        ### Response Class (Status 200)

        * __{job_title}__: Used as a key word to search jobs,

        For more details on how job are listed [see here][ref].
        [ref]: https://etmdb.com/en/job-list/-updated_date
      operationId: job_search_read
      parameters:
        - description: ""
          in: path
          name: job_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return job details search result
      tags:
        - job
  "/api/v1/job/searchall/{company_name}":
    get:
      description: |-
        Return job details search result

        ### Response Class (Status 200)

        * __{company_name}__: Used as a key word to search jobs,

        For more details on how job are listed [see here][ref].
        [ref]: https://etmdb.com/en/job-list/-updated_date
      operationId: job_searchall_read
      parameters:
        - description: ""
          in: path
          name: company_name
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return job details search result
      tags:
        - job
  "/api/v1/media/search/{movie_title}":
    get:
      description: |-
        Return movie media search result

        ### Response Class (Status 200)

        * __{movie_title}__: Used as a key word to search media for movies
        * You can use both Amharic or English charset/font to search

        For more details on how media is listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: media_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return movie media search result
      tags:
        - media
  "/api/v1/media/searchall/{user}":
    get:
      description: |-
        Return cast media search result

        ### Response Class (Status 200)
        __{user}__ argument can be
        * artist first name
        * artist last name
        * artist username

        For more details on how cast media is listed [see here][ref].
        [ref]: https://etmdb.com/en/cast-list/-updated_date
      operationId: media_searchall_read
      parameters:
        - description: ""
          in: path
          name: user
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return cast media search result
      tags:
        - media
  "/api/v1/movie-cast/search/{movie_title}":
    get:
      description: |-
        Return movie cast search result

        ### Response Class (Status 200)

        * __{movie_title}__: Used as a key word to search movie cast
        * You can use both Amharic or English charset/font to search

        For more details on how movie casts are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: movie-cast_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return movie cast search result
      tags:
        - movie-cast
  "/api/v1/movie-cast/searchall/{param}":
    get:
      description: |-
        Return movie cast search result

        ### Response Class (Status 200)
        __{param}__ argument can be
        * artist first name
        * artist last name
        * artist username
        * movie title or
        * character name

        For more details on how movie casts are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: movie-cast_searchall_read
      parameters:
        - description: ""
          in: path
          name: param
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return movie cast search result
      tags:
        - movie-cast
  "/api/v1/movie/search/{movie_title}":
    get:
      description: |-
        Return movie search result

        ### Response Class (Status 200)

        * __{movie_title}__: Used as a key word to search movies
        * You can use both Amharic or English charset/font to search

        For more details on how movies are listed [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: movie_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return movie search result
      tags:
        - movie
  "/api/v1/news/search/{title}":
    get:
      description: |-
        Return news or article search result

        ### Response Class (Status 200)

        * __{title}__: Used as a key word to search news and articles,

        For more details on how news & articles are listed [see here][ref].
        [ref]: https://etmdb.com/en/news-list/-updated_date
      operationId: news_search_read
      parameters:
        - description: ""
          in: path
          name: title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return news or article search result
      tags:
        - news
  "/api/v1/people/search/{user}":
    get:
      description: |-
        Return cast search result

        ### Response Class (Status 200)
        __{param}__ argument can be
        * artist first name
        * artist last name
        * artist username

        For more details on how cast are listed [see here][ref].
        [ref]: https://etmdb.com/en/cast-list/-updated_date
      operationId: people_search_read
      parameters:
        - description: ""
          in: path
          name: user
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return cast search result
      tags:
        - people
  "/api/v1/showtime/searchall/{param}":
    get:
      description: |-
        Return showtime search result

        ### Response Class (Status 200)
        __{param}__ argument can be
        * show time or
        * day of the week [Mon=1, Tue=2, Wed=3, Thu=4, Fri=5, Sat=6, Sun=7]

        For more details about showtime, check each cinema from the cinema list [see here][ref].
        [ref]: https://etmdb.com/en/movie-list/-updated_date
      operationId: showtime_searchall_read
      parameters:
        - description: ""
          in: path
          name: param
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return showtime search result
      tags:
        - showtime
  "/api/v1/watchlist/search/{movie_title}":
    get:
      description: |-
        Return watchlist search result

        ### Response Class (Status 200)

        * __{movie_title}__: Used as a key word to search movies on watchlist
        * You can use both Amharic or English charset/font to search

        For more details on how watchlist are listed [see here][ref].
        [ref]: https://etmdb.com/en/movies/watchlist/id
      operationId: watchlist_search_read
      parameters:
        - description: ""
          in: path
          name: movie_title
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return watchlist search result
      tags:
        - watchlist
  "/api/v1/watchlist/searchall/{param}":
    get:
      description: |-
        Return watchlist search result

        ### Response Class (Status 200)
        __{param}__ argument can be
        * artist first name
        * artist last name
        * artist username
        * movie title or

        For more details on how watchlist are listed [see here][ref].
        [ref]: https://etmdb.com/en/movies/watchlist/id
      operationId: watchlist_searchall_read
      parameters:
        - description: ""
          in: path
          name: param
          required: true
          schema:
            type: string
      responses:
        "200":
          description: ""
      summary: Return watchlist search result
      tags:
        - watchlist
components:
  securitySchemes:
    oauth2:
      description: OAuth2.0 Authorization for the EtMDB API
      flows:
        authorizationCode:
          authorizationUrl: https://etmdb.com/api/oauth/authorize/
          scopes:
            admin: Grants read and write access to administrative information
            groups: Grants access to groups
            read: Grants read access
            write: Grants write access
          tokenUrl: https://etmdb.com/api/oauth/token/
      type: oauth2
