Data Access via APIs
The Database Controls Are Strong. The API Returns Everything to Everyone.
8 min read · 7 September 2026 · Privacy
A financial services platform vendor had implemented comprehensive database-level security , role-based access, column-level encryption for sensitive fields, row-level security policies, and comprehensive audit logging. Their RESTful API, which sat in front of the database and was the primary access mechanism for all customer integrations, had been built by a different team with a different security focus. The API authenticated callers correctly , API key validation was robust. After authentication, however, the API returned full customer record objects regardless of what fields the integration actually needed. An integration that required only account number and balance received the full record including date of birth, social security number, and transaction history. The API had no field-level filtering capability , it returned what the database held for the requested object. The API also had no rate limiting on query endpoints, meaning a caller with a valid API key could retrieve the full customer database in a systematic enumeration in a matter of hours. The database had field-level security. The API bypassed it by design , it was built to return complete records, and it did.
What is the API Data Access Risk Problem, Really?
APIs have become the primary interface through which data moves between systems , the mechanism through which vendor integrations, mobile applications, partner connections, and internal services access the data that databases and application systems hold. This architectural shift has a significant security implication: the access controls that govern data in database systems , row-level security, column-level encryption, field-level access restrictions , apply to direct database access, which is decreasingly common in modern architectures. The API layer that intermediates between callers and databases has its own security posture, which may or may not enforce equivalent access restrictions.
The over-return problem is the most pervasive API data access risk. Most APIs return complete object representations when a record is requested , the full customer record, the complete transaction object, the entire account profile , regardless of what fields the calling integration actually needs. This design is convenient for API developers and API consumers: one endpoint returns everything, integration developers can take what they need. The security implication is that every API caller receives the full data payload regardless of whether their integration requires all of it, and data that should be restricted to specific integration types or use cases is returned to any authenticated caller who requests the object.
The rate limiting gap amplifies the over-return risk into a systematic exfiltration capability. A database query that returns all customer records would be controlled by the database's access controls , few users would have that level of access. An API endpoint that returns customer records one at a time with no rate limiting provides the same data to any authenticated caller through systematic enumeration , a process that requires only a valid API key and the patience to make sequential requests. The database controls prevent bulk access. The API provides bulk access through sequential single-record requests at whatever rate the caller is willing to sustain.
API data access risks cluster around five specific control gaps:
- Full record return without field filtering , API endpoints returning complete object representations to all authenticated callers regardless of what fields the integration requires or is authorized to receive
- No rate limiting on data retrieval endpoints , API query endpoints accessible at unlimited request rates enabling systematic enumeration of the full dataset
- Insufficient API-level authorization , API authentication confirming caller identity without API-level authorization restricting which callers can access which data categories or customer subsets
- API bypassing database-level security , API layer decrypting and returning data that the database layer restricts, effectively bypassing field-level and row-level database controls
- API response caching without access control , cached API responses shared across callers regardless of individual caller authorization
Why this matters
API data access matters for TPRM because APIs are the actual data access mechanism for virtually all vendor integrations , and API-layer security controls determine the actual data protection that integrations receive regardless of the database-level controls that governance assessments typically evaluate. A vendor with excellent database security and poor API security provides weak data protection for all callers who access data through the API , which is most callers, most of the time.
The integration scope problem is particularly relevant. An integration built to access account numbers and balances may receive full customer records including sensitive data the integration has no need for, because the API returns complete objects. The vendor's DPA specifies the data the integration processes. The API returns more than the DPA contemplates. The data minimization principle is violated at the API layer through a design choice that predates the specific integration , the API was built to return complete records before the customer integration was designed with specific data scope requirements.
For TPRM practitioners, the API data access assessment requires examining the API as a distinct security layer , not inferring its security posture from the database controls beneath it. Field filtering capability, rate limiting configuration, authorization scope, and response design are API-level security questions that database assessment does not answer.
Where most teams get this wrong
The most consistent failure is assessing database security and assuming it governs API access. API security is a separate discipline from database security , the API layer has its own authentication mechanisms, its own authorization logic, its own response design, and its own rate limiting configurations. Database controls protect data in the database. API controls protect data as it flows through the API. The two are independent, and weakness at either layer creates exposure regardless of the strength at the other.
The second failure is not asking about field-level API response filtering. Most API assessments ask whether the API is authenticated and whether it uses HTTPS. They rarely ask whether the API can return field-filtered responses that match the specific fields an integration requires, or whether every authenticated caller receives the same complete record regardless of their specific authorization scope.
- Treating database security as equivalent to API security , two independent security layers
- No field filtering assessment , whether API can return integration-specific field subsets
- Rate limiting not assessed , unlimited request rates enabling systematic enumeration
- API authorization depth not assessed , authentication vs authorization for specific data categories
- API-bypassing database controls not assessed , API decrypting what database encrypts
What good looks like
Mature API security programs apply access controls at the API layer that are at least as restrictive as the database controls beneath , implementing field filtering that returns only authorized fields per integration, rate limiting that prevents systematic enumeration, and authorization logic that restricts data access to the specific categories each API key is authorized to receive.
- Field-level response filtering , API responses filtered to return only the fields authorized for each API key or integration type
- Rate limiting on all data retrieval endpoints , requests per minute, per hour, and cumulative volume limits enforced per API key
- API-level authorization , data category and customer subset restrictions enforced at the API layer independent of authentication
- Minimum necessary response design , API endpoints returning minimum data required for stated purpose rather than complete objects
- API security testing , field filtering, rate limit bypass, and authorization scope assessed as explicit test objectives
Tooling
Governing API data access requires API gateway platforms that enforce field filtering, rate limiting, and authorization at the API layer.
API Gateway with Policy Enforcement , AWS API Gateway, Azure API Management, Kong, Apigee
API gateway platforms provide centralized enforcement of rate limiting, authentication, and access policies across all API endpoints , applying consistent controls regardless of how individual endpoints are implemented. AWS API Gateway provides per-key usage plans with request rate and burst limits. Apigee provides comprehensive API governance including response transformation that enables field filtering. For TPRM practitioners, asking whether the vendor uses an API gateway with rate limiting and access policy enforcement provides a specific API governance architecture question.
API Security Testing , 42Crunch, StackHawk, Salt Security
API-specific security testing platforms test field-level authorization, rate limit enforcement, and scope restriction as explicit objectives , going beyond authentication testing to assess the access control depth of the API layer. For TPRM practitioners, asking whether API security testing includes field filtering validation and rate limit bypass testing provides the specific API access control test scope question.
Governance challenges
The governance challenge with API data access is that API design decisions , field inclusion, rate limits, authorization scope , are made by development teams optimizing for integration convenience and developer experience rather than data minimization. Complete object return is the default API design choice because it reduces integration development effort. Rate limiting is often absent because it creates friction for legitimate high-volume integrations. These design defaults create the data access risks that governance programs must address after the fact.
- Ask about field-level API response filtering , whether integrations can receive field-filtered responses
- Ask about rate limiting configuration , per-key limits that prevent systematic enumeration
- Ask whether API security testing includes access control scope , field filtering and authorization depth
- Add API field scope to DPA provisions , specifying which fields the integration is authorized to receive
- Ask whether the API bypasses database-level controls , decrypting what the database encrypts
If you are a small team
Ask your highest-risk API integration vendors two questions that most assessments never reach. First: does your API return complete records to all authenticated callers, or can it return field-filtered responses limited to the specific fields each integration is authorized to receive? Second: is there a rate limit on the API endpoint that returns the records our integration uses, and what is the maximum number of records retrievable per hour with a valid API key? Those two questions surface the over-return and enumeration risks that define API data access governance.
- Ask whether the API supports field-filtered responses per integration
- Ask what the rate limit is on data retrieval endpoints
- Ask whether API security testing includes field authorization and rate limit bypass
- Add field scope specification to API integration DPA provisions
What to require
Ask directly:
"Does your API return complete customer record objects to all authenticated callers, or does it support field-filtered responses that limit each integration to the specific fields they are authorized to receive?"
"Is there a rate limit on the API endpoints that return customer records , and what is the maximum number of records a valid API key can retrieve per hour before rate limiting applies?"
"Has your API security testing specifically assessed whether authenticated callers can access data categories beyond their intended authorization scope , and is field-level authorization scope a defined test objective?"
Expect as evidence
- Field filtering capability confirmation , per-integration field scope or full-record return
- Rate limiting configuration , per-key limits on data retrieval endpoints
- API security test scope confirmation including field authorization and enumeration testing
- API authorization design description , authentication vs field-level authorization depth
A vendor who responds to the field filtering question with 'API access is authenticated and secure' has described authentication. Ask specifically whether authenticated callers receive complete records or field-filtered responses. Authentication is the gate. Field filtering is what limits what comes through the gate after it opens.
How to evidence it
API security is addressed in OWASP API Security Top 10, PCI-DSS requirements for payment API security, and GDPR data minimization as applied to API response scope. Demonstrating due diligence requires evidence that API-layer access controls were assessed independently of database-level controls.
- Vendor assessment records documenting API field filtering, rate limiting, and authorization scope questions
- API security test scope confirmation including field authorization
- Field scope specification in DPA for API integrations
- Rate limiting configuration evidence
Key Takeaway
The database controls govern the database. The API controls govern what integrations actually receive. In modern architectures, virtually all data access happens through APIs , and API-layer controls are the controls that determine data access reality for every integration, every partner connection, and every mobile application the vendor operates. An API that returns complete records to every authenticated caller has provided access controls equivalent to no access controls for the fields the caller does not need. Ask whether the API filters. Ask whether the API rate limits. Ask whether the API layer is governed with the same rigor as the database layer underneath it. The database is the vault. The API is the door. Both need a lock.
Speak to It™
The term you nodded along to, explained in ninety seconds, so you can speak to it professionally. It is how most readers find these articles.
Join the Association