Cowdidocs

Get a product

GET
/v1/products/{productId}

Returns a product with its published version. Returns 404 when the caller offers no product with this id. Requires the org:products:read permission. To read every version, list the versions of the product.

AuthorizationBearer <token>

Create a client with POST /v1/oauth/clients, then exchange its credentials for an access token. AUTHORIZATION_CODE clients act on behalf of a signed-in user and always use PKCE; CLIENT_CREDENTIALS clients act as themselves. A client may only be granted scopes its creator already holds — read the grantable list from GET /v1/oauth/clients/scopes.

In: header

Path Parameters

productId*string

The id of the product

Formatuuid

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/products/0f6b3c2e-6b1d-4e8a-9a51-2f7c8d9e0a1b"
{  "id": "550e8400-e29b-41d4-a716-446655440000",  "organization_id": "cowdi",  "key": "ACME_FLAT_RATE",  "category": "TERM_LOAN",  "published_version": {    "id": "7c9e6679-7425-40de-944b-e07fc1f90ae7",    "product_id": "550e8400-e29b-41d4-a716-446655440000",    "version": 1,    "status": "DRAFT",    "name": "Weekly loan",    "description_template": "You pay a fixed {interest_rate} fee for {interest_period_value, plural, one{# week} other{# weeks}}.",    "ussd_description_template": "string",    "terms": {      "product": "TERM_LOAN",      "penalty_fee_configuration": {        "enabled": false      },      "block_policy": {},      "billing_strategy": "ARREARS",      "allocation_order": [        "PENALTY",        "ARREARS",        "INTEREST",        "PRINCIPAL"      ],      "grace_period": {        "value": 3,        "unit": "DAYS"      },      "payment_grace_period": {        "value": 0,        "unit": "DAYS"      },      "tenure": {        "duration": 4,        "unit": "WEEKS"      },      "interest_rate": {        "basis_points": 300,        "period": {          "value": 1,          "unit": "WEEKS"        },        "day_count_convention": "ACTUAL_365"      },      "interest_calculation_method": "FLAT_RATE",      "fixed_interest": null,      "accrual_period": null,      "billing_period": {        "value": 1,        "unit": "WEEKS"      },      "recalculation_mode": "FIXED_TENURE",      "fixed_emi_amount": null,      "interest_accrual_base": "PRINCIPAL",      "interest_billing_mode": "UPFRONT",      "can_spend_continuously": false,      "can_reborrow": false,      "can_spend_in_arrears": true,      "has_deferred_start": false    },    "published_at": "2026-10-08T10:15:30Z",    "created_at": "2026-09-01T10:15:30Z",    "resource_id": "string"  },  "created_at": "2026-09-01T10:15:30Z",  "resource_id": "string"}
{  "code": "BAD_REQUEST",  "description": "Bad Request"}
{  "code": "UNAUTHORISED",  "description": "Unauthorised"}
{  "code": "FORBIDDEN",  "description": "Forbidden"}
{  "code": "BAD_REQUEST",  "description": "Invalid input"}
{  "code": "RATE_LIMIT_EXCEEDED",  "description": "Too Many Requests"}
{  "code": "INTERNAL_ERROR",  "description": "Internal Server Error"}