Shoutout Enterprise Loyalty Admin (1.0.0)

Download OpenAPI specification:Download

Shoutout loyalty for enterprises

Authentication

APIKey

Security Scheme Type HTTP
HTTP Authorization Scheme bearer

Customers

Customer is a loyalty user which is the primary entity in the loyalty platform.

Get customers

Get the list of loyalty customers.

Authorizations:
query Parameters
skip
number

Number of records to skip

limit
number

Number of records to be returned in the response. Defult is 10

Responses

200

Success

get /customers
/customers

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    },
  • {
    }
]

Create customer

Create customer with pre-defined and user defined attributes

Request Body schema: application/json
loyalty_id
string

Loyalty id of the customer

name
string

Name of the customer

mobile_number
string
email
string
birth_date
string <date-time>
gender
string
Enum: "male" "female"
location
string

Responses

201

Customer created

post /customers
/customers

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "loyalty_id": "some text",
  • "name": "some text",
  • "mobile_number": "some text",
  • "email": "some text"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "loyalty_id": "some text",
  • "name": "some text",
  • "points": 3.8,
  • "tier": "some text",
  • "tier_points": 30.44
}

Get customer

Get a single customer profile via the loyalty id

Authorizations:
path Parameters
customerId
required
string

Responses

200

Success

404

Customer not found

get /customers/{customerId}
/customers/{customerId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "loyalty_id": "some text",
  • "name": "some text",
  • "points": 87.68,
  • "tier": "some text",
  • "tier_points": 34.99
}

Update customer

Update customer details.

path Parameters
customerId
required
string
Request Body schema: application/json
loyalty_id
string

Loyalty id of the customer

name
string

Name of the customer

mobile_number
string
email
string
birth_date
string <date-time>
gender
string
Enum: "male" "female"
location
string

Responses

200

Success

put /customers/{customerId}
/customers/{customerId}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "name": "some text"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "loyalty_id": "some text",
  • "name": "some text",
  • "points": 21.82,
  • "tier": "some text",
  • "tier_points": 14.59
}

De-activate customer

De-activate a csutomer as he/she is no longer be able to interact with the loyalty program

path Parameters
customerId
required
string

Responses

200

Success

delete /customers/{customerId}
/customers/{customerId}

Rewards

Digital, Voucher based rewards which can be redeemed for redeemable points.

Get rewards

Get list of all rewards

Authorizations:

Responses

200

return rewards as an array

get /rewards
/rewards

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create reward

Create a new reward

Authorizations:
Request Body schema: application/json
imageUrls
required
Array of strings

image urls array

name
required
string

reward name

points
required
integer

number of redeemable points required to redeem the reward

type
required
string

Reward type

metadata
object (Object)

JSON type

userRedeemable
required
boolean

whether user allowed to redeem the reward

status
required
integer

reward published/ unpublished status

Responses

201
post /rewards
/rewards

Request samples

Content type
application/json
Copy
Expand all Collapse all
{}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "_id": "reward id",
  • "imageUrls":
    [
    ],
  • "name": "reward name",
  • "points": 0,
  • "type": "voucher",
  • "metadata":
    {
    },
  • "userRedeemable": true,
  • "status": 0
}

Get reward

Get a reward by reward id

Authorizations:
path Parameters
rewardId
required
string

reward id

Responses

200
get /rewards/{rewardId}
/rewards/{rewardId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "_id": "reward id",
  • "imageUrls":
    [
    ],
  • "name": "reward name",
  • "points": 0,
  • "type": "voucher",
  • "metadata":
    {
    },
  • "userRedeemable": true,
  • "status": 0
}

Update reward

Update a reward by reward id

Authorizations:
path Parameters
rewardId
required
string

reward id

Request Body schema: application/json
_id
required
string

Reward Id

imageUrls
required
Array of strings

list of images

name
required
string

Reward name

points
required
integer

no of redeemable points required to redeem the reward

type
required
string

Reward type

metadata
object (Object)

JSON type

userRedeemable
required
boolean

Reward is redeemable or not

status
required
integer <int32>

Reward published(1)/Unpublished(0) status

Responses

200
put /rewards/{rewardId}
/rewards/{rewardId}

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "_id": "reward id",
  • "imageUrls":
    [
    ],
  • "name": "reward name",
  • "points": 0,
  • "type": "voucher",
  • "metadata":
    {
    },
  • "userRedeemable": true,
  • "status": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "_id": "reward id",
  • "imageUrls":
    [
    ],
  • "name": "reward name",
  • "points": 0,
  • "type": "voucher",
  • "metadata":
    {
    },
  • "userRedeemable": true,
  • "status": 0
}

Delete reward

Delete a reward by reward id

Authorizations:
path Parameters
rewardId
required
string

reward id

Responses

200

empty response

delete /rewards/{rewardId}
/rewards/{rewardId}

Products

Create, update, delete and get products. Products are the list of products in the Point of Sales (PoS) or e-commerce application.

Get products

Get list of products

Authorizations:
query Parameters
skip
integer

Number of records to skip

limit
integer

Number of records to be returned in the response. Defult is 10

Responses

200

products list

get /products
/products

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create product

Create a new product

Authorizations:
Request Body schema: application/json
id
required
string

product id

name
required
string

product name

price
required
integer

product price

metadata
object (Object)

JSON type

Responses

201

Product create/update response

post /products
/products

Request samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "product id",
  • "name": "product name",
  • "price": 0,
  • "metadata":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "id": "product id",
  • "name": "product name",
  • "price": 0,
  • "metadata":
    {