PriceBD App Api Documentation

BaseURL: https://devilarticle.com

1. Auth API:

There are 3 way you can implement login functionality:

Step_01: If you didn’t register yet then serially call API: Register -> VerifyOTPCode -> Login

Step_02: If you want to SignUp with google then just call GoogleSignUp API after authentication from goole.

Step_03: If you are registered already just call Login API

NB: After got success message one API then move another API call.

  1. POST: BaseURL/api/Auth/Register?name=xyz&email=xyz@gmail.com&password=xyz
Request parameter:

 "name": "string",
 "email": "string",
 "password": "string"
 
With Request Body:

"formfile": UIImage //it's user image which type will be UIImage
Response body:

{
    "status": 201,
    "message": "User Register succussfully",
    "results": {
        "id": 27,
        "name": "xyzzy",
        "email": "xyz@gmail.com",
        "phone": "",
        "imageURL": "https://devilarticle.com/api/Auth/download?filecode=93ea0368-f6b8-4661-8fc7-96837cfe39d9",
        "passwordHash": "$2a$11$rEC6gJCg.R9TefXyUpL9wOItDMMduC2z9dR.ge8gTsJ1y4fr257yq",
        "isVerified": false
    }
}

2. POST: BaseURL/api/Auth/VerifyOTPCode?code=554945&email=xyz@gmail.com

Request parameter:

"code": "string"
"email": "string"
Response body:

{
  "status": 200,
  "message": "User Email Verified succussfully",
  "results": {
    "id": 1,
    "name": "xyz",
    "email": "xyz@gmail.com",
    "password": "$2a$11$2Yjts41Tqb/HmVF0TawpQeW8ic/daSFlmfqT86G6LFA1xdyNHdswu"
  }
}

3. POST: BaseURL/api/Auth/Login?email=xyz@gmail.com&password=123456

Request body:

{
  "email": "string",
  "password": "string"
}
Response body:

{
    "status": 200,
    "message": "User login successfully",
    "results": {
        "id": 23,
        "name": "xyz",
        "email": "xyz@gmail.com",
        "phone": "",
        "imageURL": "https://devilarticle.com/api/Auth/download?filecode=89c2bf15-807c-4141-ba46-8a0afe19ccdb",
        "passwordHash": "$2a$11$SwpyAMsEMiGdgn9pPQIygu8Dta6SnBuBsosS2B6rfuSTl/3/P19C2",
        "isVerified": true
    }
}

4. POST: BaseURL/api/Auth/ForgetPassword?email=xyz@gmail.com

Request parameter:

"email": "string"
Response body:

{
  "status": 200,
  "message": "Sent OTP successfully",
  "results": null
}

5. POST: BaseURL/api/Auth/NewPassword?password=123456&email=xyz@gmail.com

Request parameter:

"password": "string"
"email": "string"
Response body:

{
  "status": 200,
  "message": "User password changed succussfully",
  "results": null
}



8. POST: BaseURL/api/Auth/GoogleSignUp?imageUrl=mmm&name=xyz&email=xyz@gmail.com

Request parameter:

  "name": xyz,
  "email": "xyz@gmail.com",
  "imageUrl": "https://www.devilarticle.com"
Response body:

{
    "status": 200,
    "message": "User login successfully",
    "results": {
        "id": 23,
        "name": "xyz",
        "email": "xyz@gmail.com",
        "phone": "",
        "imageURL": "https://devilarticle.com/api/Auth/download?filecode=89c2bf15-807c-4141-ba46-8a0afe19ccdb",
        "passwordHash": "$2a$11$SwpyAMsEMiGdgn9pPQIygu8Dta6SnBuBsosS2B6rfuSTl/3/P19C2",
        "isVerified": true
    }
}

9. POST: BaseURL/api/Auth/UpdateProfile?userId=9&name=Jony&phone=0176XXXXX&imageURL=https://www.youtube.com

Request parameter:

"userId": "Int"
"name": "string"
"phone": "string"
"imageURL": "string"
Response body:

{
  "status": 200,
  "message": "Data updated successfully",
  "results": null
}

2. Categories API:

Here, you can use pagination. Send pageNumber & pageSize with parameter for get data. Here pageSize means how many data do you want at a time one request. If you want load more data then increase pageNumber value.

  1. GET: BaseURL/api/PTA/Category/GetAllCategory?page=1&pageSize=10
Request parameter:

"page": "Int"
"pageSize": "Int"
Response body:

{
    "status": 200,
    "message": "Data found successfully",
    "results": [
        {
            "id": 11,
            "title": "Vegetables",
            "imageURL": "https://devilarticle.com/api/PTA/Category/download/download?filecode=21506aba-5569-4819-bb7c-62217fa62c23",
            "productModel": null
        }
    ]
}

