# Shop Management APIs

# Brand API

# Create brand

Method: POST
Path: /shopmgmt/api/weshop/brands
Description: Create a new brand, require client scope as below.

Client Scope:
- ws.brand.w

Authority: -

Request Header:

Param Description Required Example
Authorization The OAuth2 authentication with the O2O System Y Bearer {O2O Access Token}
Content-Type The MIME type of this content Y application/json

Request Body:

Param Description Type Required
data The attributes and values of brand content Object Y
data.merchantId Id of merchant or Id of brands String Y
data.nameTh Name of brand in Thai String N
data.nameEn Name of brand in English String N
data.onlineStatus Online status of brand String Y
data.socialLine Line id of brand String N
data.tsmMerchantId merchant id of true smart merchant String N
data.subCategoryId Sub category id of brand String N
data.subCategoryDescription Sub category description of brand String N
data.categoryDescription Description of brand category String N
data.socialFacebook Url social facebook String N
data.logoImage Brand logo image String N
data.socialInstagram Instagram of brand String N
data.socialWebsite Url website String N
data.socialTwitter Twitter of brand String N
data.categoryId Category Id of brand String N

Request Body Example:

{
	 "data": {
            "merchantId": "595292",
            "nameTh": "ข้าวแกง",
            "nameEn": "khao kang",
            "tsmMerchantId": "0346321",
            "onlineStatus": "true",
            "socialLine": "",
            "subCategoryId": "5812",
            "subCategoryDescription": "อาหาร",
            "categoryDescription": "อาหารและเครื่องดื่ม",
            "socialFacebook": "https://www.facebook.com/",
            "logoImage": null,
            "socialInstagram": "",
            "socialWebsite": "",
            "socialTwitter": "",
            "categoryId": "5948d60ee1382323583e31c7"
        }
}

Request Example:

curl -X POST \
--header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer {O2O Access Token}' -d '{ \ 
 	 "data": { \ 
             "merchantId": "595292", \ 
             "nameTh": "ข้าวแกง", \ 
             "nameEn": "khao kang", \ 
             "tsmMerchantId": "0346321", \ 
             "onlineStatus": "true", \ 
             "socialLine": "", \ 
             "subCategoryId": "5812", \ 
             "subCategoryDescription": "อาหาร", \ 
             "categoryDescription": "อาหารและเครื่องดื่ม", \ 
             "socialFacebook": "https://www.facebook.com/", \ 
             "logoImage": null, \ 
             "socialInstagram": "", \ 
             "socialWebsite": "", \ 
             "socialTwitter": "", \ 
             "categoryId": "5948d60ee1382323583e31c7" \ 
         } \ 
 }' 'https://dev-platform.weomni-test.com/shopmgmt/api/weshop/brands'

Response Example:

HTTP/1.1 201 CREATED
Content-Type: application/json
{
    "createdBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
    "createdDate": "2020-06-15T08:04:58.090Z",
    "lastModifiedBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
    "lastModifiedDate": "2020-06-15T08:04:58.090Z",
    "createdByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
    "lastModifiedByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
    "id": "5ee72baaeb96da000135858f",
    "projectId": "5d42a4b6f085380001da6a63",
    "data": {
        "nameTh": "ข้าวแกง",
        "tsmMerchantId": "0346321",
        "onlineStatus": "true",
        "socialLine": "",
        "nameEn": "khao kang",
        "subCategoryId": "5812",
        "subCategoryDescription": "อาหาร",
        "categoryDescription": "อาหารและเครื่องดื่ม",
        "socialFacebook": "https://www.facebook.com/",
        "logoImage": null,
        "merchantId": "595292",
        "socialInstagram": "",
        "socialWebsite": "",
        "socialTwitter": "",
        "categoryId": "5948d60ee1382323583e31c7"
    }
}

# Update brand

Method: PUT
Path: /shopmgmt/api/weshop/brands/{id}
Description: Update a exist brand, require client scope as below.

Client Scope:
- ws.brand.w

Authority: -

Request Header:

Param Description Required Example
Authorization The OAuth2 authentication with the O2O System Y Bearer {O2O Access Token}
Content-Type The MIME type of this content Y application/json

Request Body:

