This document discusses best practices for developing pragmatic APIs. It covers topics such as defining API resources as nouns and using HTTP verbs to manipulate them, following REST principles, using JSON and status codes effectively, implementing authentication, authorization, versioning, pagination and error handling, and testing and documenting APIs. The document emphasizes designing the API schema upfront, using consistent URIs and formats, and proper testing and documentation. It predicts APIs will be important for connecting devices and powering the emerging "API economy".
Existem diversos aspectos que devem ser priorizados ao se escrever uma API. Bom entendimento do domínio, arquitetura ideal, boa estratégia de testes, etc. Esses são alguns dos problemas reais e prioritários existentes. JSON API é uma ótima solução para evitar a perda de tempo tentando reinventar a roda durante a definição do design das respostas de sua aplicação. Nesta apresentação, alguns exemplos de uso, considerações/vantagens e dicas de como tornar a sua aplicação compatível sem (muita) dor.
Existem diversos aspectos que devem ser priorizados ao se escrever uma API. Bom entendimento do domínio, arquitetura ideal, boa estratégia de testes, etc. Esses são alguns dos problemas reais e prioritários existentes. JSON API é uma ótima solução para evitar a perda de tempo tentando reinventar a roda durante a definição do design das respostas de sua aplicação. Nesta apresentação, alguns exemplos de uso, considerações/vantagens e dicas de como tornar a sua aplicação compatível sem (muita) dor.
Lessons from the Trenches: Building an API-Centric ArchitectureWSO2
To view recording of this webinar please use the below URL:
http://wso2.com/library/webinars/2015/05/lessons-from-the-trenches-building-an-api-centric-architecture/
APIs are the tip of the iceberg of enterprise integration. In this webinar, we will look at some of our customers’ enterprise deployments and share best practices/recommendations to take into account when you build an API-centric architecture, especially for security, monitoring, and performance.
Coderetreat is a day-long, intensive practice event, focusing on the fundamentals of software development and design. By providing developers the opportunity to take part in focused practice away from the pressures of 'getting things done', the coderetreat format has proven itself to be a highly effective means of skill improvement.
This workshop was given to the University of Waterloo Computer Science Club.
Mike Krieger - A Brief, Rapid History of Scaling Instagram (with a tiny team)Jean-Luc David
Mike Krieger discusses Instagram's best and worst infrastructure decisions, building and deploying scalable and extensible services. Audio here: https://soundcloud.com/jldavid/mike-krieger-how-a-small-team-scales-instagram
Brief introduction into designing REST API. Set of recipes how to solve typical architectural problems. List of topics that you should learn, before start designing API.
The rising complexity and cost of managing legacy travel distribution systems are leading many travel companies today to adopt a REST (REpresentational State Transfer) architectural style because it provides standardized resources that enable precise interaction with other REST systems. The panelists will discuss the fundamental shift in application design required to begin thinking in terms of resources rather than objects and methods and how the OpenTravel 2.0 specification is being designed to provide a common XML resource model for the travel industry.
Lessons from the Trenches: Building an API-Centric ArchitectureWSO2
To view recording of this webinar please use the below URL:
http://wso2.com/library/webinars/2015/05/lessons-from-the-trenches-building-an-api-centric-architecture/
APIs are the tip of the iceberg of enterprise integration. In this webinar, we will look at some of our customers’ enterprise deployments and share best practices/recommendations to take into account when you build an API-centric architecture, especially for security, monitoring, and performance.
Coderetreat is a day-long, intensive practice event, focusing on the fundamentals of software development and design. By providing developers the opportunity to take part in focused practice away from the pressures of 'getting things done', the coderetreat format has proven itself to be a highly effective means of skill improvement.
This workshop was given to the University of Waterloo Computer Science Club.
Mike Krieger - A Brief, Rapid History of Scaling Instagram (with a tiny team)Jean-Luc David
Mike Krieger discusses Instagram's best and worst infrastructure decisions, building and deploying scalable and extensible services. Audio here: https://soundcloud.com/jldavid/mike-krieger-how-a-small-team-scales-instagram
Brief introduction into designing REST API. Set of recipes how to solve typical architectural problems. List of topics that you should learn, before start designing API.
The rising complexity and cost of managing legacy travel distribution systems are leading many travel companies today to adopt a REST (REpresentational State Transfer) architectural style because it provides standardized resources that enable precise interaction with other REST systems. The panelists will discuss the fundamental shift in application design required to begin thinking in terms of resources rather than objects and methods and how the OpenTravel 2.0 specification is being designed to provide a common XML resource model for the travel industry.
Due to the popular of Smart Phone application recently, Single Page Application (SPA) model has been the trend for Web application development and is taking place of the traditional MVC model. Web API is the key factor of the shift from SPA model to MVC model. For that reason, test automation is expected to shift left to get feedback as soon as possible, and Web API testing has become more and more important. The talk will discuss:
What is Web API? How SOAP is different from REST APIs
API test and its checkpoints
How Frisby makes testing REST API endpoints easy, fast, and fun in the world of Node.js
Due to the popular of Smart Phone application recently, Single Page Application (SPA) model has been the trend for Web application development and is taking place of the traditional MVC model. Web API is the key factor of the shift from SPA model to MVC model. For that reason, test automation is expected to shift left to get feedback as soon as possible, and Web API testing has become more and more important. The talk will discuss:
- What is Web API? How SOAP is different from REST APIs
API test and its checkpoints
- How Frisby makes testing REST API endpoints easy, fast, and fun in the world of Node.js
Наталия Рихмаер (QA Emgineer, DataArt) рассказала:
1. Что такое API (Application Programming Interface) и о тестировании API на разных этапах проекта.
2. Что такое HTTP, об основных запросах: post, get, put, delete и показала пример возможных запросов к API при помощи Postman.
3. Что такое REST и SOAP, в чем их отличие, преимущества и недостатки, и тенденции использования их в разработке веб-приложений.
4. О типах тестирования API и полезных инструментах: Postman, Swagger, SoapUI, Retrofit и др.
5. О трудностях в тестировании АPI.
WebCamp: Developer Day: Принципы построения эффективного REST API - Георгий П...GeeksLab Odessa
Принципы построения эффективного REST API
Георгий Подсветов
Доклад посвящен основополагающимся принципам концепции REST, на чем базируется идеология. Будет рассмотрен круг вопросов, которые необходимо решить при проектировании нового API и вопросов эффективности API, какой API будет удобен вашим пользователям
A Deep Dive into RESTful API Design Part 2VivekKrishna34
RESTful API Design, RESTful URI Design, Design Steps, Example Application, What are resources in REST? Various HTTP Status codes used in REST, POST, GET, PUT, PATCH, DELETE methods and what are they used for?
HP transportation is a gold sponsor of opentravel.org. Open travel sets standards with the global transportation community and HP is taking a leading role in this area.
All we know that REST services are almost everywhere now and nearly all new projects use it.
But do we really know how to design proper interfaces? What are pitfalls and how to avoid them?
I did many REST service designs and have a bunch of tips and tricks you definitely would like to use.
It will save you and your team a lot of time in future.
21. Putting it together
● Getting
– Anything but GET
● 405 Method Not Allowed
– Resource not found
● 404 Not Found
– Success
● 200 OK
– Moved
● 301 Permanent Redirect or 302 Found
22. Putting it together
● Adding
– Anything but POST
● 405 Method Not Allowed
– Resource already existed
● 303 See Other
– Success
● 201 Created
– Error
● 500 Internal Server Error with description
23. Putting it together
● Editing
– Anything but PUT or POST
● 405 Method Not Allowed
– Resource does not exist
● 404 Not Found
– Success
● 200 OK
– Error
● 500 Internal Server Error with description
24. Putting it together
● Deleting
– Anything but DELETE or POST
● 405 Method Not Allowed
– Resource does not exist
● 404 Not Found
– Success
● 200 OK or 204 No Content
– Error
● 500 Internal Server Error with description
25. Putting it together
● Everything
– Not logged in
● 401 Unauthorized
– Logged in but permission denied
● 403 Forbidden
26. Putting it together
● Why POST or DELETE/PUT
– Client support
– _method=VERB
● /users.json?_method=POST
Thank you _____________
Today I’m going to be talking about creating a RESTful API with PHP. Not just any RESTful API, but an Epic one.
<number>