Challenge - 5 Problems
OpenAPI Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate1:30remaining
What is the output of this OpenAPI snippet?
Given this OpenAPI YAML snippet describing a GET endpoint, what is the value of the
summary field for the /pets path?Rest API
paths:
/pets:
get:
summary: List all pets
responses:
'200':
description: A paged array of petsAttempts:
2 left
💡 Hint
Look for the
summary field under the get method.✗ Incorrect
The
summary field directly describes the endpoint's purpose. Here, it is 'List all pets'.🧠 Conceptual
intermediate1:00remaining
Which HTTP status code is used for a successful resource creation in OpenAPI?
In OpenAPI specifications, which HTTP status code should be used to indicate that a resource was successfully created?
Attempts:
2 left
💡 Hint
Think about the standard HTTP codes for resource creation.
✗ Incorrect
HTTP status code 201 means 'Created' and is used when a new resource is successfully created.
🔧 Debug
advanced2:00remaining
Identify the error in this OpenAPI parameter definition
What error will this OpenAPI parameter definition cause when validating the spec?
Rest API
parameters:
- name: userId
in: query
required: true
schema:
type: integer
format: uuidAttempts:
2 left
💡 Hint
Check if the format matches the type.
✗ Incorrect
The 'uuid' format applies only to strings, not integers. Using 'uuid' with type 'integer' is invalid.
📝 Syntax
advanced2:30remaining
Which option correctly defines a request body in OpenAPI 3.0?
Select the correct YAML snippet that defines a JSON request body with a required 'name' string property.
Attempts:
2 left
💡 Hint
Remember the correct nesting of 'content' and 'schema' in requestBody.
✗ Incorrect
Option D correctly nests 'schema' inside 'content' with proper 'required' array syntax.
🚀 Application
expert2:00remaining
How many endpoints are defined in this OpenAPI snippet?
Count the total number of unique HTTP methods defined under the 'paths' object.
Rest API
paths:
/users:
get:
summary: Get users
post:
summary: Create user
/users/{id}:
get:
summary: Get user by ID
put:
summary: Update user
delete:
summary: Delete user
/status:
get:
summary: Get statusAttempts:
2 left
💡 Hint
Count each HTTP method under each path separately.
✗ Incorrect
There are 2 methods under /users (get, post), 3 under /users/{id} (get, put, delete), and 1 under /status (get), totaling 6.