Param Description Type Required
data The attributes and values of brand content Object Y
data.merchantId Id of merchant or Id of brands String Y
data.onlineStatus Online status of brand String Y
data.nameTh Name of brand in Thai String N
data.nameEn Name of brand in English String N
data.socialLine Line id of brand String N
data.tsmMerchantId merchant id of true smart merchant String N
data.subCategoryId Sub category id of brand String N
data.subCategoryDescription Sub category description of brand String N
data.categoryDescription Description of brand category String N
data.socialFacebook Url social facebook String N
data.logoImage Brand logo image String N
data.socialInstagram Instagram of brand String N
data.socialWebsite Url website String N
data.socialTwitter Twitter of brand String N
data.categoryId Category Id of brand String N

Request Body Example:

{
	 "data": {
            "merchantId": "5952911",
            "nameTh": "ข้าวแกง",
            "nameEn": "khao kang",
            "tsmMerchantId": "0346321",
            "onlineStatus": "true",
            "socialLine": "",
            "subCategoryId": "5812",
            "subCategoryDescription": "อาหาร",
            "categoryDescription": "อาหารและเครื่องดื่ม",
            "socialFacebook": "https://www.facebook.com/",
            "logoImage": null,
            "socialInstagram": "",
            "socialWebsite": "",
            "socialTwitter": "",
            "categoryId": "5948d60ee1382323583e31c7"
        }
}

Request Example:

curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer {O2O Access Token}' -d '{ \ 
 	 "data": { \ 
             "merchantId": "5952911", \ 
             "nameTh": "ข้าวแกงใต้", \ 
             "nameEn": "khao kang", \ 
             "tsmMerchantId": "0346321", \ 
             "onlineStatus": "true", \ 
             "socialLine": "", \ 
             "subCategoryId": "5812", \ 
             "subCategoryDescription": "อาหาร", \ 
             "categoryDescription": "อาหารและเครื่องดื่ม", \ 
             "socialFacebook": "https://www.facebook.com/", \ 
             "logoImage": null, \ 
             "socialInstagram": "", \ 
             "socialWebsite": "", \ 
             "socialTwitter": "", \ 
             "categoryId": "5948d60ee1382323583e31c7" \ 
         } \ 
 }' 'https://dev-platform.weomni-test.com/shopmgmt/api/weshop/brands/5ee72baaeb96da000135858f'

Response Example:

HTTP/1.1 200 OK
Content-Type: application/json
{
      "createdBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "createdDate": "2020-06-15T06:11:06.546Z",
      "lastModifiedBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "lastModifiedDate": "2020-06-15T06:11:39.945Z",
      "createdByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "lastModifiedByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "id": "5ee710fa3508260001d96b8c",
      "projectId": "5d42a4b6f085380001da6a63",
      "data": {
        "nameTh": "ข้าวแกงใต้",
        "tsmMerchantId": "0346321",
        "onlineStatus": "true",
        "socialLine": "",
        "nameEn": "khao kang",
        "subCategoryId": "5812",
        "subCategoryDescription": "อาหาร",
        "categoryDescription": "อาหารและเครื่องดื่ม",
        "socialFacebook": "https://www.facebook.com/",
        "logoImage": null,
        "merchantId": "5952911",
        "socialInstagram": "",
        "socialWebsite": "",
        "socialTwitter": "",
        "categoryId": "5948d60ee1382323583e31c7"
      }
}

# Get brand

Method: GET
Path: /shopmgmt/api/weshop/brands/{id}
Description: Get brand by brandId, require client scope as below.

Client Scope:
- ws.brand.r

Authority: -

Request Header:

Param Description Required Example
Authorization The OAuth2 authentication with the O2O System Y Bearer {O2O Access Token}
Content-Type The MIME type of this content Y application/json

Request Example:

curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer {O2O Access Token}' 'https://dev-platform.weomni-test.com/shopmgmt/api/weshop/brands/5ee72baaeb96da000135858f'

Response Example:

HTTP/1.1 200 OK
Content-Type: application/json
{
      "createdBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "createdDate": "2020-06-15T06:11:06.546Z",
      "lastModifiedBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "lastModifiedDate": "2020-06-15T06:11:39.945Z",
      "createdByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "lastModifiedByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "id": "5ee710fa3508260001d96b8c",
      "projectId": "5d42a4b6f085380001da6a63",
      "data": {
        "nameTh": "ข้าวแกงใต้",
        "tsmMerchantId": "0346321",
        "onlineStatus": "true",
        "socialLine": "",
        "nameEn": "khao kang",
        "subCategoryId": "5812",
        "subCategoryDescription": "อาหาร",
        "categoryDescription": "อาหารและเครื่องดื่ม",
        "socialFacebook": "https://www.facebook.com/",
        "logoImage": null,
        "merchantId": "5952911",
        "socialInstagram": "",
        "socialWebsite": "",
        "socialTwitter": "",
        "categoryId": "5948d60ee1382323583e31c7"
      }
}

