atlas

Research map / Reinforcement learning / Visual and representation RL

APIRL: Deep Reinforcement Learning for REST API Fuzzing

AAAI 2025 · Reinforcement learning › Visual and representation RL · approach: Scalable RL systems and environments · 4 citations (OpenAlex)

Read the paperCheck your idea against 108,967 papers

AI-extracted summary. Written by AI from the paper's full text. Numbers and claims can be wrong or missing context, so check the paper before you cite or build on it.

Proposes APIRL, a DQN-based deep RL tool that mutates HTTP request templates to fuzz REST APIs, using a pre-trained RoBERTa embedding of JSON responses as state feedback.

Problem

Black-box REST API fuzzing is inefficient: existing tools use undirected search or simplistic status-code feedback, and miss contextual information in response bodies, requiring many test requests to find server-side bugs.

Approach

A DQN agent with a fixed set of 23 request-mutation actions, whose observation combines a RoBERTa embedding (pre-trained by masked language modelling on 2566 API responses) of the HTTP response with functional features; it is trained once on Generic University and then applied black-box to unseen APIs.

Key results

Measured effects reported in the paper

What was changedWhereMeasuredEffect
use learned DQN action selection instead of random actionsAPIRL · vAPIUnique bugs: 7.6 (1.1) -> 9.5 (0.6)Helped
use learned DQN action selection instead of random actionsAPIRL · SpreeUnique bugs: 2.25 (1.0) -> 10.2 (0.8)Helped
remove transformer embeddings (ablation)APIRL · All APIsCoverage: 95.6% -> 87.2%Hurt
remove transformer embeddings (ablation)APIRL-cov · All APIsCoverage: 96.4% -> 92.4%Hurt
replace DQN with PPO (ablation)APIRL · All APIsCoverage: 95.6% -> 85.7%Hurt
replace DQN with PPO (ablation)APIRL-cov · All APIsCoverage: 96.4% -> 90.8%Hurt
use status-code ratio reward (ablation)APIRL · All APIsCoverage: 95.6% -> 87.2%Hurt
use sparse uniform status-code reward (ablation)APIRL · All APIsCoverage: 95.6% -> 92.4%Hurt
use ARAT-RL-style reward (ablation)APIRL · All APIsCoverage: 95.6% -> 90.7%Hurt
use coverage-based reward instead of status-code reward (ablation)APIRL · All APIsCoverage: 95.6% -> 96.4%Helped
use sparse uniform coverage reward instead of coverage reward (ablation)APIRL-cov · All APIsCoverage: 96.4% -> 97.6%Helped
use coverage-ratio reward instead of coverage reward (ablation)APIRL-cov · All APIsCoverage: 96.4% -> 92.4%Hurt

Surprising findings

Limitations

Experimental setup

Datasets: Generic University SwaggerHub-crawled REST API responses (2566 responses, 1283 operations)

Benchmarks: VAmPI vAPI c{api}tal Spree Commerce BitBucket WordPress

Metrics: unique bugs (5XX) line coverage number of requests LoC per request

Baselines: EvoMaster RestTestGen DeepREST ARAT-RL MINER Rand-APIRL

Builds on: DQN prioritised experience replay RoBERTa ARAT-RL MINER

Closest papers by meaning

Writing a paper in this area? scime draft is a free LaTeX editor with AI included, real-time co-authors and a check of your references and venue rules before you submit. It also imports OpenAI Prism projects.

Open scime draft

Get the next scime Dispatch and a monthly field update

Free. We send a confirmation link first; every email has a one-click unsubscribe. Privacy