Show Buttons
Share On Facebook
Share On Twitter
Share On Google Plus
Share On Linkdin
Share On Reddit
Contact us
Hide Buttons

System design interview question

Design an Email Service API service

 


 

Requirements

 

Who is the end consumer of the API ?

  • Internal developers
  • Third party developers

Security

  • Authentication
  • Authorization
  • Auditing

Database

  • Max storage per company based on the plans
  • Max storage per user based on the plans

Server Geo Locations

  • North America : US East, US West
  • Asia pacific: India, China
  • Europe : London, Frankfaurt
  • South America

Error codes

HTTP Status —> Message

Bad Request (400) —> One of the HTTP headers or query param in the request is not present or incorrect.
Forbidden (403) —> Authorization error. Please enter valid credentials.
Not Found (404) —> The resource does not found.
Internal error (500) —> Server is not responsive. Please try again later.


 

API Design with semantic meaning
action —> verb – URI
create —> POST – {uri}/api/v1/emails
update —> PUT – {uri}/api/v1/emails/{email_id}
retrive –> GET – {uri}/api/v1/emails/{email_id}
delete —> DELETE – {uri}/api/v1/emails/{email_id}
search —> GET – {uri}/api/v1/emails?user_id={…}&order_by={…}&search_by={…}&per_page={…}

 


 

You may also like...

Leave a Reply

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