3. Product API:

Here, you can use pagination. Send pageNumber & pageSize with parameter for get data. Here pageSize means how many data do you want at a time one request. If you want load more data then increase pageNumber value.
And also send categoryId for fetching specific category products.

  1. GET: BaseURL/api/PTA/Product/GetAllProduct?page=1&pageSize=10&categoryId=14
Request parameter:

"page": "Int"
"pageSize": "Int"
"categoryId": "Int"
Response body:

{
    "status": 200,
    "message": "Data found successfully",
    "results": [
        {
            "id": 22,
            "categoryModelId": 14,
            "title": "Cream Milk",
            "description": "Full Cream Milk (Whole Milk) is a type of plain milk. It is creamier in texture and contain nutrients that are available naturally in milk but has also been fortified with added nutrients such as Vitamin D & A to cater to different nutritional needs of the society.",
            "previousPrice": 210,
            "currentPrice": 210,
            "priceUpdated": "Sunday, 10 December 2023",
            "imageURL": "https://devilarticle.com/api/PTA/Product/download/download?filecode=b86fb346-ad2d-4d73-95ec-f92af383fad0",
            "totalComment": 0,
            "commentModel": null
        }
    ]
}

4. Comment API:

Here, you can use pagination. Send pageNumber & pageSize with parameter for get data. Here pageSize means how many data do you want at a time one request. If you want load more data then increase pageNumber value.
And also send userId. If user didn’t login then send userId = 0 otherwise send userId.

  1. GET: BaseURL/api/PTA/Comment/GetAllComment?page=1&pageSize=5&productId=9&userId=0
Request parameter:

"page": "Int"
"pageSize": "Int"
"productId": "Int"
"userId": "Int" /// If user didn't login then sent userId = 0
Response body:

{
    "status": 200,
    "message": "Data found successfully",
    "results": [
        {
            "id": 22,
            "productModelId": 9,
            "userId": 26,
            "userName": "Md Joynal",
            "userImageURL": "https://lh3.googleusercontent.com/a/ACg8ocLYmPoczoC8ZLn9wwZErp8ELbKkXP7CQcFyW2Canud7jA=s100",
            "isLiked": false,
            "totalLike": 1,
            "comment": "Hi 1st comment",
            "totalComment": 2,
            "totalReply": 0,
            "likeModel": null,
            "replyModel": null
        }
    ]
}

2. POST: BaseURL/api/PTA/Comment/PostComment?productModelId=22&userId=26&comment=comment test

Request parameter:

"productModelId": "Int"
"userId": "Int"
"comment": "String"
Response body:

{
    "status": 201,
    "message": "Comment added successfully",
    "results": {
        "id": 24,
        "productModelId": 22,
        "userId": 26,
        "userName": "Md Joynal",
        "userImageURL": "https://lh3.googleusercontent.com/a/ACg8ocLYmPoczoC8ZLn9wwZErp8ELbKkXP7CQcFyW2Canud7jA=s100",
        "isLiked": false,
        "totalLike": 0,
        "comment": "comment test",
        "totalComment": 0,
        "totalReply": 0,
        "likeModel": null,
        "replyModel": null
    }
}

3. POST: BaseURL/api/PTA/Comment/UpdateComment?id=22&comment=updated comment

Request parameter:

"id": "Int"
"comment": "String"
Response body:

{
    "status": 200,
    "message": "Data updated successfully",
    "results": {
        "id": 22,
        "productModelId": 9,
        "userId": 26,
        "userName": "Md Joynal",
        "userImageURL": "https://lh3.googleusercontent.com/a/ACg8ocLYmPoczoC8ZLn9wwZErp8ELbKkXP7CQcFyW2Canud7jA=s100",
        "isLiked": false,
        "totalLike": 1,
        "comment": "updated comment",
        "totalComment": 0,
        "totalReply": 0,
        "likeModel": null,
        "replyModel": null
    }
}

5. Reply API:

Here, you can use pagination. Send pageNumber & pageSize with parameter for get data. Here pageSize means how many data do you want at a time one request. If you want load more data then increase pageNumber value.
And also send commentId, userId. If user didn’t login then send userId = 0 otherwise send userId.

  1. GET: BaseURL/api/PTA/Reply/GetAllReply?page=1&pageSize=20&commentId=23&userId=0
Request parameter:

"page": "Int"
"pageSize": "Int"
"commentId": "Int"
"userId": "Int" /// If user didn't login then sent userId = 0
Response body:

