D Products#

List

#

GET /products

Lists all products for the workspace

Request
curl -X GET "https://api.us-west-2.fragment.dev/products" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json"

Response
{
  "data": [
    {
      "id": "product_1234567890",
      "workspaceId": "ws_1234567890",
      "code": "PROD_001",
      "description": "Premium subscription service",
      "paid_by_roles": [
        {
          "name": "buyer",
          "id": "role_def123"
        }
      ],
      "paid_to_roles": [
        {
          "name": "buyer",
          "id": "role_def123"
        }
      ],
      "updateVersion": 1,
      "created": "2024-01-13T00:00:00Z"
    }
  ]
}

Create

#

POST /products

Creates a new product

Request
curl -X POST "https://api.us-west-2.fragment.dev/products" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{"code":"PROD_001","description":"Premium subscription service","paid_by_roles":[{"name":"buyer"}],"paid_to_roles":[{"name":"seller"}]}'

Response
{
  "data": {
    "id": "product_1234567890",
    "workspaceId": "ws_1234567890",
    "code": "PROD_001",
    "description": "Premium subscription service",
    "paid_by_roles": [
      {
        "name": "buyer",
        "id": "role_def123"
      }
    ],
    "paid_to_roles": [
      {
        "name": "buyer",
        "id": "role_def123"
      }
    ],
    "updateVersion": 1,
    "created": "2024-01-13T00:00:00Z"
  }
}

Parameters
Name Description
code (required) - stringProduct code (unique identifier)
description (required) - stringDescription of the product
paid_by_roles - arrayRoles that can pay for this product. Reference roles by id or name. At least one of paid_by_roles or paid_to_roles must be provided.
paid_to_roles - arrayRoles that receive payment for this product. Reference roles by id or name. At least one of paid_by_roles or paid_to_roles must be provided.

Retrieve

#

GET /products/{code}

Gets a product by code

Request
curl -X GET "https://api.us-west-2.fragment.dev/products/prod_123" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json"

Response
{
  "data": {
    "id": "product_1234567890",
    "workspaceId": "ws_1234567890",
    "code": "PROD_001",
    "description": "Premium subscription service",
    "paid_by_roles": [
      {
        "name": "buyer",
        "id": "role_def123"
      }
    ],
    "paid_to_roles": [
      {
        "name": "buyer",
        "id": "role_def123"
      }
    ],
    "updateVersion": 1,
    "created": "2024-01-13T00:00:00Z"
  }
}

Parameters
Name Description
{code} (required) - string-