API Documentation

Address Endpoint

GET

Get all addresses of logged in users

  • Role->User

GET

Get all addresses stored in databse irrespective of userid

  • Role->Admin

GET

Update a single address document

  • Role->User
  • :id->address

POST

When a user click on addNewAddress, this endpoint is fired to create a new address in database

  • Role->User

PUT

User can update his own address by passing the document ID

  • Role->User
  • param :id=document id of address to be updated

PATCH

User can change the addresses details by passing address id.

  • Role->User
  • param :id=document id of address to be updated

DELETE

User can delete specific address by passing the address id.

  • Role->User
  • param :id=address id of address to be deleted

Brand Endpoints

GET

List all brands for public

GET

View details of a brand document by passing brand id.

  • param :id=Brand document id of a brand can be viewed

POST

Manager can create a new brand document.

  • Role->Manager

PUT

Manager can change brand details by passing brand id.

  • Role->Manager
  • param :id=document id of brand to be updated

PATCH

Manager can change the brand details by passing brand id.

  • Role->Manager
  • param :id=document id of brand to be updated

DELETE

Admin can delete specific brand by passing the brand id.

  • Role->Admin
  • param :id=document id of settings to be deleted

Cart Endpoints

GET

Get cart items saved for the user

  • Role->User

POST

Save cart items of user into database for accessing across devices

  • Role->User

:::

Category Endpoints

GET

Get all category for public

GET

All visitors can view details of a category document by passing category id.

  • param :id=document id of category can be viewed

GET

Get all categories including childrens

GET

Get all categories in a single level without parent child relationship

GET

Get all root level categories

GET

Get all categories containing atleast 1 product

GET

All categories having no parent

POST

Manager can create a new category document.

  • Role->Manager

PUT

This removes all categories and inserts the modified categories again

  • Role->Manager

PATCH

If there is a parent category in received request, update child categories else update the parent category

  • Role->Manager
  • param :id=document id of category to be updated

DELETE

Manager can delete specific category by passing the child category-id and parent category-id in case of a 2 level category tree

  • Role->Manager
  • param :id=document id of category to be deleted

DELETE

Delete parent category (dangarous)

  • Role->Manager
  • param :id=category id of category to be deleted

Contact Endpoints

GET

view details of a perticular user's contact document.

  • Role->User

GET

View details of a contact document managed by Manager.

  • Role->Manager

GET

View details of a contact document by passing contact id.

  • Role->Manager
  • param :id=contact document id of a contact can be viewed

POST

Manager can create a new contact document.

  • Role->Manager

PUT

Manager can change contacts by passing contact id.

  • Role->Manager
  • param :id=document id of contact to be updated

PATCH

User can change the contact document by passing contact id.

  • Role->User
  • param :id=document id of contact to be updated

DELETE

Admin can delete contact details of contact by passing the contact id.

  • param :id=document id of settings to be deleted

Coupon Endpoints

GET

All coupons generated by vendor

  • Role->Vendor

GET

Get all coupons for available in webiste for public

GET

View details of a coupon by passing coupon id.

  • param:id->coupon document id of a coupon to be viewed

POST

Admin can create a new coupon

  • Role->Admin

PUT

Admin can update coupon details by passing coupon id.

  • Role->Admin
  • param :id=document id of coupon to be updated

PATCH

Admin can update coupon details by passing coupon id.

  • Role->Admin
  • param :id=document id of coupon to be updated

DELETE

Admin can delete specific coupon by passing the coupon id.

  • Role->Admin
  • param :id=coupon id of coupon to be deleted

Customer Endpoints

GET

Vendor's can see details of their customers.

  • Role->Vendor

GET

Get all customers

  • Role->Manager

GET

View details of a customer by passing customer id.

  • param:id->customer document id of a customer can be viewed
  • Role->Manager

POST

Manager allowed to create a new customer document.

  • Role->Manager

PUT

Managers can change customer details by passing customer id, changed customer details.

  • Role->Manager
  • param :id=document id of customer to be updated

PATCH

User can change the customer details by passing customer id, changed customer details

  • Role->Manager
  • param :id=document id of customer to be updated

DELETE

Manager can delete specific customer details by passing the customer id.

  • Role->Manager
  • param :id=customer id of customer to be deleted

Email Endpoints

POST

Send contactus email to website admin

  • Role->User

Features Endpoints

GET

View details of a feature document added by corresponding vendor.

  • Role->User

GET

View details of all feature document.

GET

View details of a feature document by passing feature id.

  • param:id->feature document id of a feature can be viewed

GET

View details of a feature's group document.

GET

View details of a feature document by passing feature id.

  • param :id->feature document id of a feature can be viewed

POST

Manager can create a new feature document.

  • Role->Manager

PUT

Manager can change feature by passing feature id.

  • Role->Manager
  • param :id=document id of feature to be updated

PATCH

Manager can change the feature document by passing feature id.

  • Role->Manager
  • param :id=document id of feature to be updated

