# Stripe APIs

Learn about Stripe APIs.

Stripe provides a unified set of [REST APIs](https://docs.stripe.com/api.md), comprised of [two namespaces](https://docs.stripe.com/api-v2-overview.md#key-differences-between-the-v1-and-v2-namespace), for accepting payments, managing billing and subscriptions, sending payouts, and building financial workflows. You can authenticate requests, shape responses, localize data, test integrations, and handle errors consistently across Stripe products.

## Overview 

[Compare the API v1 and v2 namespaces](https://docs.stripe.com/api-v2-overview.md): Learn about Stripe API v2, its response model, and how it compares to API v1.

[Manage null API v2 responses](https://docs.stripe.com/api-includable-response-values.md): Request dependent values in a single response.

[Rate limits](https://docs.stripe.com/rate-limits.md): Understand throttling and throughput behavior.

## Authentication and security 

[API keys](https://docs.stripe.com/keys.md): Authenticate requests with secret and restricted keys.

[Manage secret API keys](https://docs.stripe.com/keys-best-practices.md): Best practices for creating, rotating, and securing keys.

[Specify request context](https://docs.stripe.com/context.md): Pass account and idempotency context with requests.

[Domains and IP addresses](https://docs.stripe.com/ips.md): Allowlist domains and IP ranges used by Stripe.

## Make requests 

[Expand responses](https://docs.stripe.com/expand.md): Return nested objects in a single request.

[Pagination](https://docs.stripe.com/pagination.md): Iterate through large lists of resources.

[Search objects](https://docs.stripe.com/search.md): Look up objects in your Stripe data.

## Testing and data 

[Metadata](https://docs.stripe.com/metadata.md): Attach custom key-value pairs to objects.

[Use cases](https://docs.stripe.com/metadata/use-cases.md): Common patterns for modeling data with metadata.

[Automated testing](https://docs.stripe.com/automated-testing.md): Test your application’s behavior and ability to handle errors.

## Error handling 

[Error handling](https://docs.stripe.com/error-handling.md): Interpret errors and display them to users.

[Advanced error handling](https://docs.stripe.com/error-low-level.md): Work with low-level error details.

[Error codes](https://docs.stripe.com/error-codes.md): Browse common error types and parameters.
