Building API Implementation Interfaces7% of the exam

Predicting APIkit flows, routing and validation

How to count and name the flows APIkit scaffolds from a RAML file, predict which APIKIT error the router raises for a bad path, method, parameter or missing flow, and know what the router validates, fills in with defaults and leaves to API Manager policies.

Official exam objective
Predict the results of APIkit based upon a RAML specification.

~7 min read · 8 practice questions ·

What the exam expects

  • Count the flows APIkit scaffolds from a RAML file, including the main and console flows and one flow per resource, method and request media type.
  • Write the generated name of a resource-method flow from the RAML path and the apikit:config name.
  • Predict the APIKIT:* error and scaffolded status for a request that hits an undeclared path or method, fails validation, or has no implementation flow.
  • Predict what the router validates (headers, query and URI parameters, body), what it adds (declared defaults), and what it ignores (securedBy).
  • Key terms: APIkit Router (main-flow processor that validates, enriches and routes requests); action-resource-content-type combination (the unit APIkit generates one flow for); APIKIT:* error types (router errors such as APIKIT:BAD_REQUEST); strict validation (rejecting query parameters or headers the specification does not declare); enrichment (the router adding declared default values).

Key facts

Infrastructure flows
Detail
Main flow (listener, router, error handler) and console flow
Implementation flows
Detail
One per action-resource-content-type combination, no source
Flow name pattern
Detail
get:\users\userbyid:api-config
Invalid request
Detail
Bad request: APIKIT:BAD_REQUEST, 400
Declared method, no flow
Detail
Not implemented: APIKIT:NOT_IMPLEMENTED, 501
Validated
Detail
Payload, headers, query parameters, URI parameters
Not validated
Detail
Security such as authentication; gateway policies do it
Enrichment
Detail
Router adds declared default values
Strict validation
Detail
Query Parameters / Headers Strict Validations in the router configuration
Sources for this section (4)
  • When would a developer select **Disable Validations** on the router configuration?
  • Why select **Query Parameters Strict Validations**?
  • What does an apikit:flow-mapping with no content-type match?
  • Which status does the scaffolded handler map APIKIT:UNSUPPORTED_MEDIA_TYPE to?

The questions are free to read. Answers with their sources and self-grading are included with the pack.

Keep reading with the MuleSoft Developer pack

  • Core concepts
  • Exam traps
  • Worked scenario

The pack includes:

  • All 40 lessons of the MuleSoft Developer guide, with reading progress
  • Interactive decision walks and step-by-step sequence steppers
  • Practice exams purchase adds inline bank questions and topic practice (8 questions for this lesson)
  • An official source cited for every claim
  • An AI tutor that answers from the guide
  • Unlimited timed practice exams

Practice for the MuleSoft Developer exam