# Overview
# Key Considerations
There are many available protocols that can be used when designing an API. They are summarized in the table below.
| Protocol | Description | Pros | Cons | Use Cases |
| ------------------------------------------ | --------------------- | ----------------- | ----------------- | ---------------------- |
| REpresentational State Transfer ([[REST]]) | ![[REST#Overview]] | ![[REST#Pros]] | ![[REST#Cons]] | ![[REST#Use Cases]] |
| [[GraphQL]] | ![[GraphQL#Overview]] | ![[GraphQL#Pros]] | ![[GraphQL#Cons]] | ![[GraphQL#Use Cases]] |
| Remote Procedure Call ([[gRPC]]) | ![[gRPC#Overview]] | ![[gRPC#Pros]] | ![[gRPC#Cons]] | ![[gRPC#Use Cases]] |
| [[SOAP]] | ![[SOAP#Overview]] | ![[SOAP#Pros]] | ![[SOAP#Cons]] | ![[SOAP#Use Cases]] |
| [[WebSockets]] | | | | |
| [[MQTT]] | | | | |
| | | | | |
| | | | | |
# Implementation Details
- URL
- Header / Body
## Performance Options for APIs #flashcard
- [[Pagination]]
- Load More
- Infinite Scrolling
<!--ID: 1751507777162-->
# Useful Links
- Stripe APIs #ReadLater
# Related Topics
- Internet of Things ([[IoT]])
- [[API Gateway]]
- [[Postman]]