Safeguard
Security Guides•

API security testing terms explained: twelve you will hear in vendor calls

Plain definitions of BOLA, BFLA, BOPLA, introspection, fuzzing, baseline and active scans, spec import and shadow APIs, so you can follow a vendor call.

Safeguard Security Team
9 min read

API security testing means sending requests to an API on purpose to find weaknesses in access control, data exposure, limits and configuration. This glossary defines twelve terms that come up in buying conversations, using the OWASP 2023 API risk names where they apply.

The terms

TermPlain definition
API security testingChecking an API by calling it, as different users, with unusual input, to see whether controls hold
OpenAPI specificationA machine-readable description of an API's operations, parameters and responses, often used as scanner input
Spec importLoading that description into a tool so it knows which operations to test
BOLABroken object level authorization. One user can reach another user's object by changing an ID. OWASP API1:2023
BOPLABroken object property level authorization. A user can read or write properties of an object they should not, which covers excessive data exposure and mass assignment. API3:2023
BFLABroken function level authorization. A lower role can call a function meant for a higher one. API5:2023
Unrestricted resource consumptionMissing limits on requests, sizes or spend. API4:2023
Improper inventory managementOld versions, forgotten hosts and undocumented endpoints nobody tracks. API9:2023
IntrospectionA GraphQL feature that returns the schema on request
FuzzingSending large numbers of varied or malformed inputs to provoke errors
Passive or baseline scanObserves traffic and responses without sending attack requests
Active scanSends crafted attack requests to the target

Two more worth knowing: a shadow API is an endpoint that exists in production but is not in your documentation or inventory, and a business flow is a sequence like checkout or sign-up that can be abused even when each call looks valid (API6:2023, unrestricted access to sensitive business flows).

How the terms show up in conversations

"We support OpenAPI import." Ask what happens when the spec is wrong or old. OWASP's testing guidance says documentation may be inaccurate or incomplete and should be verified.

"We test the OWASP API Top 10." Ask which of the ten the tool finds by itself, which need two accounts you provide, and which need a human. Access control risks need requests made as different users. Business flow abuse needs someone who understands the flow.

"We do a baseline scan." That means passive. It is safe in production, and it cannot find most authorization flaws.

"We scan active." That means attack requests, possibly including write methods. Ask about safe handling and rate ceilings.

"We find shadow APIs." Ask how. Common sources are traffic, client-side code, historical URLs, source code routes, and network scans, all of which the OWASP reconnaissance guidance lists. Each has blind spots.

Terms people confuse

  • Authentication vs authorization. Authentication proves who you are. Authorization decides what you may do. BOLA, BOPLA and BFLA are all authorization failures.
  • Scan vs penetration test. A scan is automated and repeatable. A penetration test adds human judgment, especially for logic flaws.
  • Vulnerability vs misconfiguration. One is a flaw in code, the other is a setting. API8:2023 covers the latter.

A tip for buyers

Ask a vendor to define their terms using these names. If an answer sounds like a list of attack types without saying what needs to be provided, such as accounts or a spec, press for specifics.

A worked example using the terms

To see the vocabulary in action, take a short vendor call transcript, paraphrased, and translate it.

Vendor says: "We import your OpenAPI file, run a baseline scan on every pull request, and an active scan nightly against staging. We detect BOLA and BFLA using two accounts you provide."

Translation, term by term:

  • "Import your OpenAPI file" means spec import. The tool will test the operations in your description. Ask what happens to operations that are missing from it.
  • "Baseline scan on every pull request" means passive checks only. Expect findings about headers, cookies and error details, not authorization.
  • "Active scan nightly against staging" means attack requests. Ask about write methods, rate ceilings and how the staging data is protected.
  • "BOLA and BFLA using two accounts" means the tool can compare how two users are treated. Ask whether it also supports role accounts for function level checks, and anonymous callers.

Now a second statement: "We also discover shadow APIs from traffic." Translation: the tool looks at observed requests and compares them with documentation. Ask what traffic it sees: production, staging, or only the scan's own requests. A shadow API that is never called during the observation window will not appear.

A short checklist of follow-up questions

Term in the pitchFollow-up question
Spec importWhat formats are supported, and what is reported when parsing fails?
Baseline scanWhich findings can it produce without sending attack requests?
Active scanCan I limit methods, paths and request rate?
BOLA, BFLA, BOPLAWhich accounts do I need to provide, and how are results shown per account?
IntrospectionDoes the tool test for open introspection and field suggestions on GraphQL?
FuzzingDoes it avoid flooding, and can I set a ceiling?
Shadow APIWhat data source does discovery use, and how often does it refresh?
Unrestricted resource consumptionDoes it test limits, or just report missing headers?

Using the glossary in your own documents

When you write a test plan or a questionnaire answer, use the same terms. "We test for BOLA with two seeded accounts on staging, weekly" says more than "we test authorization". It tells a reader the control, the method and the frequency.

It also helps in a review. If a colleague writes "API tested" in a ticket, ask which of these terms applies: passive or active, which accounts, which versions. Over time the team's records become comparable from one test to the next.

Terms that are likely to change

Names and numbering in the OWASP list differ between editions. The 2023 list is the one used here. Newer editions may rename or reorder items, so check the current version before you cite a number in a contract or a report. The ideas stay stable even when the labels move.

Related terms you may meet next

Once the twelve above are familiar, a few neighbors are worth knowing.

TermPlain meaning
Mass assignmentThe server accepts fields it should not let the caller set, such as a role. A cause of property level flaws
Rate limitingCapping how often a client can call, tied to resource consumption
IdempotencySending the same request twice has the same effect as sending it once, which helps with retries but also affects abuse testing
ScopeThe agreed list of hosts, paths and methods a test may touch
Rules of engagementThe written terms of a test: scope, window, limits, contacts
False positiveA reported issue that is not real
False negativeA real issue the test did not report
Regression testA test that checks an earlier fix still holds

False negatives are the ones to worry about with scanners, because by definition you do not see them. That is why coverage, accounts and mode matter more than the finding count.

How to build your own one-page glossary

A shared vocabulary is cheap to build and pays back in every review. Start with the twelve terms above and add the words your team actually uses.

  1. Collect the terms from real documents. Read your last two test reports and your last questionnaire. Underline every term a newcomer would need explained.
  2. Write one sentence each. If a definition needs two sentences, the term is probably two terms.
  3. Add an example from your own API. "BOLA: user B reads user A's invoice by changing the invoice ID in the billing API" sticks better than an abstract line.
  4. Note the source. Where a term comes from a published list, name it and the edition, so people know where to check for changes.
  5. Put it where people look. A page in the engineering wiki linked from the test plan template beats a document nobody opens.
  6. Review it twice a year. Terms drift, tools change names, and new risks appear.

New joiners, sales engineers and auditors all benefit. When everyone means the same thing by passive, active and coverage, test results travel between teams without being misread.

Try it yourself

Open the demo and match each finding to one of the terms above.

Click through it at your own pace, or open it full screen.

Quick check

Is BOLA the same as IDOR?

They describe the same kind of weakness, a user reaching another user's object by changing a reference. BOLA is the name used in the OWASP API list.

Does a baseline scan test authorization?

Not in any meaningful way. Authorization testing needs requests made as different users.

Where can I see the official names for the ten API risks?

The OWASP API Security Top 10 2023 page lists them with their identifiers, such as API1:2023 for broken object level authorization. Check for a newer edition before quoting numbers.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.