# Search brand

Method: GET
Path: /shopmgmt/api/weshop/brands
Description: List all brands or get brand by criteria.

Client Scope:
- ws.brand.r

Authority: -

Request Header:

Param Description Required Example
Authorization The OAuth2 authentication with the O2O System Y Bearer {O2O Access Token}
Content-Type The MIME type of this content Y application/json

Parameter:

Key Description Required Example
data search by attribute name and value N data.merchantId=5952911
page The requested page number to display N page=0
size The page size of the result in response body N size=10
sort Sorting criteria. Default sort order is ascending. Multiple sort criteria are supported. N sort=id,desc
createdBy.<operator_name> search by createdBy that support operator only 'equals' N createdBy.equals=admin
createdDate.<operator_name>. search by createdDate that support operator 'greaterThan', 'greaterOrEqualThan', 'lessThan' and 'lessOrEqualThan' N createdDate.greaterThan='2020-04-16T02:15:11.455Z'
lastModifiedBy.<operator_name> search by lastModifiedBy that support operator only 'equals' N lastModifiedBy.equals=admin
lastModifiedDate.<operator_name> search by lastModifiedDate that support operator 'greaterThan', 'greaterOrEqualThan', 'lessThan' and 'lessOrEqualThan' N lastModifiedDate.greaterOrEqualThan='2020-04-16T02:15:11.455Z'

Operator_Name:

Operator Description Required Example
equals search by key and value N createdBy.equals=admin
greaterThan search date type that can search greater than date in value N createdDate.greaterThan='2020-04-16T02:15:11.455Z'
greaterOrEqualThan search date type that can search greater or equal than date in value N createdDate.greaterOrEqualsThan='2020-04-16T02:15:11.455Z'
lessThan search date type that can search less or equal than date in value N lastModifiedDate.lessThan='2020-04-16T02:15:11.455Z'
lessThanOrEqualThan search date type that can search less or equal than date in value N lastModifiedDate.lessOrEquallThan='2020-04-16T02:15:11.455Z'

Request Example:

curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer {O2O Access Token}' 'https://dev-platform.weomni-test.com/shopmgmt/api/weshop/brands?createdDate.greaterOrEqualThan=2020-06-15T06:11:06.546Z&sort=id,desc&page=0&size=10&data.merchantId=5952911' \

Response Example:

HTTP/1.1 200 OK
Content-Type: application/json
{
     [
         {
             "createdBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
             "createdDate": "2020-06-15T06:11:06.546Z",
             "lastModifiedBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
             "lastModifiedDate": "2020-06-15T06:11:39.945Z",
             "createdByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
             "lastModifiedByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
             "id": "5ee710fa3508260001d96b8c",
             "projectId": "5d42a4b6f085380001da6a63",
             "data": {
                 "nameTh": "ข้าวแกงใต้",
                 "tsmMerchantId": "0346321",
                 "onlineStatus": "true",
                 "socialLine": "",
                 "nameEn": "khao kang",
                 "subCategoryId": "5812",
                 "subCategoryDescription": "อาหาร",
                 "categoryDescription": "อาหารและเครื่องดื่ม",
                 "socialFacebook": "https://www.facebook.com/",
                 "logoImage": null,
                 "merchantId": "5952911",
                 "socialInstagram": "",
                 "socialWebsite": "",
                 "socialTwitter": "",
                 "categoryId": "5948d60ee1382323583e31c7"
             }
         }
     ]
}

# Shop API

# Create shop

Method: POST
Path: /shopmgmt/api/weshop/shops/{id}
Description: Create a new shop, require client scope as below.

Client Scope:
- ws.shop.w

Authority: -

Request Header:

Param Description Required Example
Authorization The OAuth2 authentication with the O2O System Y Bearer {O2O Access Token}
Content-Type The MIME type of this content Y application/json

Request Body:

