1. Products
Saaslogic
  • Enum Reference
  • Authentication
  • Introduction
  • Products
    • Resources
      • Create Product Resource
    • Coupons
      • Publish Coupon
      • Create Coupon
      • Update Coupon
      • Get Coupon
      • Get Coupons
    • Create Product
      POST
    • Get Product
      GET
    • List all products
      GET
    • Update Product
      PUT
  • Authentication
    • saaslogic token
      • Get the saaslogic access token
    • login Url
      • Gives the login URL
    • logout Url
      • Gives the logout URL
  • Countries
    • Get list of countries
  • Plans
    • Create Plan
    • Update Plan
    • Publish Plan
    • Get Plan
    • Get Plans
    • List all plans for a product
  • Subscriptions
    • Get Subscriptions
    • Change subscription plan
    • Create a product subscription
    • Retrieve a subscription
    • Create Customer and Subscription
    • Subscription with details permissions, menus and features
    • The Saaslogic URL for creating subscription
  • Usage Reporting
    • Report the resource usages in subscription for invoicing
    • Retrieves the resource usages of a subscription in the current billing cycle
  • Customers
    • addresses
      • Create an address
      • List all addresses
      • Update an address
      • Retrieve an address
      • Delete an address
    • contacts
      • Create a contact
      • List all contacts
      • Update a contact
      • Retrieve a contact
      • Delete a contact
    • Create a customer
    • List all customers
    • Update a customer
    • Retrieve a customer
    • Delete a customer
  • Vendors
    • vendor addresses
      • Create a vendor address.
      • List all vendor addresses.
      • Update a vendor address.
      • Retrieve a vendor address..
      • Delete a vendor address.
    • vendor contacts
      • Create a vendor contact.
      • List all vendor contacts.
      • Update a vendor contact.
      • Retrieve a vendor contact.
      • Delete a vendor contact.
    • vendor bills
      • Create a vendor bill
      • Cancel a vendor bill.
    • vendor bills payout
      • Update payment details to vendor bills.
    • Create a vendor
    • Update a vendor.
    • Activate a vendor.
    • Deactivate a vendor
  • Invoices
    • subscriptions
      • Get the invoices
      • Get the invoices by subscription
    • payments
      • Mark the invoice payment status
    • Approve the invoice
    • Get Invoices
    • Get the invoice details .
    • Cancel the invoice
    • Send invoice as pdf with payment link.
    • Create an on-demand invoice
  • States
    • Get list of states
  • Addons
    • List all addons for a product
  • Submerchant
    • Create a submerchant
  • UOM
    • Create UOM
    • Update UOM
    • List UOMs
    • Get UOM
  • HostedPages
    • Enable Hosted Page
  • Schemas
    • Invoice
      • InvoiceSubscriptionDTO
      • InvoiceInfo
      • InvoiceDetail
      • InvoiceProduct
      • InvoiceLineItemDTO
      • InvoicePayment
      • InvoiceAttributeDTO
      • InvoiceRequestDTO
      • InvoiceRequestProduct
      • InvoiceRequestLineItem
      • InvoiceRequestLineItemTax
      • InvoiceRequestDiscount
      • InvoicePaginatedResponse
    • Vendor
      • Vendor
      • VendorContact
      • VendorAddress
      • VendorBill
    • Subscriptions
      • SubscritpionPaginatedResponse
      • Subscription
      • ResourceQuantities
      • ChangeSubscriptionRequest
    • Pagination
      • PageRequest
      • SortCriteria
      • FilterCriteria
      • Pagination
      • InvoiceList
      • PageResponse
    • Plan
      • Plan
      • PlanSearchRequest
    • UOM
      • UOM
    • Product
      • ProductResource
      • ProductFeature
      • Product
      • ProductAttribute
      • Coupon
      • CouponSearchRequest
    • AccessTokenResponse
    • ProductAPIKey
    • Country
    • Customer
    • CustomerAddress
    • PaymentInfo
    • CustomerWithSubscription
    • State
    • Addon
    • CustomerContact
    • Submerchant
    • HostedPageAccessRequest
  1. Products

Update Product

PUT
/products/{productId}
Updates an existing product owned by the authenticated merchant. All fields are optional — only the fields you include in the request are updated. Fields you omit keep their existing values.
You can modify the product name, description, and billing type (Recurring or OnDemand). However, billing types that are already in use by published packages cannot be removed.
For metered usage resources, the system matches by resourceName. If a resource with that name exists, it is updated; otherwise a new one is created. You can specify the UOM group, calculation type (e.g. SUM, MAX, LEDGER), proration setting, overage handling, unit‑level enforcement, and whether decimal values are allowed.
Features are matched by featureName. If found, the description is updated; otherwise a new feature is created. Attributes are matched by attributeName to update the mandatory flag or create a new attribute.
The endpoint returns the fully updated product with all resolved field values.

Request

Path Params

Header Params

Body Params application/jsonRequired

Examples

Responses

🔴500ErrorResponse
application/json
Bodyapplication/json

🟢200Success
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request PUT 'https://api-sandbox.saaslogic.io/v1/products/' \
--header 'Authorization: Bearer ' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{
    "productName": "External API UPD 02",
    "description": "Zod description just updated",
    "billingTypes": [
        "on-demand",
        "Recurring"
    ],
    "resources": [
        {
            "resourceId": "54618f523a894e43a8ad7b4ed4b78d97",
            "resourceName": "API2",
            "uomGroupName": "General",
            "isUnitLevelEnforceable": false,
            "isDecimalAllowed": true,
            "calculationType": "AVG",
            "isProrated": true,
            "overageCalculationType": "NoOverage"
        }
    ],
    "features": [
        {
            "featureName": "User Management",
            "description": "Manage users and roles and assocaiated things"
        }
    ],
    "attributes": [
        {
            "attributeName": "Region",
            "isMandatory": false
        }
    ]
}'
Response Response Example
500 - Example 1
{
    "message": "UN_AUTHORIZED"
}
Previous
List all products
Next
Get the saaslogic access token
Built with