create-cart-address
Method: POST
Path: /carts/{id}/address
Tags: Carts
Summary
Update cart address
Description
Update billing and shipping address
Storefront SDK Usage
SDK Method: sdk.cart.updateCartAddress()
Example:
typescript
// For registered users with saved addresses
const { data, error } = await sdk.cart.updateCartAddress(
{ id: "01H9CART12345ABCDE" },
{
billing_address_id: "01H9ADDR12345BILL",
shipping_address_id: "01H9ADDR12345SHIP"
}
);
if (error) {
console.error("Failed to update cart address:", error.message);
} else {
console.log("Addresses updated:", data.message);
}
// For guest checkout with new addresses
const { data: guestData, error: guestError } = await sdk.cart.updateCartAddress(
{ id: "01H9CART12345ABCDE" },
{
billing_address: {
first_name: "John",
last_name: "Doe",
email: "john@example.com",
phone: "9876543210",
country_code: "+91",
address_line1: "123 Main Street",
address_line2: "Apt 4B",
city: "Mumbai",
state: "Maharashtra",
pincode: "400001",
country: "India",
landmark: "Near Station",
tax_identification_number: null,
business_name: null
},
shipping_address: {
first_name: "John",
last_name: "Doe",
email: "john@example.com",
phone: "9876543210",
country_code: "+91",
address_line1: "456 Oak Avenue",
address_line2: null,
city: "Pune",
state: "Maharashtra",
pincode: "411001",
country: "India",
landmark: "Near Mall",
tax_identification_number: null,
business_name: null
}
}
);TypeScript Definition
typescript
"create-cart-address": {
parameters: {
query?: never;
header?: never;
path: {
/** @description Cart ID */
id: string;
};
cookie?: never;
};
/** @description Update billing and shipping address during checkout */
requestBody: {
content: {
"application/json": {
billing_address_id: string;
shipping_address_id: string;
} | {
billing_address: components["schemas"]["CustomerAddress"];
shipping_address: components["schemas"]["CustomerAddress"];
};
};
};
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
/** @example Address updated successfully */
message: string;
success: boolean;
content: {
cart: components["schemas"]["Cart"];
};
};
};
};
400: components["responses"]["BadRequest"];
401: components["responses"]["Unauthorized"];
404: components["responses"]["NotFound"];
};
};Component References
| Reference | Resolves To |
|---|---|
components["schemas"]["CustomerAddress"] | CustomerAddress |
components["schemas"]["Cart"] | Cart |
components["responses"]["BadRequest"] | BadRequest |
components["responses"]["Unauthorized"] | Unauthorized |
components["responses"]["NotFound"] | NotFound |
Request Body
Update billing and shipping address during checkout
Content Types: application/json
Responses
200
OK
400
Bad request
401
Not authorized for given operation on the Resource
404
Requested resource not found
OpenAPI Definition
json
{
"tags": [
"Carts"
],
"operationId": "create-cart-address",
"summary": "Update cart address",
"description": "Update billing and shipping address",
"externalDocs": {
"url": "https://llm-docs.commercengine.io/storefront/operations/create-cart-address",
"description": "API reference for the create-cart-address operation"
},
"requestBody": {
"description": "Update billing and shipping address during checkout",
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"oneOf": [
{
"title": "Registered User",
"description": "For registered users where address is previously added",
"required": [
"billing_address_id",
"shipping_address_id"
],
"properties": {
"billing_address_id": {
"type": "string"
},
"shipping_address_id": {
"type": "string"
}
}
},
{
"title": "Guest User",
"description": "For guest checkout where address is not saved",
"required": [
"billing_address",
"shipping_address"
],
"properties": {
"billing_address": {
"$ref": "#/components/schemas/CustomerAddress"
},
"shipping_address": {
"$ref": "#/components/schemas/CustomerAddress"
}
}
}
]
}
}
}
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"message",
"success",
"content"
],
"properties": {
"message": {
"type": "string",
"examples": [
"Address updated successfully"
]
},
"success": {
"type": "boolean"
},
"content": {
"properties": {
"cart": {
"$ref": "#/components/schemas/Cart"
}
},
"required": [
"cart"
],
"type": "object"
}
}
}
}
}
},
"400": {
"$ref": "#/components/responses/BadRequest"
},
"401": {
"$ref": "#/components/responses/Unauthorized"
},
"404": {
"$ref": "#/components/responses/NotFound"
}
},
"security": [
{
"Authorization": []
}
],
"x-speakeasy-group": "carts",
"x-speakeasy-ignore": false,
"x-speakeasy-name-override": "createCartAddress"
}Auto-generated from OpenAPI spec and TypeScript definitions