Param Description Type Required
data The attributes and values of brand content Object Y
data.brandId Brand id of shop String Y
data.outletId Id of shop String Y
data.tsmMerchantId Merchant id of true smart merchant String N
data.onlineStatus Online status of brand String Y
data.subCategoryDescription Sub category description of shop String N
data.categoryDescription Description of shop category String N
data.province Province of shop String N
data.zone Area of shop String N
data.averageRating Rating average of shop String N
data.publishStatus Status of shop publisher String N
data.shopNameTh Shop name in Thai String N
data.shopNameEn Shop name in English String N
data.address Address of shop String N
data.subCategoryId Sub category id of shop String N
data.shopMobile Mobile Tel of shop String N
data.shopTel Tel of shop String N
data.logoImage Shop logo image String N
data.district District of shop String N
data.shopHighlight Highlight description of shop String N
data.postCode Postcode of shop String N
data.openDate Shop open date String N
data.tsmOutletId Id of shop in true smart merchant String N
data.subDistrict Sub districts of shop String N
data.categoryId Category id of shop String N
data.<attribute_name>.latitude A latitude of shop origin point String N
data.<attribute_name>.longitude A longitude of shop origin point String N
data.<attribute_name>.type Type of location String N

Request Body Example:

{
  "data": {
            "outletId": "12345",
            "tsmMerchantId": "0138737",
            "onlineStatus": "true",
            "subCategoryDescription": "",
            "categoryDescription": "อาหารและเครื่องดื่ม",
            "province": "เชียงราย",
            "zone": "asoke",
            "averageRating": "4",
            "publishStatus": "true",
            "shopNameEn": "aroytaledead",
            "geo_location": {
                "longitude": "99.818892",
                "latitude": "19.901981",
                "type": "POINT_LOCATION"
            },
            "address": "ถนนคนม่วน",
            "subCategoryId": "",
            "shopMobile": "66-861894654",
            "shopTel": "66-861894654",
            "logoImage": null,
            "brandId": "11111",
            "district": "เมืองตราด",
            "shopHighlight": "ขายลูกชิ้นน้ำจิ้มทะเลเดือด",
            "postCode": "57000",
            "openDate": "",
            "tsmOutletId": "00001",
            "subDistrict": "รอบเวียง",
            "shopNameTh": "อร่อยทะเลเดือด",
            "categoryId": "5948d60ee1382323583e31c7"
        }
}

Request Example:

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer {O2O Access Token}' -d '{ \ 
   "data": { \ 
             "outletId": "12345", \ 
             "tsmMerchantId": "0138737", \ 
             "onlineStatus": "true", \ 
             "subCategoryDescription": "", \ 
             "categoryDescription": "อาหารและเครื่องดื่ม", \ 
             "province": "เชียงราย", \ 
             "zone": "asoke", \ 
             "averageRating": "4", \ 
             "publishStatus": "true", \ 
             "shopNameEn": "aroytaledead", \ 
             "geo_location": { \ 
                 "longitude": "99.818892", \ 
                 "latitude": "19.901981", \ 
                 "type": "POINT_LOCATION" \ 
             }, \ 
             "address": "ถนนคนม่วน", \ 
             "subCategoryId": "", \ 
             "shopMobile": "66-861894654", \ 
             "shopTel": "66-861894654", \ 
             "logoImage": null, \ 
             "brandId": "11111", \ 
             "district": "เมืองตราด", \ 
             "shopHighlight": "ขายลูกชิ้นน้ำจิ้มทะเลเดือด", \ 
             "postCode": "57000", \ 
             "openDate": "", \ 
             "tsmOutletId": "00001", \ 
             "subDistrict": "รอบเวียง", \ 
             "shopNameTh": "อร่อยทะเลเดือด", \ 
             "categoryId": "5948d60ee1382323583e31c7" \ 
         } \ 
 }' 'https://dev-platform.weomni-test.com/shopmgmt/api/weshop/shops'

Response Example:

