/ API Reference

Designs

Customer design sessions and saved designs

Endpoints

GET /api/v1/designs Requires: read

List all designs

GET /api/v1/designs/:id Requires: read

Get a design

POST /api/v1/designs Requires: write

Create a design

PATCH /api/v1/designs/:id Requires: write

Update a design

POST /api/v1/designs/:id/finalize Requires: write

Finalize a design

DELETE /api/v1/designs/:id Requires: delete

Delete a design

Fields

Field Type Required Description
id uuid Optional Unique identifier
product_id uuid Required Associated product ID
session_token string Optional Unique session token
status string Optional Status (draft, finalized)
canvas_data object Optional Fabric.js canvas JSON data
preview_url string Optional Preview image URL

Examples

List Designs

curl -X GET "https://trucustom.net/api/v1/designs" \
  -H "Authorization: Bearer pc_your_api_key" \
  -H "Content-Type: application/json"

Response:

{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "id": {},
      "product_id": {},
      "session_token": "example"
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 20,
    "total": 42,
    "total_pages": 3
  }
}

Get Single Design

curl -X GET "https://trucustom.net/api/v1/designs/123e4567-e89b-12d3-a456-426614174000" \
  -H "Authorization: Bearer pc_your_api_key" \
  -H "Content-Type: application/json"

Create Design

curl -X POST "https://trucustom.net/api/v1/designs" \
  -H "Authorization: Bearer pc_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "product_id": {}
  }'

Query Parameters

Parameter Type Description
page integer Page number (default: 1)
per_page integer Items per page (default: 20, max: 100)
q string Search query (searches name field)