DELETE

Manager can delete specific features by passing the feature id.

  • Role->Manager
  • param :id=feature id of features to be deleted

Feedback Endpoints

GET

View all feedbacks received.

  • Role->Manager

GET

View details of a feedback document by passing feedback id.

  • param :id->feedback id of a feedback can be viewed

POST

Admin can create a new feedback.

  • Role->Admin

PUT

Admin can change feedback by passing feedback id, changed feedback document.

  • Role->Admin
  • param :id=document id of feedback to be updated

PATCH

Admin can change the feedback document by passing feedback id, changed feedback document.

  • Role->Admin
  • param :id=document id of feedback to be updated

DELETE

Admin can delete the specific feedback by passing the feedback id.

  • Role->Admin
  • param :id=feedback id of feedback to be deleted

Media Endpoints

GET

Get of all uploaded images by the corresponding user

  • Role->User

POST

Add a new image

  • Role->User

POST

Create a new banner document.

  • Role->Manager

POST

Manager can create a new media banner document by passing the name.

  • Role->Manager

GET

Get all images for public

  • Role->User

GET

View details of a media document by passing media id.

  • Role->Manager
  • param :id->media document id of a media can be viewed

PUT

Manager can change the media details by passing media id.

  • Role->Manager
  • param :id=document id of media to be updated

PATCH

Manager can change the media document by passing media id.

  • Role->Manager
  • param :id=document id of media to be updated

DELETE

Manager can delete the specific media by passing the media id.

  • Role->Manager
  • param :id=media id of media to be deleted

Order Endpoints

GET

Get list of all orders placed by the corresponding user

  • Role->User

GET

Get total order count

  • Role->Vendor

GET

Get order Stratus Summary for admin dashboard

  • Role->Vendor

GET

View list of new activities for admin dashboard.

  • Role->Vendor

GET

Get list of all orders

  • Role->Vendor

GET

Get list of all pending orders

  • Role->Shipper

GET

Get list of all shipped orders

  • Role->vendor

GET

List of all cancelled orders

  • Role->Vendor

GET

Get all orders that are delivered

  • Role->Vendor

GET

Get summary of daily sales for the daily sales chart at admin dashboard

GET

View details of a order by passing order id.

  • Role->Vendor
  • param :id=page document id of a page can be viewed.

POST

User can create a new order through checkout process

  • Role->User

PUT

Vendor can change the order by passing order id, new order details.

  • Role->Vendor
  • param :id=document id of order to be updated

PATCH

Vendor can change the order details by passing order id, new order details.

  • Role->Vendor
  • param :id=document id of order to be updated

DELETE

Admin can delete a specific order by passing the order id.

  • Role->Admin
  • param :id=order id of order to be deleted

Page Endpoints

GET

All pages that are created by corresponding Managers

  • Role->Manager

GET

Get list of all pages

GET

Get page details

  • param id=page document id of a page can be viewed
  • Role->Manager

POST

Manager are allowed to create a new page

  • Role->Manager

PUT

Manager can change page details by passing page id, the new page details.

  • Role->Manger
  • param :id=document id of page to be updated

PATCH

Managers can update the page by passing Page id, updated page info

  • Role->Manager
  • param :id=document id of page to be updated

DELETE

Managers can delete the specific page by passing the page id

  • Role->Manager
  • param :id=page id of page to be deleted

Pay Endpoints

GET

Checkout through PayPal

  • Controller->PayPal

GET

Checkout through Instamojo

  • Controller->Instamojo

POST

Checkout through Stripe

  • Controller->stripe

GET

The page to be navigated on successful checkout

  • Controller->Success

GET

This is used by paypal to process the payment

  • Controller->process

GET

Used for instamojo to process the payment

  • Controller->processInstamojo

GET

This is fired when the payment request is cancelled by the user

Payment Method Endpoints

GET

Get all added payment methods by Admin

  • Role->Admin

GET

List of all payment methods available in admin panel

GET

Get a list of all active payment-methods.

  • Role->User

POST

Admin can create a new payment-method.

  • Role->Admin

PUT

Admin can modify the payment-method

  • Role->Admin
  • param :id=document id of payment-method to be updated

PATCH

Admin is authorized to modify the payment-method

  • Role->Admin
  • param :id=document id of payment-method to be updated

DELETE

Admin can delete the specific payment-method by passing the payment-method id.

  • Role->Admin
  • param :id=payment-method id of payment-method to be deleted

Product Endpoints

GET

Get all products that belong to me (vendor)

  • Role->Vendor

GET

Get all products including returned records count for product listing page of the store front. The list is restricted to 30 initially but the limit can be changed by passing {param :{limit:100}}

GET

Get all products for vendor. The list is restricted to 30 initially but the limit can be changed by passing {param :{limit:100}}

  • Controller->All

GET

Get details of a product by passing product id (mainly for product details page).

  • param :id->product document id of a product can be viewed

GET