HTTP/1.1 201 CREATED
Content-Type: application/json
{
      "createdBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "createdDate": "2020-06-15T06:46:47.169Z",
      "lastModifiedBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "lastModifiedDate": "2020-06-15T06:46:47.169Z",
      "createdByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "lastModifiedByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "id": "5ee719573508260001d96b9c",
      "projectId": "5d42a4b6f085380001da6a63",
      "data": {
        "tsmMerchantId": "0138737",
        "onlineStatus": "true",
        "subCategoryDescription": "",
        "categoryDescription": "อาหารและเครื่องดื่ม",
        "province": "เชียงราย",
        "zone": "asoke",
        "averageRating": "4",
        "publishStatus": "true",
        "shopNameEn": "aroytaledead",
        "geo_location": {
          "longitude": "99.818892",
          "latitude": "19.901981",
          "type": "POINT_LOCATION"
        },
        "address": "ถนนคนม่วน",
        "outletId": "12345",
        "subCategoryId": "",
        "shopMobile": "66-861894654",
        "shopTel": "66-861894654",
        "logoImage": null,
        "brandId": "11111",
        "district": "เมืองตราด",
        "shopHighlight": "ขายลูกชิ้นน้ำจิ้มทะเลเดือด",
        "postCode": "57000",
        "openDate": "",
        "tsmOutletId": "00001",
        "subDistrict": "รอบเวียง",
        "shopNameTh": "อร่อยทะเลเดือด",
        "categoryId": "5948d60ee1382323583e31c7"
      }
}

# Update shop

Method: PUT
Path: /shopmgmt/api/weshop/shops/{id}
Description: Update a exist shop, require client scope as below.

Client Scope:
- ws.shop.w

Authority: -

Request Header:

Param Description Required Example
Authorization The OAuth2 authentication with the O2O System Y Bearer {O2O Access Token}
Content-Type The MIME type of this content Y application/json

Request Body:

Param Description Type Required
data The attributes and values of brand content Object Y
data.brandId Brand id of shop String Y
data.outletId Id of shop String Y
data.tsmMerchantId Merchant id of true smart merchant String N
data.onlineStatus Online status of brand String Y
data.subCategoryDescription Sub category description of shop String N
data.categoryDescription Description of shop category String N
data.province Province of shop String N
data.zone Area of shop String N
data.averageRating Rating average of shop String N
data.publishStatus Status of shop publisher String N
data.shopNameTh Shop name in Thai String N
data.shopNameEn Shop name in English String N
data.address Address of shop String N
data.subCategoryId Sub category id of shop String N
data.shopMobile Mobile Tel of shop String N
data.shopTel Tel of shop String N
data.logoImage Shop logo image String N
data.district District of shop String N
data.shopHighlight Highlight description of shop String N
data.postCode Postcode of shop String N
data.openDate Shop open date String N
data.tsmOutletId Id of shop in true smart merchant String N
data.subDistrict Sub districts of shop String N
data.categoryId Category id of shop String N
data.<attribute_name>.latitude A latitude of shop origin point String N
data.<attribute_name>.longitude A longitude of shop origin point String N
data.<attribute_name>.type Type of location String N

Request Body Example:

{
  "data": {
            "outletId": "12345",
            "tsmMerchantId": "0138737",
            "onlineStatus": "true",
            "subCategoryDescription": "",
            "categoryDescription": "อาหารและเครื่องดื่ม",
            "province": "ตราด",
            "zone": "asoke",
            "averageRating": "4",
            "publishStatus": "true",
            "shopNameEn": "aroytaledead",
            "geo_location": {
                "longitude": "99.818892",
                "latitude": "19.901981",
                "type": "POINT_LOCATION"
            },
            "address": "ถนนคนม่วน",
            "subCategoryId": "",
            "shopMobile": "66-861894654",
            "shopTel": "66-861894654",
            "logoImage": null,
            "brandId": "11111",
            "district": "เมืองตราด",
            "shopHighlight": "ขายลูกชิ้นน้ำจิ้มทะเลเดือด",
            "postCode": "57000",
            "openDate": "",
            "tsmOutletId": "00001",
            "subDistrict": "รอบเวียง",
            "shopNameTh": "อร่อยทะเลเดือด",
            "categoryId": "5948d60ee1382323583e31c7"
        }
}

Request Example:

curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer {O2O Access Token}' -d '{ \ 
   "data": { \ 
             "outletId": "12345", \ 
             "tsmMerchantId": "0138737", \ 
             "onlineStatus": "true", \ 
             "subCategoryDescription": "", \ 
             "categoryDescription": "อาหารและเครื่องดื่ม", \ 
             "province": "ตราด", \ 
             "zone": "asoke", \ 
             "averageRating": "4", \ 
             "publishStatus": "true", \ 
             "shopNameEn": "aroytaledead", \ 
             "geo_location": { \ 
                 "longitude": "99.818892", \ 
                 "latitude": "19.901981", \ 
                 "type": "POINT_LOCATION" \ 
             }, \ 
             "address": "ถนนคนม่วน", \ 
             "subCategoryId": "", \ 
             "shopMobile": "66-861894654", \ 
             "shopTel": "66-861894654", \ 
             "logoImage": null, \ 
             "brandId": "11111", \ 
             "district": "เมืองตราด", \ 
             "shopHighlight": "ขายลูกชิ้นน้ำจิ้มทะเลเดือด", \ 
             "postCode": "57000", \ 
             "openDate": "", \ 
             "tsmOutletId": "00001", \ 
             "subDistrict": "รอบเวียง", \ 
             "shopNameTh": "อร่อยทะเลเดือด", \ 
             "categoryId": "5948d60ee1382323583e31c7" \ 
         } \ 
 }' 'https://dev-platform.weomni-test.com/shopmgmt/api/weshop/shops/5ee719573508260001d96b9c'

Response Example:

HTTP/1.1 200 OK
Content-Type: application/json
{
     {
           "createdBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
           "createdDate": "2020-06-15T06:46:47.169Z",
           "lastModifiedBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
           "lastModifiedDate": "2020-06-15T06:51:13.247Z",
           "createdByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
           "lastModifiedByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
           "id": "5ee719573508260001d96b9c",
           "projectId": "5d42a4b6f085380001da6a63",
           "data": {
             "tsmMerchantId": "0138737",
             "onlineStatus": "true",
             "subCategoryDescription": "",
             "categoryDescription": "อาหารและเครื่องดื่ม",
             "province": "ตราด",
             "zone": "asoke",
             "averageRating": "4",
             "publishStatus": "true",
             "shopNameEn": "aroytaledead",
             "geo_location": {
               "longitude": "99.818892",
               "latitude": "19.901981",
               "type": "POINT_LOCATION"
             },
             "address": "ถนนคนม่วน",
             "outletId": "12345",
             "subCategoryId": "",
             "shopMobile": "66-861894654",
             "shopTel": "66-861894654",
             "logoImage": null,
             "brandId": "11111",
             "district": "เมืองตราด",
             "shopHighlight": "ขายลูกชิ้นน้ำจิ้มทะเลเดือด",
             "postCode": "57000",
             "openDate": "",
             "tsmOutletId": "00001",
             "subDistrict": "รอบเวียง",
             "shopNameTh": "อร่อยทะเลเดือด",
             "categoryId": "5948d60ee1382323583e31c7"
           }
     }
}

# Get shop

Method: GET
Path: /shopmgmt/api/weshop/shops/{id}
Description: Get shop by brandId and shopId, require client scope as below.

Client Scope:
- ws.shop.r

Authority: -

Request Header:

Param Description Required Example
Authorization The OAuth2 authentication with the O2O System Y Bearer {O2O Access Token}
Content-Type The MIME type of this content Y application/json

Request Example:

curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer {O2O Access Token}' 'https://dev-platform.weomni-test.com/shopmgmt/api/weshop/shops/5ee719573508260001d96b9c'

Response Example:

HTTP/1.1 200 OK
Content-Type: application/json
{
      "createdBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "createdDate": "2020-06-15T06:46:47.169Z",
      "lastModifiedBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "lastModifiedDate": "2020-06-15T06:51:13.247Z",
      "createdByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "lastModifiedByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
      "id": "5ee719573508260001d96b9c",
      "projectId": "5d42a4b6f085380001da6a63",
      "data": {
        "tsmMerchantId": "0138737",
        "onlineStatus": "true",
        "subCategoryDescription": "",
        "categoryDescription": "อาหารและเครื่องดื่ม",
        "province": "ตราด",
        "zone": "asoke",
        "averageRating": "4",
        "publishStatus": "true",
        "shopNameEn": "aroytaledead",
        "geo_location": {
          "longitude": "99.818892",
          "latitude": "19.901981",
          "type": "POINT_LOCATION"
        },
        "address": "ถนนคนม่วน",
        "outletId": "12345",
        "subCategoryId": "",
        "shopMobile": "66-861894654",
        "shopTel": "66-861894654",
        "logoImage": null,
        "brandId": "11111",
        "district": "เมืองตราด",
        "shopHighlight": "ขายลูกชิ้นน้ำจิ้มทะเลเดือด",
        "postCode": "57000",
        "openDate": "",
        "tsmOutletId": "00001",
        "subDistrict": "รอบเวียง",
        "shopNameTh": "อร่อยทะเลเดือด",
        "categoryId": "5948d60ee1382323583e31c7"
      }
}

