Sefism is free for learners. We are here to help you grow, one step at a time.Join for free
Sefism.

Checklist · Security

API Security Checklist

Opens with credits

An API security checklist you can run against a real codebase before a release. It is built on the OWASP API Security Top 10 (2023 edition) and the OWASP cheat sheets, and every check says how much it matters and exactly how to verify it.

Written by Tauseef Fayyaz7 chapters, 35 checksAbout 15 minReviewed 12 October 2026

What you will learn

7 chapters · about 15 min

  1. 1AuthenticationChecks that every request proves who is calling, and that tokens and login flows cannot be abused (OWASP API2:2023).5 checks · 2 min
  2. 2Object, property and function level authorizationChecks that a logged-in user can only reach their own objects, fields and functions (OWASP API1, API3 and API5:2023).5 checks · 2 min
  3. Rate limiting and resource limitsChecks that no single client can exhaust your servers, your database or your bill (OWASP API4 and API6:2023).5 checks · 2 minOpens with credits
  4. Input validation, injection and SSRFChecks that every input is validated on the server and that URL-fetching features cannot be pointed at your internal network (OWASP API7 and API10:2023).6 checks · 3 minOpens with credits
  5. TLS, CORS and security headersChecks on how the API is reached: encrypted transport, which origins may call it from a browser, and the headers that go with each response.4 checks · 2 minOpens with credits
  6. Error handling, logging and monitoringChecks that errors tell attackers nothing useful, and that your logs tell you when something is wrong.5 checks · 2 minOpens with credits
  7. Inventory, versioning and configurationChecks that you know every API host and version you run, and that none of them are left with debug settings or open admin access (OWASP API8 and API9:2023).5 checks · 2 minOpens with credits

About this checklist

This API security checklist turns the OWASP API Security Top 10 into checks you can actually run. APIs fail in predictable ways: an endpoint returns another user's order when you change the ID, a signup form lets you set isAdmin: true, a login endpoint accepts a million password guesses, or an "import from URL" feature fetches the cloud metadata service. Each of these is on the OWASP list, and each can be tested in minutes.

The first two chapters cover authentication and authorization, because broken object level authorization (BOLA) and broken authentication are the top two risks in the 2023 edition and the ones most often found in real APIs. Later chapters cover rate limits and resource limits, input validation and server-side request forgery (SSRF), TLS and CORS, error handling and logging, and keeping an inventory of every API version you run.

Each check has a severity. Must means fix it before you ship; should means fix it soon; nice means it is worth doing once the rest is solid. Every check also tells you how to verify it, usually with a request you can send with curl or your API client using two test accounts.

Common questions

What is the OWASP API Security Top 10?

It is OWASP's list of the most critical security risks specific to APIs. The current edition is from 2023 and starts with broken object level authorization, broken authentication and broken object property level authorization. It also covers resource consumption, function level authorization, business flows, SSRF, misconfiguration, inventory and unsafe consumption of APIs.

What is BOLA in API security?

Broken object level authorization (BOLA) is when an API lets a user access an object just by changing its ID, without checking that the user owns it. You test for it with two accounts: request one account's objects while logged in as the other. Every such request should be refused.

How do I test my API for security issues?

Start with two test accounts and an API client such as curl or Postman. Work through this checklist: missing authentication, cross-account access, extra fields on updates, oversized requests, rate limits, SSRF on URL inputs and error messages. Automate the checks that matter most so they run on every release.

What is the difference between 401 and 403?

401 Unauthorized means the request has no valid authentication, so the client should log in or refresh its token. 403 Forbidden means the caller is authenticated but not allowed to do this. Using them consistently makes clients and monitoring behave correctly.

Is rate limiting enough to protect an API?

No. Rate limiting stops floods and slows brute force, but it does nothing about a single request that reads another user's data or sets a forbidden field. You need authorization checks, input validation and rate limits together.

Should I use a wildcard in CORS for my API?

Only for truly public, read-only APIs that do not use cookies or credentials. For anything with logged-in users, list the exact origins you trust and never reflect the request's Origin header back blindly.

Sources (6)

Checked against these, last on 12 October 2026.

  1. OWASP Top 10 API Security Risks 2023, OWASPapi-security.owasp.org/editions/2023/en/0x11-t10/
  2. API3:2023 Broken Object Property Level Authorization, OWASPapi-security.owasp.org/editions/2023/en/0xa3-broken-object-property-level-authorization/
  3. API4:2023 Unrestricted Resource Consumption, OWASPapi-security.owasp.org/editions/2023/en/0xa4-unrestricted-resource-consumption/
  4. API9:2023 Improper Inventory Management, OWASPapi-security.owasp.org/editions/2023/en/0xa9-improper-inventory-management/
  5. REST Security Cheat Sheet, OWASPcheatsheetseries.owasp.org/cheatsheets/REST_Security_Cheat_Sheet.html
  6. Server Side Request Forgery Prevention Cheat Sheet, OWASPcheatsheetseries.owasp.org/cheatsheets/Server_Side_Request_Forgery_Prevention_Cheat_Sheet.html

Picked from the other libraries by shared topics.

Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.

  • 1:1 Mentorship
  • Fresh Graduate Mentorship
  • Career Guidance

Brand deals, promos and partnerships: tauseeffayyaz@gmail.com