API
Definition
Application Programming Interface - a way for different software applications to communicate with each other, enabling integration and functionality.
Use Cases
- Stripe: Letting online businesses accept payments and manage billing through a developer-friendly API. — Stripe exposes REST APIs (and client libraries) for creating payment intents, charging cards, handling webhooks for events (like successful payments), and managing subscriptions. Businesses integrate Stripe by calling these endpoints from their backend and verifying webhook signatures for event-driven updates. (Businesses can add payments faster than building bank/card integrations themselves, reduce engineering effort, and scale globally using a standardized interface.)
- Twilio: Adding SMS, voice calls, and verification codes to applications via API. — Developers call Twilio’s APIs to send messages or place calls and configure webhooks so Twilio can notify their app about delivery status, inbound messages, or call events. Authentication is handled with API keys and request signing. (Teams can launch communication features quickly without operating telecom infrastructure, improving time-to-market for customer notifications and authentication flows.)
- GitHub: Automating software development workflows (issues, pull requests, CI/CD integrations) using APIs. — GitHub provides REST and GraphQL APIs. Tools and internal systems authenticate with tokens (e.g., OAuth apps or GitHub Apps) to create issues, manage repos, read PR status, and trigger automation. Webhooks push events (like PR opened) to external services for real-time integrations. (Organizations automate repetitive tasks, integrate third-party tools, and improve developer productivity through consistent programmatic access.)
Provider Equivalents
- AWS: Amazon API Gateway
- Azure: Azure API Management
- GCP: Google Cloud API Gateway
- OCI: Oracle API Gateway
Frequently Asked Questions
- What's the difference between an API and an SDK?
- An API is the set of rules/endpoints that a service exposes (what you can call and what you get back). An SDK is a toolkit (libraries, sample code, and tools) that makes it easier to use an API from a specific programming language or platform.
- When should I use an API?
- Use an API when you need two systems to exchange data or trigger actions reliably—such as a mobile app fetching data from a backend, a website taking payments, or one service sending events to another. APIs are especially useful when you want a stable contract between teams or services and need authentication, rate limits, and monitoring.
- How much does an API cost?
- The API concept itself is free, but costs come from hosting and operating it. Common cost factors include compute (servers/functions), data transfer, database reads/writes, and API management features (authentication, rate limiting, caching, logging). If you use an API management gateway (e.g., AWS API Gateway or Azure API Management), pricing often depends on request volume, features, and tiers.
Category: software
Difficulty: intermediate
Related Terms
See Also