{
    "status": 200,
    "message": "Data found successfully",
    "results": [
        {
            "id": 15,
            "commentModelId": 23,
            "userId": 26,
            "userName": "Md Joynal",
            "userImageURL": "https://lh3.googleusercontent.com/a/ACg8ocLYmPoczoC8ZLn9wwZErp8ELbKkXP7CQcFyW2Canud7jA=s100",
            "isLiked": false,
            "totalLike": 1,
            "reply": "Nice 1st reply",
            "totalReply": 1,
            "likeModel": null
        }
    ]
}

2. GET: BaseURL/api/PTA/Reply/PostReply?commentModelId=22&userId=26&reply=reply Tst

Request parameter:

"commentModelId": "Int"
"userId": "Int"
"reply": "String"
Response body:

{
    "status": 201,
    "message": "Reply added successfully",
    "results": {
        "id": 16,
        "commentModelId": 22,
        "userId": 26,
        "userName": "Md Joynal",
        "userImageURL": "https://lh3.googleusercontent.com/a/ACg8ocLYmPoczoC8ZLn9wwZErp8ELbKkXP7CQcFyW2Canud7jA=s100",
        "isLiked": false,
        "totalLike": 0,
        "reply": "reply Tst",
        "totalReply": 0,
        "likeModel": null
    }
}

3. POST: BaseURL/api/PTA/Reply/UpdateReply?id=15&reply=update reply

Request parameter:

"id": "Int"
"reply": "String"
Response body:

{
    "status": 200,
    "message": "Data updated successfully",
    "results": {
        "id": 15,
        "commentModelId": 23,
        "userId": 26,
        "userName": "Md Joynal",
        "userImageURL": "https://lh3.googleusercontent.com/a/ACg8ocLYmPoczoC8ZLn9wwZErp8ELbKkXP7CQcFyW2Canud7jA=s100",
        "isLiked": false,
        "totalLike": 1,
        "reply": "update reply",
        "totalReply": 0,
        "likeModel": null
    }
}

6. Like API:

  1. GET: BaseURL/api/PTA/Like/GetAllCommentLike?commentId=22&page=1&pageSize=10
Request parameter:

"commentId": "Int"
"page": "Int"
"pageSize": "Int"
Response body:

{
    "status": 200,
    "message": "Data get successfully",
    "results": [
        {
            "id": 23,
            "commentModelId": 22,
            "replyModelId": null,
            "userId": 26,
            "userName": "Md Joynal",
            "userImageURL": "https://lh3.googleusercontent.com/a/ACg8ocLYmPoczoC8ZLn9wwZErp8ELbKkXP7CQcFyW2Canud7jA=s100"
        }
    ]
}

2. POST: BaseURL/api/PTA/Like/CommentLike?commentId=23&like=true&userId=26

Request parameter:

"commentId": "Int"
"like": "Bool"
"userId": "Int"
Response body:

{
    "status": 200,
    "message": "Data updated successfully",
    "results": {
        "id": 25,
        "commentModelId": 23,
        "replyModelId": null,
        "userId": 26,
        "userName": "Md Joynal",
        "userImageURL": "https://lh3.googleusercontent.com/a/ACg8ocLYmPoczoC8ZLn9wwZErp8ELbKkXP7CQcFyW2Canud7jA=s100"
    }
}

3. GET: BaseURL/api/PTA/Like/GetAllReplyLike?replyId=16&page=1&pageSize=10

Request parameter:

"replyId": "Int"
"page": "Int"
"pageSize": "Int"
Response body:

{
    "status": 200,
    "message": "Data get successfully",
    "results": [
        {
            "id": 27,
            "commentModelId": null,
            "replyModelId": 16,
            "userId": 23,
            "userName": "John Jackles",
            "userImageURL": "https://devilarticle.com/api/Auth/download?filecode=89c2bf15-807c-4141-ba46-8a0afe19ccdb"
        }
    ]
}

4. POST: BaseURL/api/PTA/Like/ReplyLike?userId=23&replyId=16&like=true

Request parameter:

"userId": "Int"
"replyId": "Int"
"like": "Bool"
Response body:

{
    "status": 200,
    "message": "Data updated successfully",
    "results": {
        "id": 27,
        "commentModelId": null,
        "replyModelId": 16,
        "userId": 23,
        "userName": "John Jackles",
        "userImageURL": "https://devilarticle.com/api/Auth/download?filecode=89c2bf15-807c-4141-ba46-8a0afe19ccdb"
    }
}

7. Report API:

  1. GET: BaseURL/api/PTA/Report/GetAllReport?page=1&pageSize=100&userId=23
Request parameter:

