Es difícil dar una respuesta completa porque no hay una sola manera de construir una API.
Es posible que sus clientes estén familiarizados con cierto tipo de API, mencionó Google Analytics, por lo que tal vez utilicen API similares, en ese caso, debe modelar su API según esos.
Algunos idiomas o herramientas tienen sus propios diseños de API recomendados, es posible que tenga sus propios requisitos, como la seguridad de OAuth o la transferencia de archivos grandes, con la que algunos diseños de API no se manejan bien.
Al diseñar el cliente, estudie una API existente que tenga buena documentación, la API de Twitter, por ejemplo, es un ejemplo de una API REST típica que utiliza JSON para la comunicación cliente / servidor.
Para el servidor mencionado, su idioma de elección puede tener una forma recomendada de hacerlo, pero a menudo basta con un conjunto simple de puntos finales HTTP para diferentes recursos con manejo para GET / POST / DELETE / PUT, etc. Encuentre un buen serializador / deserializador JSON para su idioma.
Luego, todo lo que tiene que hacer es agregar cualquier otra cosa que necesite, como autenticación y autorización.
- ¿Qué tan bueno es el sitio web CodeCombat.com en la enseñanza de JavaScript, Python y sus idiomas asociados?
- ¿Cuál es el mejor recurso en línea para el estudio competitivo?
- Cómo crear un fuerte sentido de pertenencia o comunidad en un programa de estudios totalmente en línea
- ¿Cuáles son los principales requisitos de seguridad del sistema de gestión de aprendizaje?
- ¿Cuál es el mejor compresor de imágenes en línea gratuito para archivos JPG y PNG?
Si quieres más información.
A menudo, las API más complejas emplean el patrón de fachada.
Estudie HTTP, las API HTTP modernas utilizan los métodos de solicitud, códigos de estado y encabezados apropiados Protocolo de transferencia de hipertexto
Si está utilizando un idioma que tiene un marco MVC existente, consulte sus documentos respectivos. Ruby on Rails o .NET WebAPI, por ejemplo, tienen un montón de ejemplos
Como dije, no puedo dar una respuesta completa sin saber más sobre sus requisitos, pero espero que esto le ayude a comenzar