Grokking the System Design Interview
Ask Author
Back to course home

0% completed

Vote For New Content
With regards to System APIs, don't we also need a "getURL(url_key)" ? We have sp...

Aaron Rosenzweig

Feb 21, 2022

With regards to System APIs, don't we also need a "getURL(url_key)" ? We have specified create and delete but we also need a way to fetch our shortened URL :-)

1

0

Comments
Comments
Design Gurus
Design Gurus4 years ago

Yes, we should have a getURL() API.

J
Joy Dorairaj4 years ago

In summary we need

  • Create URL
  • Redirect URL
  • Retrieve URL
  • Delete URL
  • Modify (nice to have)
J
Jordan Starr4 years ago

Why redirect and retrieve? How do you see these as different? I'd think the inputs for both are the short URL and the output for both would be the long URL.

On this page

  1. Why do we need URL shortening?

Try it yourself

Designing URL Shortener (video)

  1. Requirements and Goals of the System
  1. Capacity Estimation and Constraints
  1. System Interface Definition
  1. Create Short URL API
  1. Redirect API
  1. Analytics API
  1. URL Management API
  1. Delete Short URL API
  1. Database Design
  1. Basic System Design and Algorithm

a. Encoding actual URL

b. Generating keys offline

  1. Data Partitioning and Replication
  1. Cache
  1. Load Balancer (LB)
  1. Purging or DB cleanup
  1. Telemetry
  1. Security and Permissions