@mercurjs/docs 2.2.0-canary.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/content/blocks.mdx +209 -0
- package/content/learn/architecture.mdx +215 -0
- package/content/learn/attributes.mdx +89 -0
- package/content/learn/blocks.mdx +99 -0
- package/content/learn/commissions.mdx +175 -0
- package/content/learn/concepts.mdx +84 -0
- package/content/learn/installation.mdx +117 -0
- package/content/learn/introduction.mdx +71 -0
- package/content/learn/offers.mdx +78 -0
- package/content/learn/order-groups.mdx +114 -0
- package/content/learn/payouts.mdx +175 -0
- package/content/learn/product-requests.mdx +82 -0
- package/content/learn/products.mdx +79 -0
- package/content/learn/registry.mdx +155 -0
- package/content/learn/seller-members.mdx +62 -0
- package/content/learn/sellers.mdx +118 -0
- package/content/migration/from-1-x-to-2-0.mdx +152 -0
- package/content/migration/from-2-0-to-2-1.mdx +105 -0
- package/content/migration/overview.mdx +58 -0
- package/content/references/api/admin/commission-rates/batch-commission-rules.mdx +70 -0
- package/content/references/api/admin/commission-rates/create-commission-rate.mdx +95 -0
- package/content/references/api/admin/commission-rates/delete-commission-rate.mdx +40 -0
- package/content/references/api/admin/commission-rates/list-commission-rates.mdx +92 -0
- package/content/references/api/admin/commission-rates/retrieve-commission-rate.mdx +70 -0
- package/content/references/api/admin/commission-rates/update-commission-rate.mdx +84 -0
- package/content/references/api/admin/members/list-members.mdx +61 -0
- package/content/references/api/admin/offers/batch-create-offers.mdx +130 -0
- package/content/references/api/admin/offers/delete-offer.mdx +40 -0
- package/content/references/api/admin/offers/list-offers.mdx +106 -0
- package/content/references/api/admin/offers/retrieve-offer.mdx +82 -0
- package/content/references/api/admin/order-groups/list-order-groups.mdx +77 -0
- package/content/references/api/admin/order-groups/retrieve-order-group.mdx +56 -0
- package/content/references/api/admin/orders/get-order-commission-lines.mdx +65 -0
- package/content/references/api/admin/orders/get-order-order-group.mdx +56 -0
- package/content/references/api/admin/orders/list-orders.mdx +79 -0
- package/content/references/api/admin/payouts/list-payouts.mdx +75 -0
- package/content/references/api/admin/payouts/retrieve-payout.mdx +62 -0
- package/content/references/api/admin/product-attributes/create-attribute-value.mdx +76 -0
- package/content/references/api/admin/product-attributes/create-product-attribute.mdx +99 -0
- package/content/references/api/admin/product-attributes/delete-attribute-value.mdx +52 -0
- package/content/references/api/admin/product-attributes/delete-product-attribute.mdx +40 -0
- package/content/references/api/admin/product-attributes/list-product-attributes.mdx +91 -0
- package/content/references/api/admin/product-attributes/retrieve-product-attribute.mdx +81 -0
- package/content/references/api/admin/product-attributes/update-attribute-value.mdx +66 -0
- package/content/references/api/admin/product-attributes/update-product-attribute.mdx +76 -0
- package/content/references/api/admin/product-changes/cancel-product-change.mdx +68 -0
- package/content/references/api/admin/product-changes/confirm-product-change.mdx +47 -0
- package/content/references/api/admin/products/batch-product-attributes.mdx +96 -0
- package/content/references/api/admin/products/confirm-product.mdx +59 -0
- package/content/references/api/admin/products/create-product-variant.mdx +78 -0
- package/content/references/api/admin/products/create-product.mdx +169 -0
- package/content/references/api/admin/products/delete-product-variant.mdx +48 -0
- package/content/references/api/admin/products/delete-product.mdx +40 -0
- package/content/references/api/admin/products/list-product-variants.mdx +91 -0
- package/content/references/api/admin/products/list-products.mdx +109 -0
- package/content/references/api/admin/products/preview-product.mdx +78 -0
- package/content/references/api/admin/products/reject-product.mdx +59 -0
- package/content/references/api/admin/products/request-product-changes.mdx +59 -0
- package/content/references/api/admin/products/retrieve-product-variant.mdx +73 -0
- package/content/references/api/admin/products/retrieve-product.mdx +96 -0
- package/content/references/api/admin/products/set-product-sellers.mdx +47 -0
- package/content/references/api/admin/products/update-product-variant.mdx +89 -0
- package/content/references/api/admin/products/update-product.mdx +133 -0
- package/content/references/api/admin/sellers/add-seller-member.mdx +63 -0
- package/content/references/api/admin/sellers/approve-seller.mdx +54 -0
- package/content/references/api/admin/sellers/create-seller.mdx +100 -0
- package/content/references/api/admin/sellers/delete-member-invite.mdx +42 -0
- package/content/references/api/admin/sellers/delete-professional-details.mdx +52 -0
- package/content/references/api/admin/sellers/invite-seller-member.mdx +63 -0
- package/content/references/api/admin/sellers/list-member-invites.mdx +71 -0
- package/content/references/api/admin/sellers/list-seller-members.mdx +71 -0
- package/content/references/api/admin/sellers/list-seller-products.mdx +85 -0
- package/content/references/api/admin/sellers/list-sellers.mdx +96 -0
- package/content/references/api/admin/sellers/remove-seller-member.mdx +42 -0
- package/content/references/api/admin/sellers/resend-member-invite.mdx +55 -0
- package/content/references/api/admin/sellers/retrieve-seller.mdx +81 -0
- package/content/references/api/admin/sellers/suspend-seller.mdx +60 -0
- package/content/references/api/admin/sellers/terminate-seller.mdx +60 -0
- package/content/references/api/admin/sellers/unsuspend-seller.mdx +52 -0
- package/content/references/api/admin/sellers/unterminate-seller.mdx +52 -0
- package/content/references/api/admin/sellers/update-seller.mdx +83 -0
- package/content/references/api/admin/sellers/upsert-payment-details.mdx +88 -0
- package/content/references/api/admin/sellers/upsert-professional-details.mdx +78 -0
- package/content/references/api/admin/sellers/upsert-seller-address.mdx +91 -0
- package/content/references/api/admin.mdx +134 -0
- package/content/references/api/conventions.mdx +109 -0
- package/content/references/api/store/carts/add-line-item.mdx +115 -0
- package/content/references/api/store/carts/add-shipping-methods.mdx +84 -0
- package/content/references/api/store/carts/apply-promotions.mdx +83 -0
- package/content/references/api/store/carts/complete-cart.mdx +98 -0
- package/content/references/api/store/offers/list-offers.mdx +161 -0
- package/content/references/api/store/offers/retrieve-offer.mdx +112 -0
- package/content/references/api/store/order-groups/list-order-groups.mdx +105 -0
- package/content/references/api/store/order-groups/retrieve-order-group.mdx +78 -0
- package/content/references/api/store/product-attributes/list-product-attributes.mdx +134 -0
- package/content/references/api/store/product-attributes/retrieve-product-attribute.mdx +78 -0
- package/content/references/api/store/product-categories/list-product-categories.mdx +126 -0
- package/content/references/api/store/product-categories/retrieve-product-category.mdx +79 -0
- package/content/references/api/store/products/list-products.mdx +184 -0
- package/content/references/api/store/products/retrieve-product.mdx +107 -0
- package/content/references/api/store/search/search.mdx +136 -0
- package/content/references/api/store/sellers/list-sellers.mdx +105 -0
- package/content/references/api/store/sellers/retrieve-seller.mdx +62 -0
- package/content/references/api/store/shipping-options/list-shipping-options.mdx +74 -0
- package/content/references/api/store.mdx +67 -0
- package/content/references/api/vendor/members/accept-member-invite.mdx +65 -0
- package/content/references/api/vendor/members/retrieve-current-member.mdx +51 -0
- package/content/references/api/vendor/members/update-current-member.mdx +70 -0
- package/content/references/api/vendor/offers/batch-create-offers.mdx +123 -0
- package/content/references/api/vendor/offers/batch-offer-inventory-items.mdx +103 -0
- package/content/references/api/vendor/offers/create-offer.mdx +141 -0
- package/content/references/api/vendor/offers/delete-offer.mdx +51 -0
- package/content/references/api/vendor/offers/list-offers.mdx +125 -0
- package/content/references/api/vendor/offers/retrieve-offer.mdx +74 -0
- package/content/references/api/vendor/offers/update-offer.mdx +82 -0
- package/content/references/api/vendor/orders/cancel-fulfillment.mdx +63 -0
- package/content/references/api/vendor/orders/cancel-order.mdx +56 -0
- package/content/references/api/vendor/orders/complete-order.mdx +55 -0
- package/content/references/api/vendor/orders/create-fulfillment.mdx +76 -0
- package/content/references/api/vendor/orders/create-shipment.mdx +99 -0
- package/content/references/api/vendor/orders/get-order-commission-lines.mdx +66 -0
- package/content/references/api/vendor/orders/list-order-changes.mdx +75 -0
- package/content/references/api/vendor/orders/list-orders.mdx +103 -0
- package/content/references/api/vendor/orders/mark-fulfillment-delivered.mdx +62 -0
- package/content/references/api/vendor/orders/preview-order.mdx +65 -0
- package/content/references/api/vendor/orders/retrieve-order.mdx +84 -0
- package/content/references/api/vendor/payout-accounts/create-onboarding.mdx +68 -0
- package/content/references/api/vendor/payout-accounts/create-payout-account.mdx +59 -0
- package/content/references/api/vendor/payout-accounts/retrieve-payout-account-by-id.mdx +60 -0
- package/content/references/api/vendor/payout-accounts/retrieve-payout-account.mdx +77 -0
- package/content/references/api/vendor/payouts/list-payouts.mdx +90 -0
- package/content/references/api/vendor/payouts/retrieve-payout.mdx +63 -0
- package/content/references/api/vendor/product-attributes/list-product-attributes.mdx +135 -0
- package/content/references/api/vendor/product-attributes/retrieve-product-attribute.mdx +71 -0
- package/content/references/api/vendor/product-variants/list-variants.mdx +136 -0
- package/content/references/api/vendor/products/batch-product-attributes.mdx +104 -0
- package/content/references/api/vendor/products/cancel-product-change.mdx +62 -0
- package/content/references/api/vendor/products/create-product-variant.mdx +92 -0
- package/content/references/api/vendor/products/create-product.mdx +197 -0
- package/content/references/api/vendor/products/delete-product-variant.mdx +68 -0
- package/content/references/api/vendor/products/delete-product.mdx +62 -0
- package/content/references/api/vendor/products/list-product-variants.mdx +114 -0
- package/content/references/api/vendor/products/list-products.mdx +163 -0
- package/content/references/api/vendor/products/preview-product.mdx +61 -0
- package/content/references/api/vendor/products/retrieve-product-variant.mdx +76 -0
- package/content/references/api/vendor/products/retrieve-product.mdx +69 -0
- package/content/references/api/vendor/products/update-product-variant.mdx +104 -0
- package/content/references/api/vendor/products/update-product.mdx +148 -0
- package/content/references/api/vendor/sellers/create-seller.mdx +150 -0
- package/content/references/api/vendor/sellers/delete-professional-details.mdx +54 -0
- package/content/references/api/vendor/sellers/invite-seller-member.mdx +67 -0
- package/content/references/api/vendor/sellers/list-member-invites.mdx +82 -0
- package/content/references/api/vendor/sellers/list-seller-members.mdx +80 -0
- package/content/references/api/vendor/sellers/list-sellers.mdx +71 -0
- package/content/references/api/vendor/sellers/remove-seller-member.mdx +48 -0
- package/content/references/api/vendor/sellers/retrieve-current-seller-member.mdx +59 -0
- package/content/references/api/vendor/sellers/retrieve-current-seller.mdx +69 -0
- package/content/references/api/vendor/sellers/select-seller.mdx +44 -0
- package/content/references/api/vendor/sellers/update-current-seller.mdx +108 -0
- package/content/references/api/vendor/sellers/update-member-role.mdx +51 -0
- package/content/references/api/vendor/sellers/upsert-payment-details.mdx +74 -0
- package/content/references/api/vendor/sellers/upsert-professional-details.mdx +70 -0
- package/content/references/api/vendor/sellers/upsert-seller-address.mdx +81 -0
- package/content/references/api/vendor.mdx +150 -0
- package/content/references/configuration.mdx +155 -0
- package/content/references/modules/commission.mdx +106 -0
- package/content/references/modules/custom-fields.mdx +45 -0
- package/content/references/modules/media.mdx +55 -0
- package/content/references/modules/offer.mdx +64 -0
- package/content/references/modules/payout.mdx +121 -0
- package/content/references/modules/product-attribute.mdx +111 -0
- package/content/references/modules/product-edit.mdx +80 -0
- package/content/references/modules/search.mdx +112 -0
- package/content/references/modules/seller.mdx +175 -0
- package/content/references/overview.mdx +70 -0
- package/content/references/workflows/cart/add-seller-shipping-method-to-cart.mdx +44 -0
- package/content/references/workflows/cart/complete-cart-with-split-orders.mdx +36 -0
- package/content/references/workflows/cart/list-seller-shipping-options-for-cart.mdx +39 -0
- package/content/references/workflows/cart/update-cart-seller-promotions.mdx +42 -0
- package/content/references/workflows/commission/batch-commission-rules.mdx +45 -0
- package/content/references/workflows/commission/create-commission-rates.mdx +41 -0
- package/content/references/workflows/commission/delete-commission-rates.mdx +34 -0
- package/content/references/workflows/commission/refresh-order-commission-lines.mdx +30 -0
- package/content/references/workflows/commission/update-commission-rates.mdx +35 -0
- package/content/references/workflows/media/set-category-images.mdx +41 -0
- package/content/references/workflows/media/set-collection-images.mdx +41 -0
- package/content/references/workflows/member/accept-member-invite.mdx +33 -0
- package/content/references/workflows/member/add-seller-member.mdx +30 -0
- package/content/references/workflows/member/create-member-invites.mdx +34 -0
- package/content/references/workflows/member/delete-member-invite.mdx +24 -0
- package/content/references/workflows/member/remove-seller-member.mdx +28 -0
- package/content/references/workflows/member/resend-member-invite.mdx +28 -0
- package/content/references/workflows/member/update-member-role.mdx +28 -0
- package/content/references/workflows/member/update-member.mdx +35 -0
- package/content/references/workflows/offer/batch-offer-inventory-items.mdx +58 -0
- package/content/references/workflows/offer/create-offers.mdx +63 -0
- package/content/references/workflows/offer/delete-offers.mdx +35 -0
- package/content/references/workflows/offer/update-offers.mdx +51 -0
- package/content/references/workflows/order/cancel-order-fulfillment.mdx +34 -0
- package/content/references/workflows/order/confirm-claim-request.mdx +25 -0
- package/content/references/workflows/order/confirm-exchange-request.mdx +25 -0
- package/content/references/workflows/order/confirm-order-edit-request.mdx +25 -0
- package/content/references/workflows/order/confirm-return-receive.mdx +25 -0
- package/content/references/workflows/order/create-order-fulfillment.mdx +45 -0
- package/content/references/workflows/order-group/get-order-group-detail.mdx +29 -0
- package/content/references/workflows/order-group/get-order-groups-list.mdx +36 -0
- package/content/references/workflows/overview.mdx +72 -0
- package/content/references/workflows/payout/create-onboarding.mdx +36 -0
- package/content/references/workflows/payout/create-payout-account.mdx +33 -0
- package/content/references/workflows/payout/create-payout.mdx +30 -0
- package/content/references/workflows/payout/process-payout-for-webhook.mdx +32 -0
- package/content/references/workflows/product/confirm-products.mdx +46 -0
- package/content/references/workflows/product/create-products.mdx +63 -0
- package/content/references/workflows/product/link-sellers-to-product-category.mdx +40 -0
- package/content/references/workflows/product/link-sellers-to-product.mdx +40 -0
- package/content/references/workflows/product/reject-product.mdx +46 -0
- package/content/references/workflows/product/request-product-change.mdx +46 -0
- package/content/references/workflows/product-attribute/add-product-attributes-to-product.mdx +49 -0
- package/content/references/workflows/product-attribute/create-and-link-product-attributes-to-product.mdx +46 -0
- package/content/references/workflows/product-attribute/create-product-attribute-values.mdx +43 -0
- package/content/references/workflows/product-attribute/create-product-attributes.mdx +56 -0
- package/content/references/workflows/product-attribute/delete-product-attribute-values.mdx +30 -0
- package/content/references/workflows/product-attribute/delete-product-attributes.mdx +30 -0
- package/content/references/workflows/product-attribute/remove-product-attributes-from-product.mdx +29 -0
- package/content/references/workflows/product-attribute/update-product-attribute-values.mdx +44 -0
- package/content/references/workflows/product-attribute/update-product-attributes-on-product.mdx +41 -0
- package/content/references/workflows/product-attribute/update-product-attributes.mdx +48 -0
- package/content/references/workflows/product-attribute/upsert-product-attribute-values.mdx +43 -0
- package/content/references/workflows/product-edit/auto-confirm-product-change.mdx +39 -0
- package/content/references/workflows/product-edit/cancel-product-change.mdx +49 -0
- package/content/references/workflows/product-edit/confirm-product-change.mdx +57 -0
- package/content/references/workflows/product-edit/create-product-change.mdx +72 -0
- package/content/references/workflows/product-edit/reject-product-change.mdx +54 -0
- package/content/references/workflows/product-edit/stage-product-change.mdx +75 -0
- package/content/references/workflows/seller/approve-seller.mdx +34 -0
- package/content/references/workflows/seller/create-seller-account.mdx +59 -0
- package/content/references/workflows/seller/create-seller-defaults.mdx +22 -0
- package/content/references/workflows/seller/create-sellers.mdx +65 -0
- package/content/references/workflows/seller/delete-seller-professional-details.mdx +37 -0
- package/content/references/workflows/seller/delete-sellers.mdx +24 -0
- package/content/references/workflows/seller/invite-seller.mdx +28 -0
- package/content/references/workflows/seller/suspend-seller.mdx +35 -0
- package/content/references/workflows/seller/terminate-seller.mdx +35 -0
- package/content/references/workflows/seller/unsuspend-seller.mdx +34 -0
- package/content/references/workflows/seller/unterminate-seller.mdx +34 -0
- package/content/references/workflows/seller/update-seller-address.mdx +55 -0
- package/content/references/workflows/seller/update-seller-payment-details.mdx +52 -0
- package/content/references/workflows/seller/update-seller-professional-details.mdx +48 -0
- package/content/references/workflows/seller/update-sellers.mdx +57 -0
- package/content/resources/ai/llms.mdx +74 -0
- package/content/resources/ai/mcp.mdx +152 -0
- package/content/resources/ai/overview.mdx +97 -0
- package/content/resources/customization/custom-fields.mdx +182 -0
- package/content/resources/customization/extend-a-workflow.mdx +39 -0
- package/content/resources/customization/extending-panels.mdx +309 -0
- package/content/resources/deployment/medusa-cloud.mdx +167 -0
- package/content/resources/integrations/notifications.mdx +39 -0
- package/content/resources/integrations/search.mdx +122 -0
- package/content/resources/integrations/stripe-connect.mdx +395 -0
- package/content/resources/tutorials/add-a-block.mdx +74 -0
- package/content/resources/tutorials/attributes-and-variant-axes.mdx +111 -0
- package/content/resources/tutorials/build-a-block.mdx +134 -0
- package/content/resources/tutorials/configure-commissions.mdx +127 -0
- package/content/resources/tutorials/custom-api-route.mdx +142 -0
- package/content/resources/tutorials/custom-panel-page.mdx +78 -0
- package/content/resources/tutorials/first-marketplace.mdx +45 -0
- package/content/resources/tutorials/handle-product-requests.mdx +80 -0
- package/content/resources/tutorials/import-export-products.mdx +96 -0
- package/content/resources/tutorials/master-products-and-offers.mdx +89 -0
- package/content/resources/tutorials/recompose-a-page.mdx +129 -0
- package/content/resources/tutorials/replace-panel-components.mdx +116 -0
- package/content/resources/tutorials/seller-payouts-stripe.mdx +89 -0
- package/content/telemetry.mdx +67 -0
- package/content/tools/api-client.mdx +155 -0
- package/content/tools/cli.mdx +196 -0
- package/content/tools/dashboard-sdk.mdx +35 -0
- package/content/user-guide/admin/overview.mdx +23 -0
- package/content/user-guide/admin/stores.mdx +193 -0
- package/content/user-guide/vendor/overview.mdx +23 -0
- package/content/user-guide/vendor/stores.mdx +209 -0
- package/llms.txt +307 -0
- package/package.json +33 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Approve Seller"
|
|
3
|
+
api: "POST /admin/sellers/{id}/approve"
|
|
4
|
+
description: "Approve a pending seller."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Moves the seller from `pending_approval` to `open` and sets `approved_at`.
|
|
8
|
+
|
|
9
|
+
## Path parameters
|
|
10
|
+
|
|
11
|
+
<ParamField path="id" type="string" required>The seller's ID.</ParamField>
|
|
12
|
+
|
|
13
|
+
## Query parameters
|
|
14
|
+
|
|
15
|
+
<ParamField query="fields" type="string">Comma-separated list of fields to include, prefix with `+`/`-` to add or remove from defaults.</ParamField>
|
|
16
|
+
|
|
17
|
+
## Response
|
|
18
|
+
|
|
19
|
+
<ResponseField name="seller" type="object">
|
|
20
|
+
<Expandable title="properties">
|
|
21
|
+
<ResponseField name="id" type="string">The seller's ID.</ResponseField>
|
|
22
|
+
<ResponseField name="status" type="string">The seller's status, `open` after approval.</ResponseField>
|
|
23
|
+
<ResponseField name="approved_at" type="string">When the seller was approved.</ResponseField>
|
|
24
|
+
<ResponseField name="updated_at" type="string">Last update timestamp.</ResponseField>
|
|
25
|
+
</Expandable>
|
|
26
|
+
</ResponseField>
|
|
27
|
+
|
|
28
|
+
<RequestExample>
|
|
29
|
+
```bash cURL
|
|
30
|
+
curl -X POST 'http://localhost:9000/admin/sellers/sel_01HXYZABCDEF/approve' \
|
|
31
|
+
-H 'Authorization: Bearer <token>'
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
```ts JS Client
|
|
35
|
+
const { seller } = await client.admin.sellers.$id.approve.mutate({
|
|
36
|
+
$id: "sel_01HXYZABCDEF",
|
|
37
|
+
})
|
|
38
|
+
```
|
|
39
|
+
</RequestExample>
|
|
40
|
+
|
|
41
|
+
<ResponseExample>
|
|
42
|
+
```json 200
|
|
43
|
+
{
|
|
44
|
+
"seller": {
|
|
45
|
+
"id": "sel_01HXYZABCDEF",
|
|
46
|
+
"name": "Acme",
|
|
47
|
+
"handle": "acme",
|
|
48
|
+
"status": "open",
|
|
49
|
+
"approved_at": "2026-06-02T09:30:00.000Z",
|
|
50
|
+
"updated_at": "2026-06-02T09:30:00.000Z"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
</ResponseExample>
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Create Seller"
|
|
3
|
+
api: "POST /admin/sellers"
|
|
4
|
+
description: "Create a new seller account."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Creates a seller and its initial owner member.
|
|
8
|
+
|
|
9
|
+
<Note>
|
|
10
|
+
The `member.email` must belong to an existing or invited user; the seller is created with status `pending_approval` unless a `status` is provided.
|
|
11
|
+
</Note>
|
|
12
|
+
|
|
13
|
+
## Query parameters
|
|
14
|
+
|
|
15
|
+
<ParamField query="fields" type="string">Comma-separated list of fields to include, prefix with `+`/`-` to add or remove from defaults.</ParamField>
|
|
16
|
+
|
|
17
|
+
## Body parameters
|
|
18
|
+
|
|
19
|
+
<ParamField body="name" type="string" required>Display name of the seller.</ParamField>
|
|
20
|
+
<ParamField body="email" type="string" required>Contact email of the seller.</ParamField>
|
|
21
|
+
<ParamField body="currency_code" type="string" required>The seller's currency code.</ParamField>
|
|
22
|
+
<ParamField body="member" type="object" required>
|
|
23
|
+
The initial owner member of the seller.
|
|
24
|
+
<Expandable title="properties">
|
|
25
|
+
<ParamField body="email" type="string" required>Email of the owner member.</ParamField>
|
|
26
|
+
</Expandable>
|
|
27
|
+
</ParamField>
|
|
28
|
+
<ParamField body="handle" type="string">Unique URL-safe handle, generated from the name if omitted.</ParamField>
|
|
29
|
+
<ParamField body="phone" type="string">Contact phone number.</ParamField>
|
|
30
|
+
<ParamField body="description" type="string">Seller description.</ParamField>
|
|
31
|
+
<ParamField body="logo" type="string">URL of the seller's logo.</ParamField>
|
|
32
|
+
<ParamField body="banner" type="string">URL of the seller's banner image.</ParamField>
|
|
33
|
+
<ParamField body="website_url" type="string">The seller's website URL.</ParamField>
|
|
34
|
+
<ParamField body="external_id" type="string">ID of the seller in an external system.</ParamField>
|
|
35
|
+
<ParamField body="status" type="string" default="pending_approval">One of `open`, `pending_approval`, `suspended`, `terminated`.</ParamField>
|
|
36
|
+
<ParamField body="status_reason" type="string">Reason recorded with the status.</ParamField>
|
|
37
|
+
<ParamField body="is_premium" type="boolean">Whether the seller is marked as premium.</ParamField>
|
|
38
|
+
<ParamField body="closed_from" type="string">Start of a temporary store closure.</ParamField>
|
|
39
|
+
<ParamField body="closed_to" type="string">End of a temporary store closure.</ParamField>
|
|
40
|
+
<ParamField body="closure_note" type="string">Note shown while the store is closed.</ParamField>
|
|
41
|
+
<ParamField body="metadata" type="object">Custom key-value data.</ParamField>
|
|
42
|
+
<ParamField body="additional_data" type="object">Extra data passed to workflow hooks.</ParamField>
|
|
43
|
+
|
|
44
|
+
## Response
|
|
45
|
+
|
|
46
|
+
<ResponseField name="seller" type="object">
|
|
47
|
+
<Expandable title="properties">
|
|
48
|
+
<ResponseField name="id" type="string">The seller's ID.</ResponseField>
|
|
49
|
+
<ResponseField name="name" type="string">Display name of the seller.</ResponseField>
|
|
50
|
+
<ResponseField name="handle" type="string">Unique URL-safe handle.</ResponseField>
|
|
51
|
+
<ResponseField name="email" type="string">Contact email of the seller.</ResponseField>
|
|
52
|
+
<ResponseField name="currency_code" type="string">The seller's currency code.</ResponseField>
|
|
53
|
+
<ResponseField name="status" type="string">One of `open`, `pending_approval`, `suspended`, `terminated`.</ResponseField>
|
|
54
|
+
<ResponseField name="is_premium" type="boolean">Whether the seller is marked as premium.</ResponseField>
|
|
55
|
+
<ResponseField name="members" type="object[]">The seller's members.</ResponseField>
|
|
56
|
+
<ResponseField name="created_at" type="string">Creation timestamp.</ResponseField>
|
|
57
|
+
<ResponseField name="updated_at" type="string">Last update timestamp.</ResponseField>
|
|
58
|
+
</Expandable>
|
|
59
|
+
</ResponseField>
|
|
60
|
+
|
|
61
|
+
<RequestExample>
|
|
62
|
+
```bash cURL
|
|
63
|
+
curl -X POST 'http://localhost:9000/admin/sellers' \
|
|
64
|
+
-H 'Authorization: Bearer <token>' \
|
|
65
|
+
-H 'Content-Type: application/json' \
|
|
66
|
+
-d '{
|
|
67
|
+
"name": "Acme",
|
|
68
|
+
"email": "hello@acme.co",
|
|
69
|
+
"currency_code": "usd",
|
|
70
|
+
"member": { "email": "owner@acme.co" }
|
|
71
|
+
}'
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
```ts JS Client
|
|
75
|
+
const { seller } = await client.admin.sellers.mutate({
|
|
76
|
+
name: "Acme",
|
|
77
|
+
email: "hello@acme.co",
|
|
78
|
+
currency_code: "usd",
|
|
79
|
+
member: { email: "owner@acme.co" },
|
|
80
|
+
})
|
|
81
|
+
```
|
|
82
|
+
</RequestExample>
|
|
83
|
+
|
|
84
|
+
<ResponseExample>
|
|
85
|
+
```json 201
|
|
86
|
+
{
|
|
87
|
+
"seller": {
|
|
88
|
+
"id": "sel_01HXYZABCDEF",
|
|
89
|
+
"name": "Acme",
|
|
90
|
+
"handle": "acme",
|
|
91
|
+
"email": "hello@acme.co",
|
|
92
|
+
"currency_code": "usd",
|
|
93
|
+
"status": "pending_approval",
|
|
94
|
+
"is_premium": false,
|
|
95
|
+
"created_at": "2026-06-01T10:00:00.000Z",
|
|
96
|
+
"updated_at": "2026-06-01T10:00:00.000Z"
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
</ResponseExample>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Delete Member Invite"
|
|
3
|
+
api: "DELETE /admin/sellers/{id}/members/invites/{invite_id}"
|
|
4
|
+
description: "Delete a seller's member invite."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Deletes a pending member invite.
|
|
8
|
+
|
|
9
|
+
## Path parameters
|
|
10
|
+
|
|
11
|
+
<ParamField path="id" type="string" required>The seller's ID.</ParamField>
|
|
12
|
+
<ParamField path="invite_id" type="string" required>The invite's ID.</ParamField>
|
|
13
|
+
|
|
14
|
+
## Response
|
|
15
|
+
|
|
16
|
+
<ResponseField name="id" type="string">ID of the deleted invite.</ResponseField>
|
|
17
|
+
<ResponseField name="object" type="string">Always `member_invite`.</ResponseField>
|
|
18
|
+
<ResponseField name="deleted" type="boolean">Whether the invite was deleted.</ResponseField>
|
|
19
|
+
|
|
20
|
+
<RequestExample>
|
|
21
|
+
```bash cURL
|
|
22
|
+
curl -X DELETE 'http://localhost:9000/admin/sellers/sel_01HXYZABCDEF/members/invites/meminv_01HXYZINVAA' \
|
|
23
|
+
-H 'Authorization: Bearer <token>'
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
```ts JS Client
|
|
27
|
+
const result = await client.admin.sellers.$id.members.invites.$inviteId.delete({
|
|
28
|
+
$id: "sel_01HXYZABCDEF",
|
|
29
|
+
$inviteId: "meminv_01HXYZINVAA",
|
|
30
|
+
})
|
|
31
|
+
```
|
|
32
|
+
</RequestExample>
|
|
33
|
+
|
|
34
|
+
<ResponseExample>
|
|
35
|
+
```json 200
|
|
36
|
+
{
|
|
37
|
+
"id": "meminv_01HXYZINVAA",
|
|
38
|
+
"object": "member_invite",
|
|
39
|
+
"deleted": true
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
</ResponseExample>
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Delete Professional Details"
|
|
3
|
+
api: "DELETE /admin/sellers/{id}/professional-details"
|
|
4
|
+
description: "Delete a seller's professional details."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Removes the seller's professional details and returns the updated seller.
|
|
8
|
+
|
|
9
|
+
## Path parameters
|
|
10
|
+
|
|
11
|
+
<ParamField path="id" type="string" required>The seller's ID.</ParamField>
|
|
12
|
+
|
|
13
|
+
## Query parameters
|
|
14
|
+
|
|
15
|
+
<ParamField query="fields" type="string">Comma-separated list of fields to include, prefix with `+`/`-` to add or remove from defaults.</ParamField>
|
|
16
|
+
|
|
17
|
+
## Response
|
|
18
|
+
|
|
19
|
+
<ResponseField name="seller" type="object">
|
|
20
|
+
<Expandable title="properties">
|
|
21
|
+
<ResponseField name="id" type="string">The seller's ID.</ResponseField>
|
|
22
|
+
<ResponseField name="professional_details" type="object">The seller's professional details, `null` after deletion.</ResponseField>
|
|
23
|
+
<ResponseField name="updated_at" type="string">Last update timestamp.</ResponseField>
|
|
24
|
+
</Expandable>
|
|
25
|
+
</ResponseField>
|
|
26
|
+
|
|
27
|
+
<RequestExample>
|
|
28
|
+
```bash cURL
|
|
29
|
+
curl -X DELETE 'http://localhost:9000/admin/sellers/sel_01HXYZABCDEF/professional-details' \
|
|
30
|
+
-H 'Authorization: Bearer <token>'
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
```ts JS Client
|
|
34
|
+
const { seller } = await client.admin.sellers.$id.professionalDetails.delete({
|
|
35
|
+
$id: "sel_01HXYZABCDEF",
|
|
36
|
+
})
|
|
37
|
+
```
|
|
38
|
+
</RequestExample>
|
|
39
|
+
|
|
40
|
+
<ResponseExample>
|
|
41
|
+
```json 200
|
|
42
|
+
{
|
|
43
|
+
"seller": {
|
|
44
|
+
"id": "sel_01HXYZABCDEF",
|
|
45
|
+
"name": "Acme",
|
|
46
|
+
"status": "open",
|
|
47
|
+
"professional_details": null,
|
|
48
|
+
"updated_at": "2026-06-12T12:00:00.000Z"
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
```
|
|
52
|
+
</ResponseExample>
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Invite Seller Member"
|
|
3
|
+
api: "POST /admin/sellers/{id}/members/invite"
|
|
4
|
+
description: "Invite a new member to a seller's team by email."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Creates a member invite for the given email and role.
|
|
8
|
+
|
|
9
|
+
## Path parameters
|
|
10
|
+
|
|
11
|
+
<ParamField path="id" type="string" required>The seller's ID.</ParamField>
|
|
12
|
+
|
|
13
|
+
## Body parameters
|
|
14
|
+
|
|
15
|
+
<ParamField body="email" type="string" required>Email address to invite.</ParamField>
|
|
16
|
+
<ParamField body="role_id" type="string" required>ID of the role assigned once the invite is accepted.</ParamField>
|
|
17
|
+
|
|
18
|
+
## Response
|
|
19
|
+
|
|
20
|
+
<ResponseField name="member_invite" type="object">
|
|
21
|
+
<Expandable title="properties">
|
|
22
|
+
<ResponseField name="id" type="string">The invite's ID.</ResponseField>
|
|
23
|
+
<ResponseField name="email" type="string">Invited email address.</ResponseField>
|
|
24
|
+
<ResponseField name="role_id" type="string">Role assigned on acceptance.</ResponseField>
|
|
25
|
+
<ResponseField name="accepted" type="boolean">Whether the invite was accepted.</ResponseField>
|
|
26
|
+
<ResponseField name="token" type="string">Token used to accept the invite.</ResponseField>
|
|
27
|
+
<ResponseField name="expires_at" type="string">When the invite expires.</ResponseField>
|
|
28
|
+
<ResponseField name="created_at" type="string">Creation timestamp.</ResponseField>
|
|
29
|
+
</Expandable>
|
|
30
|
+
</ResponseField>
|
|
31
|
+
|
|
32
|
+
<RequestExample>
|
|
33
|
+
```bash cURL
|
|
34
|
+
curl -X POST 'http://localhost:9000/admin/sellers/sel_01HXYZABCDEF/members/invite' \
|
|
35
|
+
-H 'Authorization: Bearer <token>' \
|
|
36
|
+
-H 'Content-Type: application/json' \
|
|
37
|
+
-d '{"email": "new.member@acme.co", "role_id": "role_01HXYZROLEAA"}'
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
```ts JS Client
|
|
41
|
+
const { member_invite } = await client.admin.sellers.$id.members.invite.mutate({
|
|
42
|
+
$id: "sel_01HXYZABCDEF",
|
|
43
|
+
email: "new.member@acme.co",
|
|
44
|
+
role_id: "role_01HXYZROLEAA",
|
|
45
|
+
})
|
|
46
|
+
```
|
|
47
|
+
</RequestExample>
|
|
48
|
+
|
|
49
|
+
<ResponseExample>
|
|
50
|
+
```json 201
|
|
51
|
+
{
|
|
52
|
+
"member_invite": {
|
|
53
|
+
"id": "meminv_01HXYZINVAA",
|
|
54
|
+
"email": "new.member@acme.co",
|
|
55
|
+
"role_id": "role_01HXYZROLEAA",
|
|
56
|
+
"accepted": false,
|
|
57
|
+
"token": "inv_token_abc123",
|
|
58
|
+
"expires_at": "2026-06-22T09:00:00.000Z",
|
|
59
|
+
"created_at": "2026-06-15T09:00:00.000Z"
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
</ResponseExample>
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "List Member Invites"
|
|
3
|
+
api: "GET /admin/sellers/{id}/members/invites"
|
|
4
|
+
description: "Retrieve a paginated list of a seller's member invites."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Returns all member invites created for the seller.
|
|
8
|
+
|
|
9
|
+
## Path parameters
|
|
10
|
+
|
|
11
|
+
<ParamField path="id" type="string" required>The seller's ID.</ParamField>
|
|
12
|
+
|
|
13
|
+
## Query parameters
|
|
14
|
+
|
|
15
|
+
<ParamField query="limit" type="number" default="50">Maximum number of records to return.</ParamField>
|
|
16
|
+
<ParamField query="offset" type="number" default="0">Number of records to skip.</ParamField>
|
|
17
|
+
<ParamField query="order" type="string">Field to sort by, prefix with `-` for descending order.</ParamField>
|
|
18
|
+
<ParamField query="fields" type="string">Comma-separated list of fields to include, prefix with `+`/`-` to add or remove from defaults.</ParamField>
|
|
19
|
+
|
|
20
|
+
## Response
|
|
21
|
+
|
|
22
|
+
<ResponseField name="member_invites" type="object[]">
|
|
23
|
+
<Expandable title="properties">
|
|
24
|
+
<ResponseField name="id" type="string">The invite's ID.</ResponseField>
|
|
25
|
+
<ResponseField name="email" type="string">Invited email address.</ResponseField>
|
|
26
|
+
<ResponseField name="role_id" type="string">Role assigned on acceptance.</ResponseField>
|
|
27
|
+
<ResponseField name="accepted" type="boolean">Whether the invite was accepted.</ResponseField>
|
|
28
|
+
<ResponseField name="token" type="string">Token used to accept the invite.</ResponseField>
|
|
29
|
+
<ResponseField name="expires_at" type="string">When the invite expires.</ResponseField>
|
|
30
|
+
<ResponseField name="created_at" type="string">Creation timestamp.</ResponseField>
|
|
31
|
+
<ResponseField name="updated_at" type="string">Last update timestamp.</ResponseField>
|
|
32
|
+
</Expandable>
|
|
33
|
+
</ResponseField>
|
|
34
|
+
<ResponseField name="count" type="number">Total number of invites.</ResponseField>
|
|
35
|
+
<ResponseField name="offset" type="number">Number of records skipped.</ResponseField>
|
|
36
|
+
<ResponseField name="limit" type="number">Number of records returned.</ResponseField>
|
|
37
|
+
|
|
38
|
+
<RequestExample>
|
|
39
|
+
```bash cURL
|
|
40
|
+
curl 'http://localhost:9000/admin/sellers/sel_01HXYZABCDEF/members/invites' \
|
|
41
|
+
-H 'Authorization: Bearer <token>'
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
```ts JS Client
|
|
45
|
+
const { member_invites } = await client.admin.sellers.$id.members.invites.query({
|
|
46
|
+
$id: "sel_01HXYZABCDEF",
|
|
47
|
+
})
|
|
48
|
+
```
|
|
49
|
+
</RequestExample>
|
|
50
|
+
|
|
51
|
+
<ResponseExample>
|
|
52
|
+
```json 200
|
|
53
|
+
{
|
|
54
|
+
"member_invites": [
|
|
55
|
+
{
|
|
56
|
+
"id": "meminv_01HXYZINVAA",
|
|
57
|
+
"email": "new.member@acme.co",
|
|
58
|
+
"role_id": "role_01HXYZROLEAA",
|
|
59
|
+
"accepted": false,
|
|
60
|
+
"token": "inv_token_abc123",
|
|
61
|
+
"expires_at": "2026-06-22T09:00:00.000Z",
|
|
62
|
+
"created_at": "2026-06-15T09:00:00.000Z",
|
|
63
|
+
"updated_at": "2026-06-15T09:00:00.000Z"
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
"count": 1,
|
|
67
|
+
"offset": 0,
|
|
68
|
+
"limit": 50
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
</ResponseExample>
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "List Seller Members"
|
|
3
|
+
api: "GET /admin/sellers/{id}/members"
|
|
4
|
+
description: "Retrieve a paginated list of a seller's members."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Returns the members of the seller's team, including their user record and role.
|
|
8
|
+
|
|
9
|
+
## Path parameters
|
|
10
|
+
|
|
11
|
+
<ParamField path="id" type="string" required>The seller's ID.</ParamField>
|
|
12
|
+
|
|
13
|
+
## Query parameters
|
|
14
|
+
|
|
15
|
+
<ParamField query="limit" type="number" default="50">Maximum number of records to return.</ParamField>
|
|
16
|
+
<ParamField query="offset" type="number" default="0">Number of records to skip.</ParamField>
|
|
17
|
+
<ParamField query="order" type="string">Field to sort by, prefix with `-` for descending order.</ParamField>
|
|
18
|
+
<ParamField query="fields" type="string">Comma-separated list of fields to include, prefix with `+`/`-` to add or remove from defaults.</ParamField>
|
|
19
|
+
|
|
20
|
+
## Response
|
|
21
|
+
|
|
22
|
+
<ResponseField name="seller_members" type="object[]">
|
|
23
|
+
<Expandable title="properties">
|
|
24
|
+
<ResponseField name="id" type="string">The seller member's ID.</ResponseField>
|
|
25
|
+
<ResponseField name="is_owner" type="boolean">Whether this member owns the seller account.</ResponseField>
|
|
26
|
+
<ResponseField name="member" type="object">The underlying member record, including its email.</ResponseField>
|
|
27
|
+
<ResponseField name="rbac_role" type="object">The role assigned to the member.</ResponseField>
|
|
28
|
+
<ResponseField name="created_at" type="string">Creation timestamp.</ResponseField>
|
|
29
|
+
</Expandable>
|
|
30
|
+
</ResponseField>
|
|
31
|
+
<ResponseField name="count" type="number">Total number of seller members.</ResponseField>
|
|
32
|
+
<ResponseField name="offset" type="number">Number of records skipped.</ResponseField>
|
|
33
|
+
<ResponseField name="limit" type="number">Number of records returned.</ResponseField>
|
|
34
|
+
|
|
35
|
+
<RequestExample>
|
|
36
|
+
```bash cURL
|
|
37
|
+
curl 'http://localhost:9000/admin/sellers/sel_01HXYZABCDEF/members' \
|
|
38
|
+
-H 'Authorization: Bearer <token>'
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
```ts JS Client
|
|
42
|
+
const { seller_members } = await client.admin.sellers.$id.members.query({
|
|
43
|
+
$id: "sel_01HXYZABCDEF",
|
|
44
|
+
})
|
|
45
|
+
```
|
|
46
|
+
</RequestExample>
|
|
47
|
+
|
|
48
|
+
<ResponseExample>
|
|
49
|
+
```json 200
|
|
50
|
+
{
|
|
51
|
+
"seller_members": [
|
|
52
|
+
{
|
|
53
|
+
"id": "selmem_01HXYZSMAA",
|
|
54
|
+
"is_owner": true,
|
|
55
|
+
"member": {
|
|
56
|
+
"id": "mem_01HXYZMEMAA",
|
|
57
|
+
"email": "owner@acme.co"
|
|
58
|
+
},
|
|
59
|
+
"rbac_role": {
|
|
60
|
+
"id": "role_01HXYZROLEAA",
|
|
61
|
+
"name": "Owner"
|
|
62
|
+
},
|
|
63
|
+
"created_at": "2026-06-01T10:00:00.000Z"
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
"count": 1,
|
|
67
|
+
"offset": 0,
|
|
68
|
+
"limit": 50
|
|
69
|
+
}
|
|
70
|
+
```
|
|
71
|
+
</ResponseExample>
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "List Seller Products"
|
|
3
|
+
api: "GET /admin/sellers/{id}/products"
|
|
4
|
+
description: "Retrieve a paginated list of a seller's products."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Returns the products owned by the seller.
|
|
8
|
+
|
|
9
|
+
## Path parameters
|
|
10
|
+
|
|
11
|
+
<ParamField path="id" type="string" required>The seller's ID.</ParamField>
|
|
12
|
+
|
|
13
|
+
## Query parameters
|
|
14
|
+
|
|
15
|
+
<ParamField query="limit" type="number" default="50">Maximum number of records to return.</ParamField>
|
|
16
|
+
<ParamField query="offset" type="number" default="0">Number of records to skip.</ParamField>
|
|
17
|
+
<ParamField query="order" type="string">Field to sort by, prefix with `-` for descending order.</ParamField>
|
|
18
|
+
<ParamField query="fields" type="string">Comma-separated list of fields to include, prefix with `+`/`-` to add or remove from defaults.</ParamField>
|
|
19
|
+
<ParamField query="q" type="string">Search term matched against product fields.</ParamField>
|
|
20
|
+
<ParamField query="id" type="string | string[]">Filter by product ID(s).</ParamField>
|
|
21
|
+
<ParamField query="status" type="string | string[]">Filter by product status.</ParamField>
|
|
22
|
+
<ParamField query="collection_id" type="string | string[]">Filter by collection ID(s).</ParamField>
|
|
23
|
+
<ParamField query="sales_channel_id" type="string | string[]">Filter by sales channel ID(s).</ParamField>
|
|
24
|
+
<ParamField query="type_id" type="string | string[]">Filter by product type ID(s).</ParamField>
|
|
25
|
+
<ParamField query="tag_id" type="string | string[]">Filter by product tag ID(s).</ParamField>
|
|
26
|
+
<ParamField query="created_at" type="object">Filter by creation date with operators like `$gte`, `$lte`.</ParamField>
|
|
27
|
+
<ParamField query="updated_at" type="object">Filter by update date with operators like `$gte`, `$lte`.</ParamField>
|
|
28
|
+
|
|
29
|
+
## Response
|
|
30
|
+
|
|
31
|
+
<ResponseField name="products" type="object[]">
|
|
32
|
+
<Expandable title="properties">
|
|
33
|
+
<ResponseField name="id" type="string">The product's ID.</ResponseField>
|
|
34
|
+
<ResponseField name="title" type="string">Product title.</ResponseField>
|
|
35
|
+
<ResponseField name="handle" type="string">Unique URL-safe handle.</ResponseField>
|
|
36
|
+
<ResponseField name="status" type="string">Product status, e.g. `draft` or `published`.</ResponseField>
|
|
37
|
+
<ResponseField name="thumbnail" type="string">URL of the product's thumbnail.</ResponseField>
|
|
38
|
+
<ResponseField name="collection" type="object">The product's collection.</ResponseField>
|
|
39
|
+
<ResponseField name="sales_channels" type="object[]">Sales channels the product is available in.</ResponseField>
|
|
40
|
+
<ResponseField name="variants" type="object[]">The product's variants (IDs only by default).</ResponseField>
|
|
41
|
+
<ResponseField name="created_at" type="string">Creation timestamp.</ResponseField>
|
|
42
|
+
<ResponseField name="updated_at" type="string">Last update timestamp.</ResponseField>
|
|
43
|
+
</Expandable>
|
|
44
|
+
</ResponseField>
|
|
45
|
+
<ResponseField name="count" type="number">Total number of the seller's products.</ResponseField>
|
|
46
|
+
<ResponseField name="offset" type="number">Number of records skipped.</ResponseField>
|
|
47
|
+
<ResponseField name="limit" type="number">Number of records returned.</ResponseField>
|
|
48
|
+
|
|
49
|
+
<RequestExample>
|
|
50
|
+
```bash cURL
|
|
51
|
+
curl 'http://localhost:9000/admin/sellers/sel_01HXYZABCDEF/products?limit=20' \
|
|
52
|
+
-H 'Authorization: Bearer <token>'
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
```ts JS Client
|
|
56
|
+
const { products, count } = await client.admin.sellers.$id.products.query({
|
|
57
|
+
$id: "sel_01HXYZABCDEF",
|
|
58
|
+
limit: 20,
|
|
59
|
+
})
|
|
60
|
+
```
|
|
61
|
+
</RequestExample>
|
|
62
|
+
|
|
63
|
+
<ResponseExample>
|
|
64
|
+
```json 200
|
|
65
|
+
{
|
|
66
|
+
"products": [
|
|
67
|
+
{
|
|
68
|
+
"id": "prod_01HXYZPRODAA",
|
|
69
|
+
"title": "Canvas Tote Bag",
|
|
70
|
+
"handle": "canvas-tote-bag",
|
|
71
|
+
"status": "published",
|
|
72
|
+
"thumbnail": "https://cdn.example.com/tote.jpg",
|
|
73
|
+
"collection": null,
|
|
74
|
+
"sales_channels": [],
|
|
75
|
+
"variants": [{ "id": "variant_01HXYZVARAA" }],
|
|
76
|
+
"created_at": "2026-06-03T10:00:00.000Z",
|
|
77
|
+
"updated_at": "2026-06-03T10:00:00.000Z"
|
|
78
|
+
}
|
|
79
|
+
],
|
|
80
|
+
"count": 1,
|
|
81
|
+
"offset": 0,
|
|
82
|
+
"limit": 20
|
|
83
|
+
}
|
|
84
|
+
```
|
|
85
|
+
</ResponseExample>
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "List Sellers"
|
|
3
|
+
api: "GET /admin/sellers"
|
|
4
|
+
description: "Retrieve a paginated list of sellers."
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Returns all sellers on the marketplace, with optional filtering by status, handle, email, and more.
|
|
8
|
+
|
|
9
|
+
## Query parameters
|
|
10
|
+
|
|
11
|
+
<ParamField query="limit" type="number" default="50">Maximum number of records to return.</ParamField>
|
|
12
|
+
<ParamField query="offset" type="number" default="0">Number of records to skip.</ParamField>
|
|
13
|
+
<ParamField query="order" type="string">Field to sort by, prefix with `-` for descending order.</ParamField>
|
|
14
|
+
<ParamField query="fields" type="string">Comma-separated list of fields to include, prefix with `+`/`-` to add or remove from defaults.</ParamField>
|
|
15
|
+
<ParamField query="q" type="string">Search term matched against seller fields.</ParamField>
|
|
16
|
+
<ParamField query="id" type="string | string[]">Filter by seller ID(s).</ParamField>
|
|
17
|
+
<ParamField query="name" type="string | string[]">Filter by seller name(s).</ParamField>
|
|
18
|
+
<ParamField query="handle" type="string">Filter by seller handle.</ParamField>
|
|
19
|
+
<ParamField query="email" type="string">Filter by seller email.</ParamField>
|
|
20
|
+
<ParamField query="status" type="string | string[]">Filter by status: `open`, `pending_approval`, `suspended`, or `terminated`.</ParamField>
|
|
21
|
+
<ParamField query="is_premium" type="boolean">Filter by premium flag.</ParamField>
|
|
22
|
+
<ParamField query="created_at" type="object">Filter by creation date with operators like `$gte`, `$lte`.</ParamField>
|
|
23
|
+
<ParamField query="updated_at" type="object">Filter by update date with operators like `$gte`, `$lte`.</ParamField>
|
|
24
|
+
|
|
25
|
+
## Response
|
|
26
|
+
|
|
27
|
+
<ResponseField name="sellers" type="object[]">
|
|
28
|
+
<Expandable title="properties">
|
|
29
|
+
<ResponseField name="id" type="string">The seller's ID.</ResponseField>
|
|
30
|
+
<ResponseField name="name" type="string">Display name of the seller.</ResponseField>
|
|
31
|
+
<ResponseField name="handle" type="string">Unique URL-safe handle.</ResponseField>
|
|
32
|
+
<ResponseField name="email" type="string">Contact email of the seller.</ResponseField>
|
|
33
|
+
<ResponseField name="phone" type="string">Contact phone number.</ResponseField>
|
|
34
|
+
<ResponseField name="description" type="string">Seller description.</ResponseField>
|
|
35
|
+
<ResponseField name="logo" type="string">URL of the seller's logo.</ResponseField>
|
|
36
|
+
<ResponseField name="banner" type="string">URL of the seller's banner image.</ResponseField>
|
|
37
|
+
<ResponseField name="website_url" type="string">The seller's website URL.</ResponseField>
|
|
38
|
+
<ResponseField name="external_id" type="string">ID of the seller in an external system.</ResponseField>
|
|
39
|
+
<ResponseField name="currency_code" type="string">The seller's currency code.</ResponseField>
|
|
40
|
+
<ResponseField name="status" type="string">One of `open`, `pending_approval`, `suspended`, `terminated`.</ResponseField>
|
|
41
|
+
<ResponseField name="status_reason" type="string">Reason recorded with the latest status change.</ResponseField>
|
|
42
|
+
<ResponseField name="approved_at" type="string">When the seller was approved.</ResponseField>
|
|
43
|
+
<ResponseField name="rejected_at" type="string">When the seller was rejected.</ResponseField>
|
|
44
|
+
<ResponseField name="is_premium" type="boolean">Whether the seller is marked as premium.</ResponseField>
|
|
45
|
+
<ResponseField name="closed_from" type="string">Start of a temporary store closure.</ResponseField>
|
|
46
|
+
<ResponseField name="closed_to" type="string">End of a temporary store closure.</ResponseField>
|
|
47
|
+
<ResponseField name="closure_note" type="string">Note shown while the store is closed.</ResponseField>
|
|
48
|
+
<ResponseField name="address" type="object">The seller's address.</ResponseField>
|
|
49
|
+
<ResponseField name="payment_details" type="object">The seller's bank payment details.</ResponseField>
|
|
50
|
+
<ResponseField name="professional_details" type="object">The seller's legal and tax details.</ResponseField>
|
|
51
|
+
<ResponseField name="payout_account" type="object">The seller's payout account with status and onboarding data.</ResponseField>
|
|
52
|
+
<ResponseField name="metadata" type="object">Custom key-value data.</ResponseField>
|
|
53
|
+
<ResponseField name="created_at" type="string">Creation timestamp.</ResponseField>
|
|
54
|
+
<ResponseField name="updated_at" type="string">Last update timestamp.</ResponseField>
|
|
55
|
+
</Expandable>
|
|
56
|
+
</ResponseField>
|
|
57
|
+
<ResponseField name="count" type="number">Total number of matching sellers.</ResponseField>
|
|
58
|
+
<ResponseField name="offset" type="number">Number of records skipped.</ResponseField>
|
|
59
|
+
<ResponseField name="limit" type="number">Number of records returned.</ResponseField>
|
|
60
|
+
|
|
61
|
+
<RequestExample>
|
|
62
|
+
```bash cURL
|
|
63
|
+
curl 'http://localhost:9000/admin/sellers?status=pending_approval&limit=20' \
|
|
64
|
+
-H 'Authorization: Bearer <token>'
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
```ts JS Client
|
|
68
|
+
const { sellers, count } = await client.admin.sellers.query({
|
|
69
|
+
status: "pending_approval",
|
|
70
|
+
limit: 20,
|
|
71
|
+
})
|
|
72
|
+
```
|
|
73
|
+
</RequestExample>
|
|
74
|
+
|
|
75
|
+
<ResponseExample>
|
|
76
|
+
```json 200
|
|
77
|
+
{
|
|
78
|
+
"sellers": [
|
|
79
|
+
{
|
|
80
|
+
"id": "sel_01HXYZABCDEF",
|
|
81
|
+
"name": "Acme",
|
|
82
|
+
"handle": "acme",
|
|
83
|
+
"email": "hello@acme.co",
|
|
84
|
+
"currency_code": "usd",
|
|
85
|
+
"status": "pending_approval",
|
|
86
|
+
"is_premium": false,
|
|
87
|
+
"created_at": "2026-06-01T10:00:00.000Z",
|
|
88
|
+
"updated_at": "2026-06-01T10:00:00.000Z"
|
|
89
|
+
}
|
|
90
|
+
],
|
|
91
|
+
"count": 1,
|
|
92
|
+
"offset": 0,
|
|
93
|
+
"limit": 20
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
</ResponseExample>
|