SwiftGoma.SwiftGoma

Search endpoints

Jump to any API endpoint by name, method, or path

Products

List products

GET/api/v1/products

Lists published products from published shops, with filtering, search, and sorting. Cached for 2 minutes per filter combination.

No authentication required
Public

Query parameters

pagenumber
Defaults to 1.
limitnumber
Max 100. Defaults to 20.
categoryIdstring
Filter by category.
subcategoryIdstring
Filter by subcategory.
shopIdstring
Filter by shop.
minPricenumber
Minimum variant price.
maxPricenumber
Maximum variant price.
currencystring
USD or CDF.
searchstring
Matches name, description, and brand.
inStockOnlyboolean
Only products with at least one in-stock variant.
citystring
Filter by seller's city.
sortBystring
recent (default), popular, priceAsc, or priceDesc.
Request
curl --request GET \
  --url https://api.swiftgoma.com/api/v1/products
200Example response
{
  "success": true,
  "data": {
    "products": [
      {
        "id": "prod_7c8d9e",
        "shopId": "shop_2b3c4d",
        "subcategoryId": "sub_1a2b3c",
        "name": "Riz parfumé 25kg",
        "slug": "riz-parfume-25kg",
        "description": "Riz parfumé de qualité supérieure, sac de 25kg, idéal pour la revente ou la consommation familiale.",
        "brand": "Uncle Sam",
        "unit": "piece",
        "weightGrams": 25000,
        "currency": "USD",
        "status": "PUBLISHED",
        "hasVariants": false,
        "images": [
          {
            "id": "img_1",
            "url": "https://res.cloudinary.com/dx3wclabo/image/upload/v1/products/riz-1.jpg",
            "position": 0
          }
        ],
        "variants": [
          {
            "id": "var_4d5e6f",
            "name": null,
            "attributes": null,
            "sku": null,
            "price": "12.50",
            "stock": 40,
            "isDefault": true
          }
        ],
        "createdAt": "2026-01-10T09:00:00.000Z",
        "updatedAt": "2026-01-14T10:32:00.000Z"
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 1,
      "totalPages": 1
    }
  }
}