Skip to content

Latest commit

 

History

History
1111 lines (919 loc) · 34.3 KB

api.md

File metadata and controls

1111 lines (919 loc) · 34.3 KB
title date
API Documentation
2019-06-17 23:40:12 -0700

API Documentation

Address Endpoint

::: warning GET

Get all addresses of logged in users

  • Role->User :::

::: warning GET

Get all addresses stored in databse irrespective of userid

  • Role->Admin :::

::: warning GET

Update a single address document

  • Role->User
  • :id->address :::

::: warning POST

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

  • Role->User :::

::: warning PUT

User can update his own address by passing the document ID

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

::: warning PATCH

User can change the addresses details by passing address id.

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

:::

::: warning DELETE

User can delete specific address by passing the address id.

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

Brand Endpoints

::: warning GET

List all brands for public :::

::: warning GET

View details of a brand document by passing brand id.

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

::: warning POST

Manager can create a new brand document.

  • Role->Manager :::

::: warning PUT

Manager can change brand details by passing brand id.

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

::: warning PATCH

Manager can change the brand details by passing brand id.

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

::: warning DELETE

Admin can delete specific brand by passing the brand id.

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

Cart Endpoints

::: warning GET

Get cart items saved for the user

  • Role->User :::

::: warning POST

Save cart items of user into database for accessing across devices

  • Role->User :::

:::

Category Endpoints

::: warning GET

Get all category for public :::

::: warning GET

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

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

::: warning GET

Get all categories including childrens :::

::: warning GET

Get all categories in a single level without parent child relationship :::

::: warning GET

Get all root level categories :::

::: warning GET

Get all categories containing atleast 1 product :::

::: warning GET

All categories having no parent :::

::: warning POST

Manager can create a new category document.

  • Role->Manager :::

::: warning PUT

This removes all categories and inserts the modified categories again

  • Role->Manager

:::

::: warning 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 :::

::: warning 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 :::

::: warning DELETE

Delete parent category (dangarous)

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

Contact Endpoints

::: warning GET

view details of a perticular user's contact document.

  • Role->User :::

::: warning GET

View details of a contact document managed by Manager.

  • Role->Manager :::

::: warning GET

View details of a contact document by passing contact id.

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

::: warning POST

Manager can create a new contact document.

  • Role->Manager :::

::: warning PUT

Manager can change contacts by passing contact id.

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

::: warning PATCH

User can change the contact document by passing contact id.

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

::: warning DELETE

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

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

Coupon Endpoints

::: warning GET

All coupons generated by vendor

  • Role->Vendor :::

::: warning GET

Get all coupons for available in webiste for public :::

::: warning GET

View details of a coupon by passing coupon id.

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

::: warning POST

Admin can create a new coupon

  • Role->Admin :::

::: warning PUT

Admin can update coupon details by passing coupon id.

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

::: warning PATCH

Admin can update coupon details by passing coupon id.

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

::: warning DELETE

Admin can delete specific coupon by passing the coupon id.

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

Customer Endpoints

::: warning GET

Vendor's can see details of their customers.

  • Role->Vendor :::

::: warning GET

Get all customers

  • Role->Manager :::

::: warning GET

View details of a customer by passing customer id.

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

::: warning POST

Manager allowed to create a new customer document.

  • Role->Manager :::

::: warning PUT

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

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

::: warning 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 :::

::: warning 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

::: warning POST

Send contactus email to website admin

  • Role->User :::

Features Endpoints

::: warning GET

View details of a feature document added by corresponding vendor.

  • Role->User :::

::: warning GET

View details of all feature document. :::

::: warning GET

View details of a feature document by passing feature id.

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

::: warning GET

View details of a feature's group document. :::

::: warning GET

View details of a feature document by passing feature id.

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

::: warning POST

Manager can create a new feature document.

  • Role->Manager :::

::: warning PUT

Manager can change feature by passing feature id.

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

::: warning PATCH

Manager can change the feature document by passing feature id.

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

::: warning DELETE

Manager can delete specific features by passing the feature id.

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

Feedback Endpoints

::: warning GET

View all feedbacks received.

  • Role->Manager :::

::: warning GET

View details of a feedback document by passing feedback id.

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

::: warning POST

Admin can create a new feedback.

  • Role->Admin :::

::: warning PUT

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

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

::: warning 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 :::

::: warning 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

::: warning GET

Get of all uploaded images by the corresponding user

  • Role->User :::

::: warning POST

Add a new image

  • Role->User :::

::: warning POST

Create a new banner document.

  • Role->Manager :::

::: warning POST

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

  • Role->Manager :::

::: warning GET

Get all images for public

  • Role->User :::

::: warning GET

View details of a media document by passing media id.

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

::: warning PUT

Manager can change the media details by passing media id.

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

::: warning PATCH

Manager can change the media document by passing media id.

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

::: warning 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

::: warning GET

Get list of all orders placed by the corresponding user

  • Role->User :::

::: warning GET

Get total order count

  • Role->Vendor :::

::: warning GET

Get order Stratus Summary for admin dashboard

  • Role->Vendor :::

::: warning GET

View list of new activities for admin dashboard.

  • Role->Vendor :::

