ApiDetails Cards
ApiDetails Cards
1. Add card
POST -
request
a. bankName
b. cardNumber
c. expiry
d. issueDate
e. cardType (debit/credit)
f. cardName (platinum/moneyback/simplySave...)
response
Success 200
failure 400 - card already exists, card expired(we can save
details and also suggest customer similar card with better benefits and generate
monthly report for banks)
500 - technical error
2. Update card
PUT -
request
a. bankName
b. cardNumber
c. expiry
d. issueDate
e. cardType (debit/credit)
f. cardName (platinum/moneyback/simplySave...)
response
Success 200
failure 400 - card already exists, card expired(we can save
details and also suggest customer similar card with better benefits and generate
monthly report for banks)
500 - technical error
3. Delete card
Delete -
request
a. bankName
b. cardNumber
c. expiry
d. issueDate
e. cardType (debit/credit)
f. cardName (platinum/moneyback/simplySave...)
response
Success 200
failure 400 - card already exists, card expired(we can save
details and also suggest customer similar card with better benefits and generate
monthly report for banks)
500 - technical error
Users: (/users)
1. sign in
POST - /signIn
request
a. email
b. mobile
c. password
d. emailOtp
e. mobileOtp
f. ipAddress
response
Success 200
failure 400 - invalid credentials
2. forgot/reset password
POST - /password/reset
request
a. email
b. mobile
c. emailOtp
d. mobileOtp
e. ipAddress
response
Success 200
failure 400 - invalid otp, user does not exist
500 - technical error
3. update profile
PUT - /profile
request
a. email
b. mobile
c. password
d. emailOtp
e. mobileOtp
f. ipAddress
g. firstName
h. lastName
i. termsAndConditionsAcceptedFlag
j. gender
k. dob
i. salutation
response
Success 200
failure 400 - invalid otp
500 - technical error
4. sign up
POST - /signUp
request
a. email
b. mobile
c. password
d. emailOtp
e. mobileOtp
f. ipAddress
g. firstName
h. lastName
i. termsAndConditionsAcceptedFlag
j. gender
k. dob
i. salutation
response
Success 200
failure 400 - invalid otp
500 - technical error
5. user activities
POST - /activity
request
a. email
b. mobile
c. eventType
d. ipAddress
response
Success 200
failure 400 - invalid otp, user does not exist
500 - technical error
6. Generate otp
POST - /otp/generate
request
a. email
b. mobile
response
Success 200 - Success
failure 400 - user does not exist
500 - technical error
7. verify otp
POST - /otp/verify
request
a. email
b. mobile
c. emailOtp
d. mobileOtp
response
Success 200 - Success - (for phase 2 - send link for otp
verification)
failure 400 - user does not exist
500 - technical error
Tables:
1. user
user_id(PK) - varChar (internal to our system - created
in code and not exposed anywhere)
email - varChar
mobile - varChar
password - varChar
status - varChar (active/inactive/disabled)
createdBy - varChar
created_timestamp - timestamp
updatedBy - varChar
updated_timestamp - timestamp
2. user_details
user_id(PK) - varChar
salutation - varChar
first_name - varChar
last_name - varChar
gender - varChar
dob - varChar
terms_accepted - varChar
terms_accepted_timestamp - timestamp
createdBy - varChar
created_timestamp - timestamp
updatedBy - varChar
updated_timestamp - timestamp
3. user_activity
activity_id(PK) - varChar
user_id - varChar
eventType - varChar
(login/logout/updateProfile/addDebitCard/updateDebitCard/addCreditCard/
updateCreditCard...)
event_timestamp - timestamp
ipAddress - varChar
eventDetails- varChar (brief description of event - ex.
mobile no updated/ tc updated/ Debit card added/updated...)
4. otp_details
otp_id(PK) - varChar
user_id - varChar
email_otp - varChar
mobile_otp - varChar
created_timestamp - timestamp
expiry_timestamp - timestamp
createdBy - varChar
created_timestamp - timestamp
updatedBy - varChar
updated_timestamp - timestamp
5. user_preferences
preference_type(PK) - varChar
user_id(PK) - varChar
6. user_cards
user_card_id(PK) - varChar
user_id(FK) - varChar
card_id(FK) - varChar
card_number - varChar
expiry - varChar
bank_name - varChar
issue_date - varChar
card_type - varChar
card_name - varChar
createdBy - varChar
created_timestamp - timestamp
updatedBy - varChar
updated_timestamp - timestamp
7. offers
offer_id(PK) - varChar
description - varChar
type - varChar
redeem_type - varChar
start_date - varChar
end_date - varChar
quantity - varChar
quantity_type - varChar
offer_code - varChar
conditions - varChar
createdBy - varChar
created_timestamp - timestamp
updatedBy - varChar
updated_timestamp - timestamp
8. cards
card_id(PK) - varChar (internal id for a card. not
exposed to anyone)
bank_name - varChar
card_type - varChar
card_name - varChar
createdBy - varChar
created_timestamp - timestamp
updatedBy - varChar
updated_timestamp - timestamp