openapi: 3.0.1
info:
  title: Wantedly Visit
  description: Search for interesting jobs
  version: 'v1'
servers:
  # TODO 環境毎に変更する
  - url: https://chatgpt-plugin-recom-project.wantedly.com
paths:
  /chatgpt_plugins/projects:
    get:
      operationId: ListProject
      summary: Retrieves all jobs that match the filters specified by the args.
      parameters:
        - in: query
          name: occupation_types
          description: |
            Filter by occupation types.
            If you are looking for a job in Japan, please use the occupation types starting with jp, sg for Singapore, and hk for Hong Kong.
          schema:
            type: array
            items:
              type: string
              enum:
                - jp__engineering
                - jp__design_and_art
                - jp__pm_and_web_direction
                - jp__editing_and_writing
                - jp__marketing
                - jp__sales
                - jp__customer_success_and_support
                - jp__corporate
                - jp__consulting
                - jp__medical
                - jp__others
                - sg__marketing_pr
                - sg__sales_biz_dev
                - sg__customer_service
                - sg__operations
                - sg__human_resources_admin
                - sg__finance_accounting
                - sg__creative
                - sg__software_engineering
                - sg__data_analytics
                - sg__product_management
                - sg__others
                - hk__marketing_pr
                - hk__sales_biz_dev
                - hk__customer_service
                - hk__operations
                - hk__human_resources_admin
                - hk__finance_accounting
                - hk__creative_design
                - hk__software_engineering
                - hk__data_analytics
                - hk__product_management
                - hk__others
        - in: query
          name: fields
          description: |
            Filter by fields types.
            If you are looking for a job in Japan, please use the fields types starting with jp, sg for Singapore, and hk for Hong Kong.
          schema:
            type: array
            items:
              type: string
              enum:
                - jp__mobile_engineer
                - jp__web_engineer
                - jp__infra_engineer
                - jp__systems_engineer
                - jp__qa_engineer
                - jp__data_scientist
                - jp__ui_ux_designer
                - jp__graphic_designer
                - jp__art_director
                - jp__creative_director
                - jp__photographer
                - jp__video_creator
                - jp__illustrator
                - jp__product_manager
                - jp__project_manager
                - jp__web_director
                - jp__writer
                - jp__copywriter
                - jp__editor
                - jp__translator
                - jp__web_marketing
                - jp__public_relations
                - jp__corporate_sales
                - jp__private_sales
                - jp__business_development
                - jp__customer_success
                - jp__customer_support
                - jp__human_resources
                - jp__finance
                - jp__legal_affairs
                - jp__corporate_planning
                - jp__secretary
                - jp__admin_staff
                - jp__business_consultant
                - jp__hr_consultant
                - jp__it_consultant
                - jp__marketing_consultant
                - jp__career_consultant
                - jp__physician
                - jp__dentist
                - jp__nurse
                - jp__pharmacist
                - sg__digital_marketer
                - sg__public_relations
                - sg__community_events
                - sg__business_development
                - sg__account_management
                - sg__account_sales
                - sg__admin_staff
                - sg__human_resource
                - sg__accountant
                - sg__financial_analyst
                - sg__investor_relations
                - sg__graphic_designer
                - sg__creative_director
                - sg__writer
                - sg__photographer
                - sg__video_editor
                - sg__mobile_engineer
                - sg__frontend_engineer
                - sg__backend_engineer
                - sg__dev_ops_engineer
                - sg__ui_ux_designer
                - sg__qa_engineer
                - sg__data_scientist
                - sg__data_analyst
                - sg__business_analyst
                - hk__digital_marketer
                - hk__public_relations
                - hk__community_events
                - hk__business_development
                - hk__account_management
                - hk__account_sales
                - hk__admin_staff
                - hk__human_resource
                - hk__accountant
                - hk__financial_analyst
                - hk__investor_relations
                - hk__ui_ux_designer
                - hk__graphic_designer
                - hk__creative_director
                - hk__writer
                - hk__photographer
                - hk__video_editor
                - hk__mobile_engineer
                - hk__frontend_engineer
                - hk__backend_engineer
                - hk__dev_ops_engineer
                - hk__qa_engineer
                - hk__data_scientist
                - hk__data_analyst
                - hk__business_analyst
        - in: query
          name: locations
          description: |
            Filter by locations.
            Available locations are listed below.
            Leave blank if the user does not specify anything.
            - tokyo
            - osaka
            - nagoya
            - kyoto
            - fukuoka
            - sapporo
            - tohoku
            - kanto
            - hokuriku
            - tokai
            - kinki
            - chugoku
            - kyushu
            - 北海道
            - 青森県
            - 岩手県
            - 宮城県
            - 秋田県
            - 山形県
            - 福島県
            - 茨城県
            - 栃木県
            - 群馬県
            - 埼玉県
            - 千葉県
            - 東京都
            - 神奈川県
            - 新潟県
            - 富山県
            - 石川県
            - 福井県
            - 山梨県
            - 長野県
            - 岐阜県
            - 静岡県
            - 愛知県
            - 三重県
            - 滋賀県
            - 京都府
            - 大阪府
            - 兵庫県
            - 奈良県
            - 和歌山県
            - 鳥取県
            - 島根県
            - 岡山県
            - 広島県
            - 山口県
            - 徳島県
            - 香川県
            - 愛媛県
            - 高知県
            - 福岡県
            - 佐賀県
            - 長崎県
            - 熊本県
            - 大分県
            - 宮崎県
            - 鹿児島県
            - 沖縄県
          schema:
            type: array
            items:
              type: string
              enum:
                - tokyo
                - osaka
                - nagoya
                - kyoto
                - fukuoka
                - sapporo
                - tohoku
                - kanto
                - hokuriku
                - tokai
                - kinki
                - chugoku
                - kyushu
                - 北海道
                - 青森県
                - 岩手県
                - 宮城県
                - 秋田県
                - 山形県
                - 福島県
                - 茨城県
                - 栃木県
                - 群馬県
                - 埼玉県
                - 千葉県
                - 東京都
                - 神奈川県
                - 新潟県
                - 富山県
                - 石川県
                - 福井県
                - 山梨県
                - 長野県
                - 岐阜県
                - 静岡県
                - 愛知県
                - 三重県
                - 滋賀県
                - 京都府
                - 大阪府
                - 兵庫県
                - 奈良県
                - 和歌山県
                - 鳥取県
                - 島根県
                - 岡山県
                - 広島県
                - 山口県
                - 徳島県
                - 香川県
                - 愛媛県
                - 高知県
                - 福岡県
                - 佐賀県
                - 長崎県
                - 熊本県
                - 大分県
                - 宮崎県
                - 鹿児島県
                - 沖縄県
        - in: query
          name: hiring_types
          description: |
            Filter by hiring_types.
            FULL_TIME is singapore only, This represents a permanent employee.
          schema:
            type: array
            items:
              type: string
              enum:
                - HIRING_TYPE_UNSPECIFIED
                - NEWGRAD
                - INTERNSHIP
                - MID_CAREER
                - PART_TIME
                - FULL_TIME
                - FREELANCE
                - SIDE_JOB
        - in: query
          name: country
          description: |
            Filter by country.
            Please select Singapore or Japan according to your language.
            - japan for Japanese
            - Singapore for English
            - otherwise singapore
          schema:
            type: string
            enum:
              - singapore
              - japan
        - in: query
          name: keywords
          description: Filter by freee keywords.
          schema:
            type: array
            items:
              type: string
        - in: query
          name: keyword_operator
          description: |
            The search algorithm using keywords changes depending on the operator specified here.
            KEYWORD_OPERATOR_AND searches with AND conditions, and KEYWORD_OPERATOR_OR searches with OR conditions.
          schema:
            type: string
            enum:
              - KEYWORD_OPERATOR_UNSPECIFIED
              - KEYWORD_OPERATOR_AND
              - KEYWORD_OPERATOR_OR
        - in: query
          name: language
          description: |
            User's language.
            Available languages are listed below.
            - ja
            - en
            - other
          schema:
            type: string
            enum:
              - ja
              - en
              - other
      responses:
        200:
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListProjectResponse'
components:
  schemas:
    ListProjectResponse:
      type: object
      properties:
        projects:
          type: array
          items:
            type: object
            properties:
              title:
                type: string
                description: The job description
              url:
                type: string
                description: Link to job details page
              image_url:
                type: string
                description: The job cover image url
          description: The list of jobs.
