Smart devices (or things) in the realm of IoT (Internet of Things) talk to each other and transfer data over the Internet. IoT vendors provide APIs for their clients to send data to the gateways and application servers. However, there is a lack of guidelines on how a vendor would design its API and resource URIs (Uniform Resource Identifiers). A generic design solution – design patterns – would make the API design and development easier for the vendors. Design patterns are reusable solutions to recurring problems and provide improved reusability and understandability. Currently, there are no design patterns for IoT APIs that IoT vendors can use. In this paper, we analyzed more than 1,300 URIs from 13 IoT APIs including IBM Watson and Microsoft Azure, and proposed eight novel design patterns for IoT APIs. We analyzed two datasets: (1) analysis set with 70% of all our URIs to define design patterns for IoT APIs and (2) validation set with the remaining 30% of the URIs to verify the prevalence of defined design patterns. We found that design patterns are prevalent in the IoT domain.