Hippoo-auth Web Service Documentation for Authentication and User Management in WooCommerce
Hippoo Auth is a WordPress plugin designed to provide a REST API-based authentication system for WooCommerce. It supports user login, signup, password reset, social login, order viewing, and address management, making it ideal for mobile apps and custom front-end clients. You can download it from: http://wordpress.org/plugins/hippoo-auth
Required Features
User Registration
- Register with email and password
- Check for duplicate emails
- Assign user role as
customer
Endpoint: POST /wp-json/hippoo-auth/v1/signup
{
"email": "[email protected]",
"password": "securepassword"
}
Response:
{
"token": "jwt-access-token",
"refresh_token": "jwt-refresh-token",
"user": {
"id": 14,
"email": "[email protected]",
"name": "user"
}
}
User Login
- Receive access and refresh tokens upon successful login
- Return user information
Endpoint: POST /wp-json/hippoo-auth/v1/login
{
"email": "[email protected]",
"password": "securepassword"
}
Response:
{
"token": "jwt-access-token",
"refresh_token": "jwt-refresh-token",
"user": {
"id": 14,
"email": "[email protected]",
"name": "user"
}
}
Refresh Token
- Obtain a new access token using a valid refresh token
Endpoint: POST /wp-json/hippoo-auth/v1/refresh-token
{
"refresh_token": "your-refresh-token"
}
Response:
{
"token": "new-access-token",
"refresh_token": "new-refresh-token",
"user": {
"id": 14,
"email": "[email protected]",
"name": "googleme1"
}
}
Session Management
- JWT token is sent as a bearer token in the header
- Token is validated in each request to access sensitive information
Logout
Endpoint: POST /wp-json/hippoo-auth/v1/logout
Reset Password
Request reset link: POST /wp-json/hippoo-auth/v1/reset-password/request
{
"email": "[email protected]"
}
Reset password with token: POST /wp-json/hippoo-auth/v1/reset-password/confirm
{
"token": "reset-token-from-email",
"new_password": "newsecurepassword"
}
Social Login
- Supports Google, Apple, Facebook
- If the email doesn’t exist, a new user will be registered
Endpoint: POST /wp-json/hippoo-auth/v1/social-login
{
"provider": "google",
"token": "google-id-token"
}
View User Orders
- User must be logged in
Endpoint: GET /wp-json/hippoo-auth/v1/orders
[
{
"id": 123,
"status": "processing",
"total": "120000",
"date_created": "2025-04-13T10:00:00",
"items": [
{
"product_id": 45,
"name": "Product 1",
"quantity": 2
}
]
}
]
View Order Details
Endpoint: GET /wp-json/hippoo-auth/v1/orders/{order_id}
Get User Addresses
Endpoint: GET /wp-json/hippoo-auth/v1/address
{
"billing": {
"first_name": "Ali",
"address_1": "Tehran",
"city": "Tehran"
},
"shipping": {
"first_name": "Ali",
"address_1": "Tehran",
"city": "Tehran"
}
}
Update Addresses
Endpoint: PUT /wp-json/hippoo-auth/v1/addresses
{
"billing": {
"address_1": "New Address",
"city": "New City"
},
"shipping": {
"address_1": "New Address",
"city": "New City"
}
}