Send a Return Message
Add a customer message to the conversation thread of a return (RMA) request. The return must belong to the authenticated customer. The created message comes back flagged isAdmin: false.
Endpoint
POST /api/shop/return-messagesAuthentication
This endpoint requires an authenticated customer — send the storefront key and a customer Bearer token. See the Authentication page.
Request Headers
| Header | Required | Description |
|---|---|---|
Content-Type | Yes | application/json |
X-STOREFRONT-KEY | Yes | Your storefront API key |
Authorization | Yes | Bearer token (customer login required) |
Request Body
json
{
"return_id": 12,
"message": "Any update on my return?"
}Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
return_id | integer | Yes | Id of the return to add the message to. Must belong to the authenticated customer. |
message | string | Yes | The message text. |
File attachments
An optional file can be attached to the message by sending the request as multipart/form-data with a file field alongside the fields above.
Response Fields (201 Created)
| Field | Type | Description |
|---|---|---|
id | integer | Numeric message id. |
rmaId | integer | Id of the return the message belongs to. |
message | string | The message text. |
isAdmin | boolean | false — the message was sent by the customer. |
attachment | string | Stored attachment path, or null. |
attachmentUrl | string | Public URL of the attachment, or null. |
createdAt | string | ISO 8601 message timestamp. |
Status Codes
| Status | Meaning |
|---|---|
201 Created | Message added to the return conversation. |
400 Bad Request | message is missing. |
401 Unauthorized | Missing or invalid customer Bearer token. |
403 Forbidden | Missing or invalid storefront key. |
404 Not Found | The return does not exist or is not the customer's. |

