The Create Product endpoint allows an authenticated admin to publish a new sporting design to the TuKit marketplace. Requests must be sent asDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/fredy-rizo/tukit/llms.txt
Use this file to discover all available pages before exploring further.
multipart/form-data because the endpoint uses Multer to handle up to four file fields alongside the text body. Only users whose role has name: "admin" and value: "2" are permitted to call this endpoint; all other authenticated users receive a 203 rejection. File fields that are omitted are stored as empty arrays on the product document, so they are all optional at the HTTP level even though meaningful products will generally include at least an image.
POST /api/product/agregate
Authentication
| Header | Value | Required |
|---|---|---|
token-access | <your JWT token> | ✅ Yes |
Request Body
This endpoint acceptsmultipart/form-data. Send text fields and file fields in the same form submission.
Text Fields
Display name of the product shown to buyers on the marketplace.
Product category. Must be exactly one of the enum values accepted by the
database schema.Allowed values:
"Uniforme" | "Tipografía"Base price of the product in the store’s local currency. Stored as a
Number and defaults to 0 if omitted at the model level.Design file format(s) included with the product, e.g.
"AI", "PNG",
"PSD". Free-form string — use a descriptive value buyers can understand.Determines whether the product is paid or free.Allowed values:
"Pago" | "Gratuito"Optional long-form description of the product. Displayed on the product
detail page.
File Fields
All file fields are optional. Each field accepts a maximum of 1 file and is stored tostorage/product/ on the server via Multer disk storage.
The primary design file (e.g.
.ai, .psd, .zip). Max 1 file.Preview image for the product listing. Max 1 file.
Animated GIF or image demonstrating the design on a shirt. Max 1 file.
Animated GIF or image demonstrating the design on shorts. Max 1 file.
Response
200 — Product Created
Human-readable confirmation message, e.g.
"Uniforme creada correctamente".
The category name is interpolated into the message.Always
true on success.The newly created product document.
Error Responses
| Status | Condition | status |
|---|---|---|
203 | Authenticated user is not admin level 2 | false |
203 | One or more required text fields are missing | false |
500 | Unexpected server error | — |
203 — Not Authorized
203 — Missing Fields
Example
Replace
<YOUR_TOKEN> with a valid JWT that belongs to an admin level 2
user. Adjust file paths to point to real files on your machine.cURL
Success Response