Table of contents adidas API Guidelines General Guidelines Introduction API First Contract Robustness Version Control System Minimal API Surface Rules for Extending JSON Security REST API Guidelines Introduction Core Principles OpenAPI Specification API Design Platform Design Maturity Testing Protocol HTTP TLS Separate Concerns Request Methods Status Codes Message Message Formats Content Negotiation HAL Problem Detail Foreign Key Relations Application Corporate Data Model Common Data Types Execution Pagination Long Running Tasks Polling Callback Files Upload Batch Operations Search Requests Query Requests with Large Inputs Choosing Fields and Embedded Resources Localization Rate Limiting Caching Testing Enviroments Evolution Naming Conventions Reserved Identifiers URI Structure Changes and Versioning Phasing out Old Versions Guides API Testing CI Environment Complete API Development API Clients Loose Coupling Further References Asynchronous API Guidelines Introduction