openapi: 3.0.0
info:
  version: 1.0.0
  title: New Collection
servers:
  - url: 'http://minori-club.innofly.work'
paths:
  /api/v1/sitter/profile/:
    get:
      tags:
        - sitter
      summary: profile
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
  '/api/v1/sitter/profile/{id}':
    put:
      tags:
        - sitter
      summary: update-profile
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/common/:
    get:
      tags:
        - common
      summary: common
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/me/:
    get:
      tags:
        - me
      summary: get-me
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/parent/child/:
    get:
      tags:
        - parent
      summary: /v1/parent/child/
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
    post:
      tags:
        - parent
      summary: /v1/parent/child/
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                nick_name:
                  type: string
                first_name:
                  type: string
                family_name:
                  type: string
                first_name_kana:
                  type: string
                family_name_kana:
                  type: string
                sex:
                  type: string
                birthday:
                  type: string
                school:
                  type: string
                allergy:
                  type: string
                sick:
                  type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/parent/child/1/:
    get:
      tags:
        - parent
      summary: '/v1/parent/child/{id}/'
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
    put:
      tags:
        - parent
      summary: '/v1/parent/child/{id}/'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                nick_name:
                  type: string
                first_name:
                  type: string
                family_name:
                  type: string
                first_name_kana:
                  type: string
                family_name_kana:
                  type: string
                sex:
                  type: string
                birthday:
                  type: string
                school:
                  type: string
                allergy:
                  type: string
                sick:
                  type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/login/:
    post:
      tags:
        - default
      summary: /v1/login/
      description: |-
        Generated from cURL: curl --location 'http://minori-club.innofly.work/api/v1/login/' \
        --form 'email="parent@gmail.com"' \
        --form 'password="12345678a@"'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                email:
                  type: string
                  example: sitter@gmail.com
                password:
                  type: string
                  example: 12345678a@
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/register/:
    post:
      tags:
        - default
      summary: /v1/register/
      description: |-
        Generated from cURL: curl --location 'http://minori-club.innofly.work/api/v1/login/' \
        --form 'email="parent@gmail.com"' \
        --form 'password="12345678a@"'
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                email:
                  type: string
                  example: vietnd@example.com
                password:
                  type: string
                  example: 12345678a@
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/logout/:
    post:
      tags:
        - default
      summary: /v1/logout
      parameters:
        - name: version
          in: header
          schema:
            type: string
            example: 1.0.0
          examples:
            default:
              value: 1.0.0
        - name: device_id
          in: header
          schema:
            type: string
            example: ed08822b-a29a-48f7-b11d-d32c6d39a431
          examples:
            default:
              value: ed08822b-a29a-48f7-b11d-d32c6d39a431
        - name: content-type
          in: header
          schema:
            type: string
            example: application/json
          examples:
            default:
              value: application/json
        - name: Authorization
          in: header
          schema:
            type: string
            example: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNzMzOTc2NTYwLCJpYXQiOjE3MzM4OTAxNjAsImp0aSI6Ijc1NTVmOWU5MzRmNDQwMGNhMTUxN2ViY2Q2YTlmMzBmIiwidXNlcl9pZCI6MX0.GOouQ_lU88DiWh7DOvFfpPAeM8qX9sRL4saAxIMeD7I
          examples:
            default:
              value: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNzMzOTc2NTYwLCJpYXQiOjE3MzM4OTAxNjAsImp0aSI6Ijc1NTVmOWU5MzRmNDQwMGNhMTUxN2ViY2Q2YTlmMzBmIiwidXNlcl9pZCI6MX0.GOouQ_lU88DiWh7DOvFfpPAeM8qX9sRL4saAxIMeD7I
        - name: content-length
          in: header
          schema:
            type: integer
            example: '482'
          examples:
            default:
              value: '482'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNzMzOTc2NTYwLCJpYXQiOjE3MzM4OTAxNjAsImp0aSI6Ijc1NTVmOWU5MzRmNDQwMGNhMTUxN2ViY2Q2YTlmMzBmIiwidXNlcl9pZCI6MX0.GOouQ_lU88DiWh7DOvFfpPAeM8qX9sRL4saAxIMeD7I
                refresh: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoicmVmcmVzaCIsImV4cCI6MTczNTA5OTc2MCwiaWF0IjoxNzMzODkwMTYwLCJqdGkiOiJlNzhjYzcwMzRlNmM0NDk0YTQxOTAxMWVlMGVjOTRjYiIsInVzZXJfaWQiOjF9.iG7CaF7ePsd0MrNF_8z7Hwi1_WE9itgRreb7D9dG8Ag
            examples:
              default:
                value:
                  token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNzMzOTc2NTYwLCJpYXQiOjE3MzM4OTAxNjAsImp0aSI6Ijc1NTVmOWU5MzRmNDQwMGNhMTUxN2ViY2Q2YTlmMzBmIiwidXNlcl9pZCI6MX0.GOouQ_lU88DiWh7DOvFfpPAeM8qX9sRL4saAxIMeD7I
                  refresh: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoicmVmcmVzaCIsImV4cCI6MTczNTA5OTc2MCwiaWF0IjoxNzMzODkwMTYwLCJqdGkiOiJlNzhjYzcwMzRlNmM0NDk0YTQxOTAxMWVlMGVjOTRjYiIsInVzZXJfaWQiOjF9.iG7CaF7ePsd0MrNF_8z7Hwi1_WE9itgRreb7D9dG8Ag
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/register/verify/:
    post:
      tags:
        - default
      summary: /v1/register/verify/
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                verify_code:
                  type: integer
                  example: '666666'
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/register/completion/:
    post:
      tags:
        - default
      summary: /v1/register/completion/
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                last_name:
                  type: string
                  example: Viet
                first_name:
                  type: string
                  example: Viet
                kana_lastname:
                  type: string
                  example: ふりがな
                kana_firstname:
                  type: string
                  example: ふりがな
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/apply_sitter/:
    post:
      tags:
        - default
      summary: /v1/apply_sitter
      parameters:
        - name: secret-key
          in: header
          description: A1b@C2d#E3f$G4h!J5k%L6m^N7o*P8
          schema:
            type: string
            example: A1b@C2d#E3f$G4h!J5k%L6m^N7o*P8
          examples:
            default:
              value: A1b@C2d#E3f$G4h!J5k%L6m^N7o*P8
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                email:
                  type: string
                  example: vietnd@example.com
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
  /api/v1/approve_sitter/:
    post:
      tags:
        - default
      summary: /v1/approve_sitter/
      parameters:
        - name: secret-key
          in: header
          description: A1b@C2d#E3f$G4h!J5k%L6m^N7o*P8
          schema:
            type: string
            example: A1b@C2d#E3f$G4h!J5k%L6m^N7o*P8
          examples:
            default:
              value: A1b@C2d#E3f$G4h!J5k%L6m^N7o*P8
        - name: Content-Type
          in: header
          description: multipart/form-data
          schema:
            type: string
            example: multipart/form-data
          examples:
            default:
              value: multipart/form-data
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                email:
                  type: string
                  example: vietnd@example.com
                license:
                  type: string
                  description: 'ex : {1,2,3}'
                  example: '{1}'
                base_price:
                  type: integer
                  example: '10000'
                mini_child_year:
                  type: integer
                  example: '1'
                max_child_year:
                  type: integer
                  example: '10'
                icon_image:
                  type: string
                  format: binary
                title:
                  type: string
                user_name:
                  type: string
                thumbnail_image:
                  type: string
                  format: binary
                promotion_message:
                  type: string
                service_detail:
                  type: string
                max_child_number:
                  type: string
                region:
                  type: string
                  description: 'ex : {1,2,3}'
                time_option:
                  type: string
                  description: 'ex : {1,2,3}'
                sick_child_option:
                  type: string
                  description: 'ex : {1,2,3}'
                sicked_child_option:
                  type: string
                  description: 'ex : {1,2,3}'
                teaching_option:
                  type: string
                  description: 'ex : {1,2,3}'
      responses:
        '200':
          description: Successful response
          content:
            application/json: {}
      security:
        - bearerAuth: []
      servers:
        - url: 'http://minori-club.innofly.work'
tags:
  - name: sitter
  - name: common
  - name: me
  - name: parent
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