Get price range of entire store (min price - max price)

GET

Search all products under a particucar brand (Here bran is provided as search term) If I search for lore this shoudl list all products under loreal brand

GET

Get the requested product details including brand details and category details

  • param :id->product document id of product can be viewed

GET

Get all products matching the search query q

PUT

Vendor can change the product by passing product id, updated product details.

  • Role->Vendor
  • param :id=document id of product to be updated

PATCH

Vendor can change the product document by passing product id, updated product details.

  • Role->Vendor
  • param :id=document id of product to be updated

DELETE

Vendor can delete specific product by passing the product id.

  • Role->Vendor
  • param :id=product id of product to be deleted

Review Endpoints

GET

View details of a user's own reviews

  • Role->User

GET

View details of a review document by passing review id.

  • param :id->review document id of review can be viewed

GET

Get all reviews group by product

GET

Get details of reviews against a single product

  • param :id=review document id of review can be viewed

GET

Get review details for if that review was made by me

  • Role->User
  • param :id=document id of review can be viewed

POST

Create a new review

  • Role->User

PUT

Manager can change review by passing review id, new review details.

  • Role->Manager
  • param :id=document id of review to be updated

PATCH

Manager can change review by passing review id, new review details.

  • Role->Manager
  • param :id=document id of review to be updated

PUT

Update vote count when the up-arrow pressed at the product details page

  • Role->User param :id=document id of settings to be updated

DELETE

User can delete his own review on product

  • Role->User
  • param :id=review id of review to be deleted

Setting Endpoints

GET

List all settings for admin to manage.

  • Role->Admin

GET

Query all the settings for public. This excludes settings id and metadata.

  • Controller->Public

GET

View details of a setting. Query a single settings

  • :id->settings

POST

Admin can create a new settings.

  • Role->admin

PUT

Manager can change settings by passing settings id, updated settings object.

  • Role->Manager
  • param :id=document id of settings to be updated

PATCH

Manager can change the settings by passing document id, updated settings object.

  • Role->Manager
  • param :id=document id of settings to be updated

DELETE

Admin can delete specific settings by passing the settings id.

  • Role->Admin
  • param :id=document id of settings to be deleted

Shipping Endpoints

GET

View all shipping methods added by Admin

  • Role->Admin

GET

Get all shipping methods available at the shop. This is available to public

GET

View details of a shipping method by passing shipping id.

  • Role->Manager
  • param :id=document id of shipping can be viewed

GET

Find best shipping method against a cart value

POST

Manager can add a new shipping method.

  • Role->Manager

PUT

Manager can change shipping method by passing shipping id, new shipping object.

  • Role->Manager
  • param :id=document id of shipping to be updated

PATCH

Manager can change shipping details by passing shipping id, new shipping object.

  • Role->Manager
  • param :id=document id of shipping to be updated

DELETE

Manager can delete the specific shipping method by passing the shipping id.

  • Role->manager
  • param :id=shipping id of shipping to be deleted

User Endpoints

GET

Get all users

  • Role-> Vendor,Manager,Admin

GET

Get all users. This is only for Manager

  • Role->Manager

GET

View details of a user by passing user id.

  • Role->User
  • param :id=document id of users can be viewed.

GET

Check the phone number whether it is already registered

  • Role->User

GET

View list of users searched by passing a search query.

PUT

User can change his own password

  • Role->User

PUT

User can update his own profile.

  • Role->User

PUT

Manager can change user details by passing user id.

  • param :id=document id of user to be updated

POST

Signup process of a new User.

POST

OTP is sent to user mobile

POST

User's Forgot password section.

POST

User's Reset password section

DELETE

Admin can delete the specific user by passing the users id.

  • Role->Admin
  • param :id=user id of user to be deleted

Wishlist Endpoints

GET

Get my wishlist (loggedin users product wishlist).

  • Role->User

GET

Get all wishlists for Manager

  • Role->Manager

GET

View details of a wishlist by passing wishlist id.

  • param :id=document id of wishlist to be viewed
  • Role->Manager

GET

Find whether the specified product and variant combination is there in the logged in users wishlist

  • Role->User

POST

Create(if not exist) or Remove(If exists) wishlist. Here required params are product id and variant id. Condition: User should be logged in

POST

Create(if not exist) wishlist. Here required params are product id and variant id. Condition: User should be logged in

POST

Remove(If exists) wishlist. Here required params are product id and variant id. Condition: User should be logged in

PUT

Manager can change wishlist by passing wishlist id.

  • Role->Manager
  • param :id=document id of wislist to be updated

PATCH

Manager can change the wishlist document by passing wishlist id.

  • Role->Manager
  • param :id=wishlist document id of wishlist to be updated

DELETE

Manager can delete specific the wishlist by passing the wishlist id.

  • Role->Manager
  • param :id=wishlist id of wishlist to be deleted

GET

Get details of my wishlist be passing the wishlist id

  • Role->User
  • :id->Wishlist