Portfolio projects are how creators demonstrate the quality and range of their work on ECHO. Each project is a standalone published piece — with its own URL slug, rich content blocks, and social engagement metrics — that buyers encounter when evaluating a creator’s profile or browsing published work.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/HelenaLM32/ECHO/llms.txt
Use this file to discover all available pages before exploring further.
What a project is
A project in ECHO extends the baseItem model. This means every project carries the standard item fields (title, description, base_price, category_id) but adds a layer of editorial content on top:
- A slug that becomes its public URL (e.g.,
/projects/mi-proyecto-de-identidad) - A published flag that controls visibility — drafts are private until explicitly published
- A background setting for visual customization of the project page
- Rich content blocks stored as JSON, built with the block-based editor
- Engagement metrics: likes, views, and comments
The block-based editor
Project content is authored using a block-based editor. Blocks are stored as a JSON array, making the content portable and renderable across different layouts.background field accepts a hex color or a CSS value applied to the project page. The block_gap setting controls vertical spacing between blocks, giving creators control over the reading rhythm of their project.
Project metadata
| Field | Description |
|---|---|
slug | URL-friendly identifier, unique per creator |
published | true makes the project visible publicly; false keeps it as a draft |
base_price | Optional — use this to indicate the approximate value of similar work |
created_at / updated_at | Timestamps managed automatically by the platform |
Social features
Projects accumulate engagement over time through three mechanisms: Likes — Any authenticated user can like a project. Each user can like a given project only once; the action can be undone. Thelikes counter on the project record reflects the current total.
Views — The views counter increments automatically when a published project is accessed. It is read-only.
Comments — Users can post comments on a project. Each comment stores the text content and the timestamp of submission. Comments are publicly visible on the project page.
The likes, views, and comments fields are read-only through the standard item API. They are updated through dedicated endpoints on the projects resource.
Linking projects to services
A creator can link a portfolio project to a specific service listing to demonstrate past work of the same type. Theitem_service_projects relationship joins a service (item_id) to one or more portfolio projects (project_id).
This means when a buyer views a service listing, they can see concrete examples of what the creator has delivered for similar engagements — reducing uncertainty before placing an order.
Publishing a project
Create a draft
Submit a new project with
published: false. The project is saved privately and not visible to other users.Add content blocks
Use the block-based editor to add headings, images, and text sections. Set your background color and adjust block gap to refine the layout.
Link to a service (optional)
Associate the project with a relevant service listing so it appears as a portfolio example on that service’s page.
How buyers discover projects
Published projects surface in two places:GET /item-projects— lists all published projects across the platformGET /profiles/{userId}— shows a specific creator’s profile, including all their published projects
The Marketplace
See how services and projects appear together on creator profiles.
Projects API
Full reference for creating, editing, and publishing portfolio projects.