# Update listing

URL: https://docs.hanzo.ai/docs/openapi/commerce/patch-commerce-store-by-storeid-listing-by-key

> Requires the key to already be present — an absent one is 404 — and answers the store's listing map at 200.

`PATCH /v1/commerce/store/{storeid}/listing/{key}`

> [Commerce →](https://docs.hanzo.ai/docs/openapi/commerce) · [All API references →](https://docs.hanzo.ai/docs/openapi) · [Get started →](https://docs.hanzo.ai/docs/guides)

|               |                                                                  |
| ------------- | ---------------------------------------------------------------- |
| **Address**   | `https://api.hanzo.ai/v1/commerce/store/{storeid}/listing/{key}` |
| **Method**    | `PATCH`                                                          |
| **Operation** | `patch_commerce_store_by_storeid_listing_by_key`                 |
| **Auth**      | `Authorization: Bearer $HANZO_API_KEY`                           |

Requires the key to already be present — an absent one is 404 — and answers the store's listing map at 200. Read the behaviour before relying on it: the decoded body is applied to a COPY taken out of the map and is never assigned back, so the stored listing is unchanged and the map returned is exactly the map that was already there. An actual edit to an existing listing has to go through the upsert, which does write its result back into the store. A body that fails to decode is still 400. Admin-gated and namespaced to the caller's org.

## Request

2 fields.

| Field     | In   | Type   | Required | Description |
| --------- | ---- | ------ | -------- | ----------- |
| `storeid` | path | string | yes      |             |
| `key`     | path | string | yes      |             |

## Response

The document declares no response body for this operation. It answers `200` on success and the platform error shape on failure — see [Errors](https://docs.hanzo.ai/docs/errors).

## Examples

**CLI**

```bash
hanzo commerce store listing update <storeid> <key>
```

**SDK**

**.ts**

```ts
import { Configuration, CommerceApi } from 'hanzoai';

const api = new CommerceApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.patchCommerceStoreByStoreidListingByKey({ storeid: 'storeid', key: 'key' });
```

**.py**

```python
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import CommerceApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = CommerceApi(client).patch_commerce_store_by_storeid_listing_by_key(storeid='storeid', key='key')
```

**.go**

```go
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.CommerceAPI.PatchCommerceStoreByStoreidListingByKey(context.Background()).Execute()
if err != nil {
	return err
}
```

**.rs**

```rust
use hanzo_client::apis::{configuration::Configuration, commerce_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = commerce_api::patch_commerce_store_by_storeid_listing_by_key(&cfg, Default::default()).await?;
```

**.java**

```java
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.CommerceApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new CommerceApi(client).patchCommerceStoreByStoreidListingByKey();
```

**HTTP**

```bash
curl -X PATCH https://api.hanzo.ai/v1/commerce/store/<storeid>/listing/<key> \
  -H "Authorization: Bearer $HANZO_API_KEY"
```

**MCP**

MCP reaches **commerce** through the `commerce` tool, which names its 5 operations with its own verbs — this one among them, under a name only MCP declares. `describe` explains any of them:

```bash
curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "describe",
         "arguments": {
           "op": "get_commerce_health"
         }
       }
     }'
```

---

[Commerce API](https://docs.hanzo.ai/docs/openapi/commerce) · [All Hanzo APIs](https://docs.hanzo.ai/docs/openapi) · [Interactive reference](https://docs.hanzo.ai/docs/openapi/reference)
