An API is a set of rules and protocols for building and interacting with software applications. It defines the methods and data formats that applications can use to communicate with each other.
JSON is a lightweight data interchange format that is easy for humans to read and write, and easy for machines to parse and generate. It is often used for transmitting data in web applications.
HTTP is the foundation of any data exchange on the Web and it is a protocol used for transmitting hypertext requests and information on the internet.
REST is an architectural style for designing networked applications. It relies on a stateless, client-server, cacheable communications protocol -- the HTTP. RESTful applications use HTTP requests to perform CRUD (Create, Read, Update, Delete) operations.
CRUD refers to the four basic operations that can be performed on data in a database or a data store. These operations are fundamental to the functionality of database management systems.