openapi: 3.0.0
info:
  title: WildFork - Customer API's
  version: 1.0.0
servers:
  - url: http://{{baseurl}}{{uri}}{{resource}}
  - url: http://{{baseurl}}
tags:
  - name: /
  - name: membership
  - name: membership > payment
  - name: membership > {email}
  - name: address
  - name: address > {addressId}
  - name: shopify
  - name: shopify > webhook
  - name: product
  - name: product > notification
  - name: password
  - name: password > reset
  - name: password > forgot
  - name: mobile
  - name: mobile > session
  - name: mobile > logout
  - name: mobile > login
  - name: marketing
  - name: marketing > subscribe
  - name: logout
  - name: login
  - name: klaviyo
  - name: klaviyo > list
  - name: klaviyo > list > {listId}
  - name: klaviyo > list > {listId} > subscribe
  - name: favorites
  - name: favorites > {listId}
  - name: favorites > {listId} > {itemId}
  - name: contact
paths:
  /:
    get:
      tags:
        - /
      summary: Get a customer account
      description: get an account
      parameters:
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "firstName": "<string>",
                  "lastName": "<string>",
                  "email": "<string>",
                  "acceptMarketing": "<boolean>",
                  "membershipExpirationDate": "<string>",
                  "membershipType": "<string>",
                  "renewalActive": "<boolean>",
                  "address": [
                    {
                      "id": "<string>",
                      "firstName": "<string>",
                      "lastName": "<string>",
                      "address1": "<string>",
                      "address2": "<string>",
                      "city": "<string>",
                      "state": "<string>",
                      "postalCode": "<string>",
                      "country": "<string>",
                      "phone": "<string>",
                      "email": "<string>",
                      "defaultAddress": "<boolean>"
                    },
                    {
                      "id": "<string>",
                      "firstName": "<string>",
                      "lastName": "<string>",
                      "address1": "<string>",
                      "address2": "<string>",
                      "city": "<string>",
                      "state": "<string>",
                      "postalCode": "<string>",
                      "country": "<string>",
                      "phone": "<string>",
                      "email": "<string>",
                      "defaultAddress": "<boolean>"
                    }
                  ],
                  "member": "<boolean>"
                }
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
    put:
      tags:
        - /
      summary: Update a customer account
      description: update an account
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                firstName: <string>
                lastName: <string>
                email: <string>
                acceptMarketing: <boolean>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "firstName": "<string>",
                  "lastName": "<string>",
                  "email": "<string>",
                  "acceptMarketing": "<boolean>",
                  "membershipExpirationDate": "<string>",
                  "membershipType": "<string>",
                  "renewalActive": "<boolean>",
                  "address": [
                    {
                      "id": "<string>",
                      "firstName": "<string>",
                      "lastName": "<string>",
                      "address1": "<string>",
                      "address2": "<string>",
                      "city": "<string>",
                      "state": "<string>",
                      "postalCode": "<string>",
                      "country": "<string>",
                      "phone": "<string>",
                      "email": "<string>",
                      "defaultAddress": "<boolean>"
                    },
                    {
                      "id": "<string>",
                      "firstName": "<string>",
                      "lastName": "<string>",
                      "address1": "<string>",
                      "address2": "<string>",
                      "city": "<string>",
                      "state": "<string>",
                      "postalCode": "<string>",
                      "country": "<string>",
                      "phone": "<string>",
                      "email": "<string>",
                      "defaultAddress": "<boolean>"
                    }
                  ],
                  "member": "<boolean>"
                }
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
    post:
      tags:
        - /
      summary: Create a new customer account
      description: create a new account and return session cookie
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                acceptMarketing: 'false'
                email: nareshbond23@api.wildfork.com
                password: ApriL@2017
                firstName: NR
                lastName: Gopi
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
      responses:
        '201':
          description: Created
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /membership/payment:
    put:
      tags:
        - membership > payment
      summary: Update Customer Membership Payment
      description: >-
        Public api that allows a customer to update there membership card on
        file
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                paymentData: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /membership/{email}:
    delete:
      tags:
        - membership > {email}
      summary: Remove the membership
      description: Remove the membership
      parameters:
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: email
          in: path
          schema:
            type: string
          required: true
          example: <string>
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /membership:
    delete:
      tags:
        - membership
      summary: Remove the membership
      description: Remove the membership
      parameters:
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /address/{addressId}:
    put:
      tags:
        - address > {addressId}
      summary: Update a customer saved address
      description: update a customer saved address, the address saved to signed in customer
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                id: ItHArR68
                firstName: Moyurupa
                lastName: Bora
                address1: Add
                address2: DU
                city: City
                state: NS
                postalCode: L1G 0A1
                country: CA
                phone: '3455634566'
                email: Testfirstlast@wildfork.ca
                defaultAddress: true
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: application/json
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
        - name: addressId
          in: path
          schema:
            type: string
          required: true
          example: ItHArR68
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: application/json
          content:
            application/json:
              schema:
                type: object
              examples:
                example-0:
                  summary: OK
                  value:
                    id: <string>
                    firstName: <string>
                    lastName: <string>
                    address1: <string>
                    address2: <string>
                    city: <string>
                    state: <string>
                    postalCode: <string>
                    country: <string>
                    phone: <string>
                    email: <string>
                    defaultAddress: <boolean>
                example-1:
                  summary: Update a customer saved address
                  value:
                    id: ItHArR68
                    firstName: Moyurupa
                    lastName: Bora
                    address1: Add
                    address2: DU
                    city: City
                    state: NS
                    postalCode: L1G 0A1
                    country: CA
                    phone: '3455634566'
                    email: Testfirstlast@wildfork.ca
                    defaultAddress: true
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
    delete:
      tags:
        - address > {addressId}
      summary: Remove saved address
      description: Remove saved address
      parameters:
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
        - name: addressId
          in: path
          schema:
            type: string
          required: true
          example: vd13IKMD
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: Removed address successfully
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /address:
    post:
      tags:
        - address
      summary: Add a customer address
      description: Add a customer address, the address saved to signed in customer
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                id: <string>
                firstName: <string>
                lastName: <string>
                address1: <string>
                address2: <string>
                city: <string>
                state: <string>
                postalCode: <string>
                country: <string>
                phone: <string>
                email: <string>
                defaultAddress: <boolean>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: application/json
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: application/json
          content:
            application/json:
              schema:
                type: object
              example:
                id: <string>
                firstName: <string>
                lastName: <string>
                address1: <string>
                address2: <string>
                city: <string>
                state: <string>
                postalCode: <string>
                country: <string>
                phone: <string>
                email: <string>
                defaultAddress: <boolean>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /shopify/webhook:
    post:
      tags:
        - shopify > webhook
      summary: Get Customer from CDC
      description: Get Customer from CDC system
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                id: <long>
                email: <string>
                state: <string>
                note: <string>
                phone: <string>
                tags: <string>
                metafield:
                  key: <string>
                  namespace: <string>
                  value: <string>
                  type: <string>
                currency: <string>
                addresses:
                  - id: <long>
                    company: <string>
                    address1: <string>
                    address2: <string>
                    city: <string>
                    province: <string>
                    country: <string>
                    zip: <string>
                    phone: <string>
                    name: <string>
                    customer_id: <long>
                    first_name: <string>
                    last_name: <string>
                    province_code: <string>
                    country_code: <string>
                    country_name: <string>
                    default: <string>
                  - id: <long>
                    company: <string>
                    address1: <string>
                    address2: <string>
                    city: <string>
                    province: <string>
                    country: <string>
                    zip: <string>
                    phone: <string>
                    name: <string>
                    customer_id: <long>
                    first_name: <string>
                    last_name: <string>
                    province_code: <string>
                    country_code: <string>
                    country_name: <string>
                    default: <string>
                accepts_marketing: <boolean>
                created_at: <string>
                updated_at: <string>
                first_name: <string>
                last_name: <string>
                orders_count: <integer>
                total_spent: <string>
                last_order_id: <string>
                verified_email: <boolean>
                multipass_identifier: <string>
                tax_exempt: <boolean>
                last_order_name: <string>
                tax_exemptions:
                  - <string>
                  - <string>
                default_address:
                  address1: <string>
                  address2: <string>
                  city: <string>
                  company: <string>
                  country: <string>
                  id: <long>
                  phone: <string>
                  province: <string>
                  zip: <string>
                  first_name: <string>
                  last_name: <string>
                  province_code: <string>
                  country_code: <string>
                  country_name: <string>
                  default: <string>
                accepts_marketing_updated_at: <string>
                marketing_opt_in_level: <string>
                email_marketing_consent: <string>
                sms_marketing_consent: <string>
                admin_graphql_api_id: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: application/json
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: application/json
          content:
            application/json:
              schema:
                type: object
              example:
                message: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /product/notification:
    post:
      tags:
        - product > notification
      summary: trigger a notification when product in stock based on customer email
      description: >-
        trigger a notification when product in stock based on customer email
        through Emarsys
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                email: <string>
                sku: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /password/reset:
    post:
      tags:
        - password > reset
      summary: For customers to request a password change
      description: Resets the password for a custome
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                password: z[9.(ykAc!;
                token: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /password/forgot:
    post:
      tags:
        - password > forgot
      summary: For customers to request an email to change their password
      description: Sends an email with a token
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                email: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /mobile/session:
    post:
      tags:
        - mobile > session
      summary: User Mobile Session Transition
      description: >-
        Session transition api for mobile to move access token session to cookie
        based session
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                existingSessionId: <string>
      parameters:
        - name: X-WF-CT-ACCESS-TOKEN
          in: header
          schema:
            type: string
          description: '(Required) '
          example: <string>
        - name: X-WF-CT-REFRESH-TOKEN
          in: header
          schema:
            type: string
          description: '(Required) '
          example: <string>
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: application/json
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: application/json
          content:
            application/json:
              schema:
                type: object
              example:
                sessionId: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /mobile/logout:
    post:
      tags:
        - mobile > logout
      summary: User logout  from mobile
      description: User logout  from mobile
      requestBody:
        content: {}
      parameters:
        - name: X-WF-CT-ACCESS-TOKEN
          in: header
          schema:
            type: string
          description: '(Required) '
          example: <string>
        - name: X-WF-CT-REFRESH-TOKEN
          in: header
          schema:
            type: string
          description: '(Required) '
          example: <string>
        - name: X-WF-CT-EXPIRE-TIME
          in: header
          schema:
            type: string
          description: '(Required) '
          example: <integer>
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /mobile/login:
    post:
      tags:
        - mobile > login
      summary: User login from mobile
      description: login through mobile and return access token and refresh token
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                email: <string>
                password: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /mobile:
    post:
      tags:
        - mobile
      summary: Create a new customer account from mobile app
      description: create account and auto login
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                acceptMarketing: <boolean>
                email: <string>
                password: zq*&Nfaa4CT}bY#>
                firstName: <string>
                lastName: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
      responses:
        '201':
          description: Created
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /marketing/subscribe:
    post:
      tags:
        - marketing > subscribe
      summary: For subscribing to emarsys marketing email
      description: Subscribe to emarsys marketing email
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                email: '{{test-mShip-email}}'
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
            application/json:
              schema:
                type: object
              example:
                errors:
                  - code: WF_COMMON_002
                    message: NOT DESIGNED FOR CANADA
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /logout:
    post:
      tags:
        - logout
      summary: User logout  from web
      description: User logout  from web
      requestBody:
        content: {}
      parameters:
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: null
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /login:
    post:
      tags:
        - login
      summary: User login from web
      description: login through web and return session cookie
      requestBody:
        content:
          '*/*':
            schema:
              type: string
              example: >-
                "{\n  \"email\": \"{{test-mShip-email}}\",\n  \"password\":
                \"{{test-mShip-password}}\"\n}"
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /klaviyo/list/{listId}/subscribe:
    post:
      tags:
        - klaviyo > list > {listId} > subscribe
      summary: For subscribing to klaviyo lists
      description: Subscribe to klaviyo list
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                profiles:
                  - id966: <string>
                  - sed_215: <string>
                    nulla3: <string>
                    ullamco0e: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: listId
          in: path
          schema:
            type: string
          required: true
          example: <string>
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /favorites/{listId}/{itemId}:
    delete:
      tags:
        - favorites > {listId} > {itemId}
      summary: Remove products from the favorites list
      description: Remove products from the favorites list
      parameters:
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
        - name: listId
          in: path
          schema:
            type: string
          required: true
          example: '{{listId-name}}'
        - name: itemId
          in: path
          schema:
            type: string
          required: true
          example: 713b9e32-51db-42b7-8069-32f1165b3a33
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: <string>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /favorites/{listId}:
    get:
      tags:
        - favorites > {listId}
      summary: Get favorite list by list id
      description: Get favorite list by list id
      parameters:
        - name: X-WILDFORK-LOCALE
          in: header
          schema:
            type: string
          example: '{{wf-locale}}'
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
        - name: listId
          in: path
          schema:
            type: integer
          required: true
          example: '1'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "id": "<string>",
                  "name": "<string>",
                  "lineItems": [
                    {
                      "sku": "<string>",
                      "name": "<string>",
                      "id": "<string>"
                    },
                    {
                      "sku": "<string>",
                      "name": "<string>",
                      "id": "<string>"
                    }
                  ]
                }
            application/json:
              schema:
                type: object
              example:
                id: 81e8215f-7daa-4152-aef9-910ffee28308
                name: '1'
                lineItems:
                  - sku: '000000000000005002'
                    name: Fully Cooked Dungeness Crab
                    id: 713b9e32-51db-42b7-8069-32f1165b3a33
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
    post:
      tags:
        - favorites > {listId}
      summary: Add products to the favorites list
      description: Add products to the favorites list
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                sku:
                  - '{{sku-fullyCookedDungenessCrab}}'
      parameters:
        - name: X-WILDFORK-LOCALE
          in: header
          schema:
            type: string
          example: '{{wf-locale}}'
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: '*/*'
        - name: Ocp-Apim-Subscription-Key
          in: header
          schema:
            type: string
          example: '{{Ocp-Apim-Subscription-Key}}'
        - name: listId
          in: path
          schema:
            type: string
          required: true
          example: '{{listId-name}}'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "id": "<string>",
                  "name": "<string>",
                  "lineItems": [
                    {
                      "sku": "<string>",
                      "name": "<string>",
                      "id": "<string>"
                    },
                    {
                      "sku": "<string>",
                      "name": "<string>",
                      "id": "<string>"
                    }
                  ]
                }
            application/json:
              schema:
                type: object
              example:
                id: 81e8215f-7daa-4152-aef9-910ffee28308
                name: '1'
                lineItems:
                  - sku: '000000000000005002'
                    name: Fully Cooked Dungeness Crab
                    id: 713b9e32-51db-42b7-8069-32f1165b3a33
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
  /contact:
    post:
      tags:
        - contact
      summary: FreshDesk Ticket Creation
      description: Create a FreshDesk ticket on customer submit of contactUs form.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              example:
                contactReason: PRODUCT_ISSUE
                email: <string>
                firstName: <string>
                lastName: <string>
                unlimitedMember: <boolean>
                contactNumber: <string>
                detailQuery: <string>
                orderNumber: <string>
      parameters:
        - name: Content-Type
          in: header
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          schema:
            type: string
          example: application/json
      responses:
        '201':
          description: Created
          headers:
            Content-Type:
              schema:
                type: string
                example: application/json
          content:
            application/json:
              schema:
                type: object
              example:
                id: <integer>
        '400':
          description: Bad Request
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '401':
          description: Unauthorized
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              schema:
                type: string
                example: '*/*'
          content:
            text/plain:
              schema:
                type: string
              example: |-
                {
                  "errors": [
                    {
                      "code": "<string>",
                      "message": "<string>"
                    },
                    {
                      "code": "<string>",
                      "message": "<string>"
                    }
                  ]
                }
