Welcome to the official API documentation for the Tendo App โ a mobile-first platform available on both iOS and Android. This API enables seamless communication between the Tendo mobile applications and the backend services.
๐ Base URL
https://api.tendoapp.com/v1
All endpoints referenced in this documentation are prefixed with the above base URL.
๐ Authentication
The Tendo API uses JWT (JSON Web Tokens) for authenticating requests.
Include the token in the Authorization header like so:
Authorization: Bearer <your_token>
Tokens are issued upon successful login or registration.
๐ฆ API Endpoints
๐ Table of Contents
1. ๐ Authentication
POST /auth/register
Register a new user.
Body Parameters:
{
"name": "Jane Doe",
"email": "jane@example.com",
"password": "securePassword123",
"device_token": "firebase_token_here"
}
Success Response:
{
"token": "jwt_token_here",
"user": {
"id": 101,
"name": "Jane Doe",
"email": "jane@example.com"
}
}
POST /auth/login
Login with email and password.
Body Parameters:
{
"email": "jane@example.com",
"password": "securePassword123",
"device_token": "firebase_token_here"
}
Response:
{
"token": "jwt_token_here",
"user": {
"id": 101,
"name": "Jane Doe",
"email": "jane@example.com"
}
}
POST /auth/logout
Logout the current user and revoke push notification tokens.
Headers:
Authorization: Bearer <token>
2. ๐ค User Profile
GET /user/profile
Fetch current user profile.
PUT /user/profile
Update user profile.
Body Parameters:
{
"name": "Jane Smith",
"phone": "+1234567890",
"avatar_url": "https://cdn.tendoapp.com/avatars/101.jpg"
}
POST /user/change-password
Change user password.
3. ๐๏ธ Products / Services
GET /products
Retrieve all products or services.
Query Parameters:
-
category(optional) -
limit -
search
Sample Response:
[
{
"id": 201,
"name": "Virtual Consultation",
"price": 29.99,
"description": "One-on-one consultation with a specialist",
"image_url": "https://cdn.tendoapp.com/products/consultation.jpg"
}
]
GET /products/{id}
Fetch a single product by ID.
4. ๐ฆ Orders / Bookings
POST /orders
Create a new order or booking.
Body Parameters:
{
"product_id": 201,
"quantity": 1,
"payment_method": "credit_card"
}
Response:
{
"order_id": "ORD-5566",
"status": "pending",
"total": 29.99
}
GET /orders
List userโs order history.
GET /orders/{order_id}
Get details of a specific order.
5. ๐ Notifications
GET /notifications
Retrieve user notifications.
POST /notifications/mark-as-read
Mark specific notifications as read.
6. โ๏ธ App Settings / Info
GET /app/settings
Retrieve app configuration (e.g., support email, version info).
GET /app/faq
Get FAQs and help articles.
7. ๐ซ Error Handling
Tendo API uses standard HTTP status codes to indicate success or failure:
| Code | Meaning | Description |
|---|---|---|
| 200 | OK | Request succeeded |
| 201 | Created | Resource created |
| 400 | Bad Request | Malformed request |
| 401 | Unauthorized | Authentication failed |
| 403 | Forbidden | Not enough permissions |
| 404 | Not Found | Resource doesnโt exist |
| 422 | Validation Error | Input data is invalid |
| 500 | Internal Server Error | Server-side error |
Sample Error:
{
"error": "Invalid credentials",
"code": 401
}
๐ฑ Mobile Platform Notes
-
The Tendo App supports push notifications via Firebase (iOS and Android).
-
Uploads (profile pictures, product images) must be done via
multipart/form-data. -
API versioning is managed via the URL (e.g.,
/v1/,/v2/).
๐ง Support
For any integration issues, contact our API team at: api-support@tendoapp.com
ย