::: warning GET

Get list of all orders

  • Role->Vendor :::

::: warning GET

Get list of all pending orders

  • Role->Shipper :::

::: warning GET

Get list of all shipped orders

  • Role->vendor :::

::: warning GET

List of all cancelled orders

  • Role->Vendor :::

::: warning GET

Get all orders that are delivered

  • Role->Vendor :::

::: warning GET

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

::: warning GET

View details of a order by passing order id.

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

::: warning POST

User can create a new order through checkout process

  • Role->User :::

::: warning PUT

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

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

::: warning 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 :::

::: warning 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

::: warning GET

All pages that are created by corresponding Managers

  • Role->Manager :::

::: warning GET

Get list of all pages :::

::: warning GET

Get page details

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

::: warning POST

Manager are allowed to create a new page

  • Role->Manager :::

::: warning 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 :::

::: warning PATCH

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

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

::: warning 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

::: warning GET

Checkout through PayPal

  • Controller->PayPal :::

::: warning GET

Checkout through Instamojo

  • Controller->Instamojo :::

::: warning POST

Checkout through Stripe

  • Controller->stripe :::

::: warning GET

The page to be navigated on successful checkout

  • Controller->Success :::

::: warning GET

This is used by paypal to process the payment

  • Controller->process :::

::: warning GET

Used for instamojo to process the payment

  • Controller->processInstamojo :::

::: warning GET

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

:::

Payment Method Endpoints

::: warning GET

Get all added payment methods by Admin

  • Role->Admin :::

::: warning GET

List of all payment methods available in admin panel

:::

::: warning GET

Get a list of all active payment-methods.

  • Role->User :::

::: warning POST

Admin can create a new payment-method.

  • Role->Admin :::

::: warning PUT

Admin can modify the payment-method

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

::: warning PATCH

Admin is authorized to modify the payment-method

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

::: warning 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

::: warning GET

Get all products that belong to me (vendor)

  • Role->Vendor :::

::: warning 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}} :::

::: warning 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 :::

::: warning 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 :::

::: warning GET

Get all products count :::

::: warning GET

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

::: warning 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 :::

::: warning GET

Get the requested product details including brand details and category details

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

::: warning GET

Get all products matching the search query q :::

::: warning POST

Create a new product :::

::: warning PUT

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

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

::: warning 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 :::

::: warning DELETE

Vendor can delete specific product by passing the product id.

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

Review Endpoints

::: warning GET

View details of a user's own reviews

  • Role->User :::

::: warning GET

Get all reviews :::

::: warning GET

View details of a review document by passing review id.

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

::: warning GET

Get all reviews group by product :::

::: warning GET

Get details of reviews against a single product

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

::: warning GET

Get review details for if that review was made by me

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

::: warning POST

Create a new review

  • Role->User :::

::: warning PUT

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

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

::: warning PATCH

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

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

::: warning 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 :::

::: warning DELETE

User can delete his own review on product

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

Setting Endpoints

::: warning GET

List all settings for admin to manage.

  • Role->Admin :::

::: warning GET

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

  • Controller->Public :::

::: warning GET

View details of a setting. Query a single settings

  • :id->settings :::

::: warning POST

Admin can create a new settings.

  • Role->admin :::

::: warning PUT

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

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

::: warning PATCH

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

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

::: warning DELETE

Admin can delete specific settings by passing the settings id.

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

Shipping Endpoints

::: warning GET

View all shipping methods added by Admin

  • Role->Admin :::

::: warning GET

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

::: warning GET

View details of a shipping method by passing shipping id.

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

::: warning GET

Find best shipping method against a cart value :::

::: warning POST

Manager can add a new shipping method.

  • Role->Manager :::

::: warning PUT

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

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

::: warning PATCH

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

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

::: warning 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

::: warning GET

Get all users

  • Role-> Vendor,Manager,Admin :::

::: warning GET

Get all users. This is only for Manager

  • Role->Manager :::

::: warning GET

View details of a user by passing user id.

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

::: warning GET

Check the phone number whether it is already registered

  • Role->User :::

::: warning GET

View list of users searched by passing a search query. :::

::: warning PUT

User can change his own password

  • Role->User :::

::: warning PUT

User can update his own profile.

  • Role->User :::

::: warning PUT

Manager can change user details by passing user id.

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

::: warning POST

Signup process of a new User. :::

::: warning POST

OTP is sent to user mobile :::

::: warning POST

User's Forgot password section. :::

::: warning POST

User's Reset password section :::

::: warning 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

::: warning GET

Get my wishlist (loggedin users product wishlist).

  • Role->User :::

::: warning GET

Get all wishlists for Manager

  • Role->Manager :::

::: warning GET

View details of a wishlist by passing wishlist id.

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

::: warning GET

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

  • Role->User :::

::: warning 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 :::

::: warning POST

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

::: warning POST

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

::: warning PUT

Manager can change wishlist by passing wishlist id.

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

::: warning PATCH

Manager can change the wishlist document by passing wishlist id.

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

::: warning DELETE

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

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

::: warning GET

Get details of my wishlist be passing the wishlist id

  • Role->User
  • :id->Wishlist :::