# Search brand

Method: GET
Path: /shopmgmt/api/weshop/shops
Description: List all brands or get brand by criteria.

Client Scope:
- ws.shop.r

Authority: -

Request Header:

Param Description Required Example
Authorization The OAuth2 authentication with the O2O System Y Bearer {O2O Access Token}
Content-Type The MIME type of this content Y application/json

Parameter:

Key Description Required Example
data search by attribute name and value N data.merchantId=5952911
page The requested page number to display N page=0
size The page size of the result in response body N size=10
sort Sorting criteria. Default sort order is ascending. Multiple sort criteria are supported. N sort=id,desc
createdBy.<operator_name> search by createdBy that support operator only 'equals' N createdBy.equals=admin
createdDate.<operator_name>. search by createdDate that support operator 'greaterThan', 'greaterOrEqualThan', 'lessThan' and 'lessOrEqualThan' N createdDate.greaterThan='2020-04-16T02:15:11.455Z'
lastModifiedBy.<operator_name> search by lastModifiedBy that support operator only 'equals' N lastModifiedBy.equals=admin
lastModifiedDate.<operator_name> search by lastModifiedDate that support operator 'greaterThan', 'greaterOrEqualThan', 'lessThan' and 'lessOrEqualThan' N lastModifiedDate.greaterOrEqualThan='2020-04-16T02:15:11.455Z'

Operator_Name:

Operator Description Required Example
equals search by key and value N createdBy.equals=admin
greaterThan search date type that can search greater than date in value N createdDate.greaterThan='2020-04-16T02:15:11.455Z'
greaterOrEqualThan search date type that can search greater or equal than date in value N createdDate.greaterOrEqualsThan='2020-04-16T02:15:11.455Z'
lessThan search date type that can search less or equal than date in value N lastModifiedDate.lessThan='2020-04-16T02:15:11.455Z'
lessThanOrEqualThan search date type that can search less or equal than date in value N lastModifiedDate.lessOrEquallThan='2020-04-16T02:15:11.455Z'

Request Example:

curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer {O2O Access Token}' 'https://dev-platform.weomni-test.com/shopmgmt/api/weshop/shops?data.outletId=12345&createdDate.greaterThan=2020-06-15T06:46:47.168Z&sort=id,desc&page=0&size=10' \

Response Example:

HTTP/1.1 200 OK
Content-Type: application/json
[
    {
        "createdBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
        "createdDate": "2020-06-15T06:46:47.169Z",
        "lastModifiedBy": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
        "lastModifiedDate": "2020-06-15T06:51:13.247Z",
        "createdByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
        "lastModifiedByApp": "9fe9f9fe-d4ab-4862-bae5-8d1082ce815f",
        "id": "5ee719573508260001d96b9c",
        "projectId": "5d42a4b6f085380001da6a63",
        "data": {
            "tsmMerchantId": "0138737",
            "onlineStatus": "true",
            "subCategoryDescription": "",
            "categoryDescription": "อาหารและเครื่องดื่ม",
            "province": "ตราด",
            "zone": "asoke",
            "averageRating": "4",
            "publishStatus": "true",
            "shopNameEn": "aroytaledead",
            "geo_location": {
                "longitude": "99.818892",
                "latitude": "19.901981",
                "type": "POINT_LOCATION"
            },
            "address": "ถนนคนม่วน",
            "outletId": "12345",
            "subCategoryId": "",
            "shopMobile": "66-861894654",
            "shopTel": "66-861894654",
            "logoImage": null,
            "brandId": "11111",
            "district": "เมืองตราด",
            "shopHighlight": "ขายลูกชิ้นน้ำจิ้มทะเลเดือด",
            "postCode": "57000",
            "openDate": "",
            "tsmOutletId": "00001",
            "subDistrict": "รอบเวียง",
            "shopNameTh": "อร่อยทะเลเดือด",
            "categoryId": "5948d60ee1382323583e31c7"
        }
    }
]
Last Updated: 7/17/2020, 11:09:13 AM