API's Flashcards

(7 cards)

1
Q

Definition of API

A

An API is a set of rules and protocols that allows different software applications to communicate with each other

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Types of APIs:

A
  • Public: Openly available for any developers.
  • Private: Restricted for internal use within an organization.
  • Partner: Shared with specific partners.
  • Composite APIs: Combine multiple APIs into one, allowing complex operations to be executed with a single call.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

API Architectures

A
  • REST: Representational State Transfer, a widely-used architectural style leveraging standard HTTP methods.
  • GraphQL: A query language for APIs allowing clients to specify exactly what data they need.
  • SOAP: Simple Object Access Protocol, a protocol for exchanging structured information.
  • gRPC: A high-performance RPC framework using HTTP/2.
  • WebSockets: Enables real-time, two-way communication between client and server.
  • Webhooks: Allow servers to send callbacks to clients when events occur.
  • AMQP: Advanced Message Queuing Protocol for messaging.
  • MQTT: Lightweight messaging protocol for small sensors and devices.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

API Security

A
  • Authentication: Verifies the identity of a user or application.
  • OAuth: Standard for token-based authorization.
  • JWT: JSON Web Tokens for secure data transmission.
  • Basic Authentication: Uses username and password.
  • Rate Limiting: Controls the number of API calls a client can make in a certain time.
  • Encryption: Secures data in transit using protocols like TLS/SSL.
  • Authorization: Ensures that authenticated users have permission to perform specific actions.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Principles to create robust APIs

A
  • RESTful Conventions: Following REST principles for resource design.
  • Versioning: Managing API updates without breaking existing clients.
  • Pagination: Handling large data sets efficiently.
  • HATEOAS: Hypermedia as the engine of application state, guiding clients through available actions
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

API Documentation
💡Guides developers on how to use APIs:

A
  • Swagger: OpenAPI specification, a powerful tool for API documentation.
  • Postman: Platform for testing APIs.
  • OpenAPI Specification: Standard that defines how APIs should be described.
  • Redoc: API documentation generator.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

API Testing

A
  • Postman: For manual and automated testing.
  • SoapUI: Testing SOAP and REST APIs.
  • Katalon Studio: Automation testing.
  • Insomnia: REST client for debugging APIs.
  • JMeter: Performance testing.
  • Pact: Consumer-driven contract testing.
  • Karate: API testing automation.
  • Rest-Assured: Java library for testing REST services.
  • Newman: CLI agent for Postman collections.
  • Cypress: End-to-end testing.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly