Skip to content

register-with-email

Method: POST
Path: /auth/register/email

Tags: Auth

Summary

Register with email

Description

Registers a new user with their email address. Returns a User object with access_token and refresh_token.

Storefront SDK Usage

SDK Method: sdk.auth.registerWithEmail()

Example:

typescript
// Register a new user with email address
const { data, error } = await sdk.auth.registerWithEmail({
  email: "jane.smith@example.com",
  first_name: "Jane",
  last_name: "Smith",
  phone: "9876543210"
});

if (error) {
  console.error("Email registration failed:", error.message);
} else {
  console.log("OTP token:", data.otp_token);
  console.log("Action:", data.otp_action);
}

TypeScript Definition

typescript
"register-with-email": {
        parameters: {
            query?: never;
            header?: {
                /** @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. */
                "x-debug-mode"?: components["parameters"]["DebugMode"];
            };
            path?: never;
            cookie?: never;
        };
        requestBody: {
            content: {
                "application/json": {
                    /** Format: email */
                    email: string;
                    first_name: string;
                    last_name?: string | null;
                    phone?: string | null;
                };
            };
        };
        responses: {
            /** @description OK */
            200: {
                headers: {
                    [name: string]: unknown;
                };
                content: {
                    "application/json": {
                        message: string;
                        success: boolean;
                        content: components["schemas"]["OtpContent"];
                    };
                };
            };
            400: components["responses"]["BadRequest"];
            401: components["responses"]["Unauthorized"];
        };
    };

Component References

ReferenceResolves To
components["parameters"]["DebugMode"]DebugMode
components["schemas"]["OtpContent"]OtpContent
components["responses"]["BadRequest"]BadRequest
components["responses"]["Unauthorized"]Unauthorized

Parameters

  • x-debug-mode (header): 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.

Request Body

Content Types: application/json

Responses

200

OK

400

Bad request

401

Not authorized for given operation on the Resource

OpenAPI Definition

json
{
  "tags": [
    "Auth"
  ],
  "operationId": "register-with-email",
  "summary": "Register with email",
  "description": "Registers a new user with their email address. Returns a `User` object with `access_token` and `refresh_token`.",
  "externalDocs": {
    "url": "https://llm-docs.commercengine.io/storefront/operations/register-with-email",
    "description": "API reference for the register-with-email operation"
  },
  "parameters": [
    {
      "$ref": "#/components/parameters/DebugMode"
    }
  ],
  "requestBody": {
    "required": true,
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "required": [
            "email",
            "first_name"
          ],
          "properties": {
            "email": {
              "type": "string",
              "format": "email"
            },
            "first_name": {
              "type": "string"
            },
            "last_name": {
              "type": [
                "string",
                "null"
              ]
            },
            "phone": {
              "type": [
                "string",
                "null"
              ]
            }
          }
        }
      }
    }
  },
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "required": [
              "message",
              "success",
              "content"
            ],
            "properties": {
              "message": {
                "type": "string"
              },
              "success": {
                "type": "boolean"
              },
              "content": {
                "$ref": "#/components/schemas/OtpContent"
              }
            }
          }
        }
      }
    },
    "400": {
      "$ref": "#/components/responses/BadRequest"
    },
    "401": {
      "$ref": "#/components/responses/Unauthorized"
    }
  },
  "security": [
    {
      "Authorization": []
    }
  ],
  "x-speakeasy-group": "auth",
  "x-speakeasy-ignore": true,
  "x-speakeasy-name-override": "registerWithEmail"
}

Auto-generated from OpenAPI spec and TypeScript definitions

Last updated: