Quarkus REST API Guidelines

SkillMedia

Use when you need to design, review, or improve REST APIs with Quarkus REST (Jakarta REST) — including resource classes, HTTP methods, status codes, request/response DTOs, Bean Validation, exception mappers, optional runtime OpenAPI exposure (SmallRye), contract-first generation from OpenAPI, content negotiation, pagination, sorting and filtering, API versioning, idempotency (Idempotency-Key), optimistic concurrency (ETag / If-Match), HTTP caching (Cache-Control), API deprecation (Sunset / Deprecation headers), RFC 7807 Problem Details, ISO-8601 for time in contracts, and security-aware boundaries. This should trigger for requests such as Review or improve JAX-RS resources in a Quarkus project; Design HTTP APIs with validation and error handling on Quarkus; Add API versioning, idempotency, ETag concurrency, or deprecation headers; Implement pagination, sorting, or RFC 7807 Problem Details error responses; Improve Quarkus REST resources and exception mappers. Part of Plinth Toolkit

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Quarkus REST API Guidelines skill

What this skill tells your AI

The instructions your AI receives, as published by jabrena/plinth in skills/402-frameworks-quarkus-rest/SKILL.md and read by ahel’s review.

Apply REST API design principles on Quarkus using Jakarta REST (JAX-RS).

What is covered in this Skill?

  • Resource classes, @Path, HTTP method mapping, and resource URI design
  • Status codes, Location headers, and Response building
  • DTOs and Bean Validation at the boundary; ISO-8601 for date/time fields
  • ExceptionMapper for consistent error JSON (RFC 7807 Problem Details)
  • API versioning strategies (URI path, Accept header)
  • Idempotency with Idempotency-Key header
  • Optimistic concurrency: ETag, If-Match, If-None-Match
  • HTTP caching with Cache-Control headers
  • API deprecation: Sunset and Deprecation headers
  • Pagination, sorting, and filtering query parameters
  • Optional /openapi via SmallRye; API-first contract maintained in openapi.yaml (codegen)
  • Reactive vs blocking considerations; @RunOnVirtualThread
  • Security integration at the filter layer

Scope: Apply recommendations based on the reference rules and good/bad code examples.

Constraints

Before applying REST changes, ensure the project compiles. After applying improvements, run full verification.

  • MANDATORY: Run ./mvnw compile or mvn compile before applying any change
  • PREREQUISITE: Project must compile before applying REST API improvements
  • SAFETY: If compilation fails, stop immediately
  • BLOCKING CONDITION: Compilation errors must be resolved by the user before proceeding
  • VERIFY: Run ./mvnw clean verify or mvn clean verify after applying improvements
  • BEFORE APPLYING: Read the reference for detailed rules and examples

When to use this skill

  • Review or improve JAX-RS resources in a Quarkus project
  • Design HTTP APIs with validation and error handling on Quarkus
  • Add API versioning, idempotency, ETag concurrency, or deprecation headers
  • Implement pagination, sorting, or RFC 7807 Problem Details error responses
  • Improve Quarkus REST resources and exception mappers

Workflow

  1. Read reference and assess project context

Read references/402-frameworks-quarkus-rest.md and inspect the current project setup before proposing changes.

  1. Gather scope and decide target improvements

Identify requested outcomes, constraints, and the minimum safe set of changes to apply.

  1. Apply framework-aligned changes

Implement or refactor configuration/code following the reference patterns and project conventions.

  1. Run verification and report results

Execute appropriate build/tests and summarize what changed, what was verified, and any follow-up actions.

Reference

For detailed guidance, examples, and constraints, see references/402-frameworks-quarkus-rest.md.

Signals

GitHub stars
439
Forks
92
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
x-402-frameworks-quarkus-rest
Source
github.com/jabrena/plinth