Update Product
PATCH /api/v1/products/{productId}/tenants/{tenantId}
Description
Update an existing product associated with a tenant.
🔑 Authentication
This endpoint requires authentication via a Bearer Token.
| Param | Value | Type |
|---|---|---|
| token | {{tenantUserAccessToken}} | string |
Path Parameters
These parameters must be included in the URL path.
| Name | Type | Description |
|---|---|---|
productId | string | The ID of the product to update |
tenantId | string | The ID of the tenant associated with the product |
Request Body
| Name | Type | Description |
|---|---|---|
name | string | The updated name of the product |
overview | string | Updated short description of the product |
requirements | array | Updated requirements for using the product |
display | string | Product visibility (PUBLIC, PRIVATE) |
category | string | Updated product category (e.g., WHITE_LABEL) |
bio | object | Updated bio information |
bio.title | string | Updated product bio title |
bio.description | string | Updated product bio description |
bio.photo | string | Updated product image URL |
actionBy | string | The user making the update |
photo | string | Updated product image URL |
Configuration Settings
The product can be updated for different platforms.
Mobile App Configuration
| Name | Type | Description |
|---|---|---|
label | string | Display name of the setting |
key | string | Unique key identifier |
value | string | Configuration value |
required | boolean | Whether this field is required |
valueType | string | Data type (e.g., string, boolean) |
formType | string | Type of input form (e.g., input, dropdown) |
formOptions | array | Available options for dropdown fields |
Other App Configurations
The same structure applies to:
- PWA App (
config.pwaApp) - Web App (
config.webApp) - Admin App (
config.adminApp)
Product Classification
Products can be grouped based on industry categories.
| Name | Type | Description |
|---|---|---|
group | string | Industry classification (e.g., Health & Fitness) |
tags | array | Tags associated with the product (e.g., Banking, Investing) |
Example Request
PATCH /api/v1/products/{{productId}}/tenants/{{tenantId}}
Authorization: Bearer {{tenantUserAccessToken}}
Content-Type: application/json
{
"name": "Updated Product Name",
"overview": "Updated product description",
"requirements": ["Updated requirement 1", "Updated requirement 2"],
"display": "PUBLIC",
"category": "WHITE_LABEL",
"bio": {
"title": "Updated Title",
"description": "Updated product description",
"photo": "https://example.com/updated-image.png"
},
"actionBy": "{{$randomUUID}}",
"photo": "https://example.com/updated-image.png",
"config": {
"mobileApp": [
{
"label": "Webhook URL",
"key": "webhookUrl",
"value": "https://example.com/webhook",
"required": true,
"valueType": "string",
"formType": "input",
"formOptions": []
}
]
},
"services": ["payment-processing"],
"classification": [
{
"group": "Finance",
"tags": ["Banking", "Investing", "Payments"]
}
]
}
Response Code: 200 - OK
{
"_id": "67a81ecca9a55da218c22c35",
"name": "Updated Product Name",
"overview": "Updated product description",
"requirements": ["Updated requirement 1", "Updated requirement 2"],
"code": "updated_product_code",
"photo": "https://example.com/updated-image.png",
"config": {
"mobileApp": [
{
"label": "Webhook URL",
"key": "webhookUrl",
"required": true,
"value": "https://example.com/webhook",
"valueType": "string",
"formType": "input",
"_id": "67a81ecca9a55da218c22c36",
"formOptions": []
}
]
},
"services": [],
"tenant": "67a81e0478c623946a5e4a49",
"display": "PUBLIC",
"type": "TENANT",
"category": "WHITE_LABEL",
"classification": [],
"bio": {
"title": "Updated Title",
"description": "Updated product description"
},
"deleted": false,
"createdBy": "SYSTEM",
"deletedBy": null,
"updatedBy": null,
"createdAt": "2025-02-09T03:19:40.485Z",
"updatedAt": "2025-02-09T03:50:42.195Z",
"__v": 0
}
LANGUAGE
CURL REQUEST
curl --request PATCH \
--url /api/v1/products/{productId}/tenants/{tenantId} \
--header 'accept: application/json' \
--header 'content-type: application/json'
RESPONSE
Click Try It! to start a request and see the response here!