> ## Documentation Index
> Fetch the complete documentation index at: https://www.commercengine.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Forgot password

> Initiates password recovery by sending an OTP. Returns an `otp_token` to pass to the reset-password endpoint.



## OpenAPI

````yaml post /auth/forgot-password
openapi: 3.1.0
info:
  version: '1.0'
  title: CE Storefront APIs
  summary: Customer-facing e-commerce API for building exceptional shopping experiences
  description: >-
    Public-facing API for Commerce Engine storefronts, enabling seamless
    shopping experiences with product browsing, cart management, checkout
    processing, user accounts, and order tracking. Perfect for building web,
    mobile, and headless commerce applications.
  contact:
    name: Support
    email: support@commercengine.io
    url: https://www.commercengine.io/contact-us
  license:
    url: https://www.commercengine.io/contact-us
    name: All Rights Reserved
servers:
  - url: https://staging.api.commercengine.io/api/v1/{store_id}/storefront
    description: Staging Server
    variables:
      store_id:
        description: Store ID
        default: store_id
    x-speakeasy-server-id: staging
  - url: https://prod.api.commercengine.io/api/v1/{store_id}/storefront
    description: Prod Server
    variables:
      store_id:
        description: Store ID
        default: store_id
    x-speakeasy-server-id: prod
security: []
tags:
  - name: Analytics
    description: Analytics
  - name: Auth
    description: auth
  - name: Campaigns
    description: Campaigns
  - name: Carts
    description: Carts
  - name: Catalog
    description: Catalog
  - name: Common
    description: Common
  - name: Coupons & promotions
    description: Coupons & promotions
  - name: Customers
    description: Customers
  - name: Juspay
    description: Juspay Payments
  - name: KYC
    description: KYC
  - name: Marketplace
    description: Marketplace
  - name: Orders
    description: Orders
  - name: Others
    description: Others
  - name: Payments
    description: Payments
  - name: PayU
    description: PayU Payments
  - name: POS
    description: POS
  - name: Shipping
    description: Shipping
  - name: Store
    description: Store
  - name: Subscriptions
    description: Subscriptions
externalDocs:
  url: https://llm-docs.commercengine.io
  description: Commerce Engine API Reference Documentation
paths:
  /auth/forgot-password:
    post:
      tags:
        - Auth
      summary: Forgot password
      description: >-
        Initiates password recovery by sending an OTP. Returns an `otp_token` to
        pass to the reset-password endpoint.
      operationId: forgot-password
      parameters:
        - $ref: '#/components/parameters/DebugMode'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/SendOtpWithEmail'
                - $ref: '#/components/schemas/SendOtpWithPhone'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - success
                  - content
                properties:
                  message:
                    description: >-
                      A descriptive message confirming the success or failure of
                      the operation.
                    type: string
                  success:
                    description: >-
                      Indicates whether the request was successful or failure
                      (true for success, false for failure).
                    type: boolean
                  content:
                    $ref: '#/components/schemas/OtpContent'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      security:
        - Authorization: []
      externalDocs:
        url: >-
          https://llm-docs.commercengine.io/storefront/operations/forgot-password
        description: API reference for the forgot-password operation
components:
  parameters:
    DebugMode:
      name: x-debug-mode
      in: header
      required: false
      schema:
        type: boolean
      description: >-
        This param is used to enable debug mode. If debug mode is enabled, the
        API will return OTP as well. This is only for development and testing
        purposes.
  schemas:
    SendOtpWithEmail:
      title: SendOtpWithEmail
      type: object
      externalDocs:
        url: https://llm-docs.commercengine.io/storefront/schemas/SendOtpWithEmail
        description: API reference for the SendOtpWithEmail schema
      required:
        - email
      properties:
        email:
          type: string
    SendOtpWithPhone:
      title: SendOtpWithPhone
      type: object
      externalDocs:
        url: https://llm-docs.commercengine.io/storefront/schemas/SendOtpWithPhone
        description: API reference for the SendOtpWithPhone schema
      required:
        - phone
      properties:
        phone:
          description: 10 digit phone number without country code.
          type: string
        country_code:
          description: >-
            Two-letter code with plus sign prefix (e.g. +91). Defaults to +91 if
            omitted. Use with `phone` only.
          type: string
    OtpContent:
      title: OtpContent
      type: object
      externalDocs:
        url: https://llm-docs.commercengine.io/storefront/schemas/OtpContent
        description: API reference for the OtpContent schema
      required:
        - otp_token
        - otp_action
      properties:
        otp_token:
          description: Token to pass to the verify-otp endpoint along with the OTP.
          type: string
        otp_action:
          description: Action type to pass to the verify-otp endpoint.
          type: string
  responses:
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            type: object
            required:
              - message
              - success
              - code
            properties:
              message:
                type: string
                x-speakeasy-error-message: true
              success:
                type: boolean
              code:
                type: string
              error:
                type: object
    Unauthorized:
      description: Not authorized for given operation on the Resource
      content:
        application/json:
          schema:
            type: object
            required:
              - message
              - success
              - code
            properties:
              message:
                type: string
                examples:
                  - Not authorized for given operation on the Resource.
                x-speakeasy-error-message: true
              success:
                type: boolean
                default: false
              code:
                type: string
                examples:
                  - unauthorized
    NotFound:
      description: Requested resource not found
      content:
        application/json:
          schema:
            type: object
            required:
              - message
              - success
              - code
            properties:
              message:
                type: string
                x-speakeasy-error-message: true
              success:
                type: boolean
              code:
                type: string
  securitySchemes:
    Authorization:
      type: http
      description: Access token
      scheme: bearer

````