Every ECHO user has an associated profile that serves as their public-facing portfolio page. Profiles include biographical details, social media links, a portfolio calendar, and the items or services they offer on the marketplace. All read endpoints are publicly accessible without authentication. Updating a profile or uploading images requires a valid JWT token, and you may only modify your own profile.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.
The base URL for all endpoints on a local development server is
http://localhost:8084. Replace this with your deployed API URL in production.Get all profiles
Example
Response fields
The profile’s unique identifier.
The ID of the user this profile belongs to.
The creator’s displayed name on their public profile.
A free-text biography or description of the creator.
The creator’s stated location.
URL of the profile avatar image.
URL of the profile banner image.
LinkedIn profile URL.
Instagram profile URL.
Twitter/X profile URL.
A summary of the creator’s professional experience.
A URL to the creator’s external booking or availability calendar.
Get profile by user ID
Path parameters
The numeric ID of the user whose profile to retrieve.
Example
Error codes
| Status | Meaning |
|---|---|
404 | No profile found for the given user ID. |
Get user’s product items
PRODUCT listed by the given user.
Path parameters
The numeric ID of the user whose products to list.
Example
Get user’s service items
SERVICE listed by the given user.
Path parameters
The numeric ID of the user whose services to list.
Example
Get all user’s items
Path parameters
The numeric ID of the user whose items to list.
Example
Update profile
Path parameters
The numeric ID of the user whose profile to update.
Request body
All fields are optional. Omitted fields are left unchanged.The name displayed on the public profile. Maximum 100 characters.
Free-text biography or description.
The creator’s location. Maximum 100 characters.
LinkedIn profile URL. Maximum 255 characters.
Instagram profile URL. Maximum 255 characters.
Twitter/X profile URL. Maximum 255 characters.
Summary of professional experience. Maximum 255 characters.
URL to an external booking or availability calendar. Maximum 500 characters.
Example
Error codes
| Status | Meaning |
|---|---|
403 | Not authorized to update this profile. |
404 | No profile found for the given user ID. |
Upload avatar image
multipart/form-data request. The server stores the image and updates avatar_url on the profile.
Path parameters
The numeric ID of the user whose avatar to upload.
Request body (multipart)
The image file to upload. Send as a multipart form field named
avatarUrl.Example
Error codes
| Status | Meaning |
|---|---|
400 | No file provided or unsupported file type. |
403 | Not authorized to update this profile. |
404 | No profile found for the given user ID. |
Upload banner image
multipart/form-data request. The server stores the image and updates banner_url on the profile.
Path parameters
The numeric ID of the user whose banner to upload.
Request body (multipart)
The image file to upload. Send as a multipart form field named
bannerUrl.Example
Error codes
| Status | Meaning |
|---|---|
400 | No file provided or unsupported file type. |
403 | Not authorized to update this profile. |
404 | No profile found for the given user ID. |