> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # BulkCreateSuppliers # Package: suppliersHub # Namespace: MarketplaceSupplier # Method link: https://dev.wix.com/docs/api-reference/business-solutions/suppliers-hub/suppliers/bulk-create-suppliers.md ## Permission Scopes: Write Marketplace: SCOPE.SUPPLIERS_HUB.WRITE_MARKETPLACE ## Introduction Creates multiple suppliers in a single synchronous request. Supports up to 100 suppliers per request. Set `returnEntity` to `true` to receive the created suppliers with their assigned IDs and revision numbers. Use this endpoint when importing suppliers from external sources or onboarding multiple suppliers simultaneously. Each supplier in the request is processed independently. The response includes metadata indicating success or failure for each supplier. --- ## REST API ### Schema ``` Method: bulkCreateSuppliers Description: Creates multiple suppliers in a single synchronous request. Supports up to 100 suppliers per request. Set `returnEntity` to `true` to receive the created suppliers with their assigned GUIDs and revision numbers. Use this endpoint when importing suppliers from external sources or onboarding multiple suppliers simultaneously. Each supplier in the request is processed independently. The response includes metadata indicating success or failure for each supplier. URL: https://www.wixapis.com/suppliers-hub/v1/bulk/suppliers/create Method: POST # Note: If the parameter `a.b` is listed under required parameters, `b` is only required if `a` is also present. Required parameters: suppliers, suppliers.name, suppliers.location, suppliers.types Method parameters: param name: returnEntity | type: returnEntity | description: Whether to return created supplier entities in the response. Set to `true` to receive the created suppliers with their assigned GUIDs and revision numbers. param name: suppliers | type: array | description: List of suppliers to create. | required: true - name: name | type: string | description: Supplier name. Displayed to providers when browsing and selecting suppliers for their product catalogs. | required: true - name: location | type: Location | description: Supplier location. | required: true - name: country | type: string | description: 2-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1) format. For example, `US` for United States or `GB` for United Kingdom. - name: rating | type: string | description: Supplier rating from 1.00 to 5.00. For example, `4.25`. Provider applications manage ratings and should update both `rating` and `reviewCount` together to maintain consistency. - name: verified | type: boolean | description: Whether the supplier has passed verification processes. Default: `false` - name: types | type: array | description: Supplier business model types. `DROPSHIPPING` suppliers ship directly to end customers, while `WHOLESALE` suppliers ship in bulk to the provider who fulfills orders. A supplier can support multiple fulfillment models. | required: true - enum: - DROPSHIPPING: Supplier ships products directly to end customers. The provider does not handle physical inventory or fulfillment. - WHOLESALE: Supplier ships products in bulk to the provider, who then fulfills orders to end customers. - name: reviewCount | type: integer | description: Number of reviews for the supplier. Provider applications should update both `rating` and `reviewCount` together to maintain consistency. - name: tags | type: Tags | description: Supplier tags for organization and categorization. - name: privateTags | type: TagList | description: Tags that require an additional permission in order to access them, normally not given to site members or visitors. - name: tagIds | type: array | description: List of tag GUIDs. - name: publicTags | type: TagList | description: Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors. Return type: BulkCreateSuppliersResponse - name: results | type: array | description: List of the bulk create operation results including the Suppliers and metadata. - name: itemMetadata | type: ItemMetadata | description: Metadata regarding the specific single create operation - name: id | type: string | description: Item GUID. Provided only whenever possible. For example, `itemId` can't be provided when item creation has failed. - name: originalIndex | type: integer | description: Index of the item within the request array. Allows for correlation between request and response items. - name: success | type: boolean | description: Whether the requested action for this item was successful. When `false`, the `error` field is returned. - name: error | type: ApplicationError | description: Details about the error in case of failure. - name: code | type: string | description: Error code. - name: description | type: string | description: Description of the error. - name: data | type: object | description: Data related to the error. - name: item | type: Supplier | description: Only exists if `returnEntity` was set to true in the request - name: id | type: string | description: Supplier GUID. - name: revision | type: string | description: Revision number, which increments by 1 each time the Supplier is updated. To prevent conflicting changes, the current revision must be passed when updating the Supplier. Ignored when creating a Supplier. - name: createdDate | type: string | description: Date and time the Supplier was created. - name: updatedDate | type: string | description: Date and time the Supplier was last updated. - name: name | type: string | description: Supplier name. Displayed to providers when browsing and selecting suppliers for their product catalogs. - name: appId | type: string | description: App GUID of the provider application responsible for managing the supplier and its products. Automatically set to the GUID of the application making the create request. - name: location | type: Location | description: Supplier location. - name: country | type: string | description: 2-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1) format. For example, `US` for United States or `GB` for United Kingdom. - name: rating | type: string | description: Supplier rating from 1.00 to 5.00. For example, `4.25`. Provider applications manage ratings and should update both `rating` and `reviewCount` together to maintain consistency. - name: verified | type: boolean | description: Whether the supplier has passed verification processes. Default: `false` - name: types | type: array | description: Supplier business model types. `DROPSHIPPING` suppliers ship directly to end customers, while `WHOLESALE` suppliers ship in bulk to the provider who fulfills orders. A supplier can support multiple fulfillment models. - enum: - DROPSHIPPING: Supplier ships products directly to end customers. The provider does not handle physical inventory or fulfillment. - WHOLESALE: Supplier ships products in bulk to the provider, who then fulfills orders to end customers. - name: reviewCount | type: integer | description: Number of reviews for the supplier. Provider applications should update both `rating` and `reviewCount` together to maintain consistency. - name: tags | type: Tags | description: Supplier tags for organization and categorization. - name: privateTags | type: TagList | description: Tags that require an additional permission in order to access them, normally not given to site members or visitors. - name: tagIds | type: array | description: List of tag GUIDs. - name: publicTags | type: TagList | description: Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors. - name: bulkActionMetadata | type: BulkActionMetadata | description: Metadata regarding the bulk create operation - name: totalSuccesses | type: integer | description: Number of items that were successfully processed. - name: totalFailures | type: integer | description: Number of items that couldn't be processed. - name: undetailedFailures | type: integer | description: Number of failures without details because detailed failure threshold was exceeded. ``` ### Examples ### Create multiple suppliers Creates multiple suppliers in a single request with return entity option ```curl curl -X POST \ 'https://www.wixapis.com/suppliers-hub/v1/bulk/suppliers/create' \ -H 'Authorization: ' \ -H 'Content-Type: application/json' \ -d '{ "suppliers": [ { "name": "SourceSync", "location": { "country": "US" }, "rating": "4.92", "verified": true, "types": [ "DROPSHIPPING" ] }, { "name": "Echelon Supply", "location": { "country": "AU" }, "rating": "4.83", "verified": true, "types": [ "DROPSHIPPING", "WHOLESALE" ], "reviewCount": 21334 }, { "name": "Zenith Drop", "location": { "country": "SE" }, "rating": "4.98", "verified": true, "types": [ "DROPSHIPPING" ], "reviewCount": 1202 } ], "returnEntity": true }' ``` --- ## JavaScript SDK ### Schema ``` Method: wixClientAdmin.suppliersHub.MarketplaceSupplier.bulkCreateSuppliers(suppliers, options) Description: Creates multiple suppliers in a single synchronous request. Supports up to 100 suppliers per request. Set `returnEntity` to `true` to receive the created suppliers with their assigned GUIDs and revision numbers. Use this endpoint when importing suppliers from external sources or onboarding multiple suppliers simultaneously. Each supplier in the request is processed independently. The response includes metadata indicating success or failure for each supplier. # Note: If the parameter `a.b` is listed under required parameters, `b` is only required if `a` is also present. Required parameters: suppliers, suppliers.name, suppliers.location, suppliers.types Method parameters: param name: options | type: BulkCreateSuppliersOptions none - name: returnEntity | type: boolean | description: Whether to return created supplier entities in the response. Set to `true` to receive the created suppliers with their assigned GUIDs and revision numbers. param name: suppliers | type: array | description: List of suppliers to create. | required: true - name: name | type: string | description: Supplier name. Displayed to providers when browsing and selecting suppliers for their product catalogs. | required: true - name: location | type: Location | description: Supplier location. | required: true - name: country | type: string | description: 2-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1) format. For example, `US` for United States or `GB` for United Kingdom. - name: rating | type: string | description: Supplier rating from 1.00 to 5.00. For example, `4.25`. Provider applications manage ratings and should update both `rating` and `reviewCount` together to maintain consistency. - name: verified | type: boolean | description: Whether the supplier has passed verification processes. Default: `false` - name: types | type: array | description: Supplier business model types. `DROPSHIPPING` suppliers ship directly to end customers, while `WHOLESALE` suppliers ship in bulk to the provider who fulfills orders. A supplier can support multiple fulfillment models. | required: true - enum: - DROPSHIPPING: Supplier ships products directly to end customers. The provider does not handle physical inventory or fulfillment. - WHOLESALE: Supplier ships products in bulk to the provider, who then fulfills orders to end customers. - name: reviewCount | type: integer | description: Number of reviews for the supplier. Provider applications should update both `rating` and `reviewCount` together to maintain consistency. - name: tags | type: Tags | description: Supplier tags for organization and categorization. - name: privateTags | type: TagList | description: Tags that require an additional permission in order to access them, normally not given to site members or visitors. - name: tagIds | type: array | description: List of tag GUIDs. - name: publicTags | type: TagList | description: Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors. Return type: PROMISE - name: results | type: array | description: List of the bulk create operation results including the Suppliers and metadata. - name: itemMetadata | type: ItemMetadata | description: Metadata regarding the specific single create operation - name: _id | type: string | description: Item GUID. Provided only whenever possible. For example, `itemId` can't be provided when item creation has failed. - name: originalIndex | type: integer | description: Index of the item within the request array. Allows for correlation between request and response items. - name: success | type: boolean | description: Whether the requested action for this item was successful. When `false`, the `error` field is returned. - name: error | type: ApplicationError | description: Details about the error in case of failure. - name: code | type: string | description: Error code. - name: description | type: string | description: Description of the error. - name: data | type: object | description: Data related to the error. - name: item | type: Supplier | description: Only exists if `returnEntity` was set to true in the request - name: _id | type: string | description: Supplier GUID. - name: revision | type: string | description: Revision number, which increments by 1 each time the Supplier is updated. To prevent conflicting changes, the current revision must be passed when updating the Supplier. Ignored when creating a Supplier. - name: _createdDate | type: Date | description: Date and time the Supplier was created. - name: _updatedDate | type: Date | description: Date and time the Supplier was last updated. - name: name | type: string | description: Supplier name. Displayed to providers when browsing and selecting suppliers for their product catalogs. - name: appId | type: string | description: App GUID of the provider application responsible for managing the supplier and its products. Automatically set to the GUID of the application making the create request. - name: location | type: Location | description: Supplier location. - name: country | type: string | description: 2-letter country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1) format. For example, `US` for United States or `GB` for United Kingdom. - name: rating | type: string | description: Supplier rating from 1.00 to 5.00. For example, `4.25`. Provider applications manage ratings and should update both `rating` and `reviewCount` together to maintain consistency. - name: verified | type: boolean | description: Whether the supplier has passed verification processes. Default: `false` - name: types | type: array | description: Supplier business model types. `DROPSHIPPING` suppliers ship directly to end customers, while `WHOLESALE` suppliers ship in bulk to the provider who fulfills orders. A supplier can support multiple fulfillment models. - enum: - DROPSHIPPING: Supplier ships products directly to end customers. The provider does not handle physical inventory or fulfillment. - WHOLESALE: Supplier ships products in bulk to the provider, who then fulfills orders to end customers. - name: reviewCount | type: integer | description: Number of reviews for the supplier. Provider applications should update both `rating` and `reviewCount` together to maintain consistency. - name: tags | type: Tags | description: Supplier tags for organization and categorization. - name: privateTags | type: TagList | description: Tags that require an additional permission in order to access them, normally not given to site members or visitors. - name: tagIds | type: array | description: List of tag GUIDs. - name: publicTags | type: TagList | description: Tags that are exposed to anyone who has access to the labeled entity itself, including site members and visitors. - name: bulkActionMetadata | type: BulkActionMetadata | description: Metadata regarding the bulk create operation - name: totalSuccesses | type: integer | description: Number of items that were successfully processed. - name: totalFailures | type: integer | description: Number of items that couldn't be processed. - name: undetailedFailures | type: integer | description: Number of failures without details because detailed failure threshold was exceeded. ``` ### Examples ### bulkCreateSuppliers ```javascript import { suppliers } from '@wix/suppliers-hub'; async function bulkCreateSuppliers(suppliers,options) { const response = await suppliers.bulkCreateSuppliers(suppliers,options); }; ``` ### bulkCreateSuppliers (with elevated permissions) ```javascript import { suppliers } from '@wix/suppliers-hub'; import { auth } from '@wix/essentials'; async function myBulkCreateSuppliersMethod(suppliers,options) { const elevatedBulkCreateSuppliers = auth.elevate(suppliers.bulkCreateSuppliers); const response = await elevatedBulkCreateSuppliers(suppliers,options); } ``` ### bulkCreateSuppliers (self-hosted) Self-hosted SDK calls require you to [create a client](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/about-the-wix-client.md). ```javascript import { createClient } from '@wix/sdk'; import { suppliers } from '@wix/suppliers-hub'; // Import the auth strategy for the relevant access type // Import the relevant host module if needed const myWixClient = createClient ({ modules: { suppliers }, // Include the auth strategy and host as relevant }); async function bulkCreateSuppliers(suppliers,options) { const response = await myWixClient.suppliers.bulkCreateSuppliers(suppliers,options); }; ``` ---