"page": "Int"
"pageSize": "Int"
"userId": "Int"
Response body:

{
    "status": 200,
    "message": "Data found successfully",
    "results": [
        {
            "id": 13,
            "userId": 23,
            "productTitle": "low price",
            "productDescription": "SwiftUI’s refreshable() modifier lets you attach functionality to a List to be triggered when the user drags down far enough. iOS will automatically show an activity indicator for as long as it takes for your code to finish running.",
            "reporterName": "Joy Ahasan",
            "reporterAddress": "mirpur bangaldesh",
            "reportDate": "2023-11-29 20:43:11.2478750",
            "imagesURL": "https://devilarticle.com/api/PTA/Report/download/download?filecode=786e8e43-9ae2-4aa6-a06b-099f2bd97a9e",
            "totalReport": 6
        }
    ]
}

2. POST: BaseURL/api/PTA/Report/PostReport?userId=23&productTitle=low price&productDescription=SwiftUI’s refreshable() modifier&reporterName=Joy Ahasan&reporterAddress=mirpur bangaldesh

Request parameter:

"userId": "String"
"productTitle": "String"
"productDescription": "String"
"reporterName": "String"
"reporterAddress": "String"
Response body:

{
    "status": 201,
    "message": "Report added successfully",
    "results": {
        "id": 19,
        "userId": 23,
        "productTitle": "low price",
        "productDescription": "SwiftUI’s refreshable() modifier lets you attach functionality to a List to be triggered when the user drags down far enough. iOS will automatically show an activity indicator for as long as it takes for your code to finish running.",
        "reporterName": "Joy Ahasan",
        "reporterAddress": "mirpur bangaldesh",
        "reportDate": "Monday, 11 December 2023",
        "imagesURL": "https://devilarticle.com/api/PTA/Report/download/download?filecode=47d04ad2-bb83-4c62-9c64-07d29616eaef",
        "totalReport": 0
    }
}

3. GET: BaseURL/api/PTA/Report/SearchReportResource?name=a&page=1&pageSize=10&userId=23

Request parameter:

"name": "Int"
"page": "Int"
"pageSize": "Int"
"userId": "Int"
Response body:

{
    "status": 200,
    "message": "Data found successfully",
    "results": [
        {
            "id": 13,
            "userId": 23,
            "productTitle": "low price",
            "productDescription": "SwiftUI’s refreshable() modifier lets you attach functionality to a List to be triggered when the user drags down far enough. iOS will automatically show an activity indicator for as long as it takes for your code to finish running.",
            "reporterName": "Joy Ahasan",
            "reporterAddress": "mirpur bangaldesh",
            "reportDate": "2023-11-29 20:43:11.2478750",
            "imagesURL": "https://devilarticle.com/api/PTA/Report/download/download?filecode=786e8e43-9ae2-4aa6-a06b-099f2bd97a9e",
            "totalReport": 0
        }
    ]
}

8. Notification API:

  1. GET: BaseURL/api/PTA/Notification/GetAllNotification?page=1&pageSize=10&userId=1
Request parameter:

"page": "Int"
"pageSize": "Int"
"userId": "Int"
Response body:

{
    "status": 200,
    "message": "Data found successfully",
    "results": [
        {
            "id": 5,
            "reportModelId": 10,
            "reportNumber": "dcaff3a4-a94c-4df1-9916-700fed0d97d9",
            "reportTitle": "fg ",
            "reportStatus": "checking",
            "notificationTime": "2023-11-24 18:58:06.7955960",
            "userId": 1,
            "imageURL": "",
            "description": "",
            "totalNotification": 4
        }
    ]
}

2. GET: BaseURL/api/PTA/Notification/SearchNotificationResource?name=a&page=1&pageSize=10&userId=23

Request parameter:

"name": "String"
"page": "Int"
"pageSize": "Int"
"userId": "Int"
Response body:

{
    "status": 200,
    "message": "Data found successfully",
    "results": [
        {
            "id": 10,
            "reportModelId": 14,
            "reportNumber": "c390f284-7f9c-4367-b0e1-801e50e23d8a",
            "reportTitle": "Date per product",
            "reportStatus": "Submited",
            "notificationTime": "2023-11-29 22:36:01.7822830",
            "userId": 23,
            "imageURL": "https://devilarticle.com/api/PTA/Report/download/download?filecode=706d93c1-14e1-4879-a111-c3fb4e1bcc0e",
            "description": "Here they sell date over product.",
            "totalNotification": 0
        }
    ]
}

58 thoughts on “PriceBD App Api Documentation

Leave a Reply

Your email address will not be published. Required fields are marked *