Registration for the instructor-led course
MuleSoft expert-led courses have a new home. Visit Trailhead Academy to learn more and register.
This course is for API designers, developers, and architects who want to get hands-on experience creating well-designed, modular API definitions using RAML 1.0 and Anypoint Platform™.
Get a datasheet for the course here.
At the end of this course, students should be able to:
- Translate functional design requirements into API resources and methods.
- Use API Designer to create API specifications.
- Define API resources, methods, parameters, and responses using RAML.
- Model data in APIs using datatypes.
- Document and test APIs.
- Make APIs discoverable.
- Minimize repetition in APIs using resource types and traits.
- Modularize APIs using libraries, overlays, and extensions.
- Specify API security schemes.
- Enhance API responses using hypermedia.
- Version APIs.
- Getting Started with Anypoint Platform
- A computer with a minimum screen resolution of 1024x768
- Unrestricted internet access to port 80 (with > 5Mbps download and > 2Mbps upload)
- The latest version of Chrome, Safari, Firefox, or Edge
- An Anypoint Platform account
Get a detailed setup document here.
PART 1: Designing APIs
|Module 1: Introducing RESTful API design
- Review AnyPoint Platform as it pertains to API design
- Describe the architecture of REST APIs
- List the rules for enforcing REST principles in APIs
|Module 2: Translating functional requirements for APIs
- Identify different categories and actions for REST APIs
- Translate categories to resources
- Select HTTP methods to support the actions on the categories
PART 2: Defining APIs with the RESTful API Modeling Language (RAML)
|Module 3: Defining API resources and methods
- Describe API specification languages used to create API definitions
- Use API Designer to create RAML API definitions
- Define resources and methods in RAML API definitions
|Module 4: Specifying responses to REST API calls
- Create HTTP method responses
- Use status codes in HTTP responses
- Add error handling and caching information to HTTP responses
- Select and specify the types of content returned in HTTP responses
|Module 5: Modeling data
- Identify datatypes and attributes used in resource methods
- Create datatype fragments
- Set request and response body types to datatypes
- Create examples for datatype fragments
- Include examples in datatype fragments
|Module 6: Documenting and testing APIs
- Add documentation and description nodes to API definitions
- Use the mocking service to create API endpoints
- Use the API console to test API endpoints
|Module 7: Making APIs discoverable
- Publish API specifications and fragments to Anypoint Exchange for discovery
- Create API portals for learning about and testing APIs in Anypoint Exchange
- Customize public portals with themes
- Gather feedback from API consumers
|Module 8: Reusing patterns
- Create and reference resource types for reusability
- Use traits to modularize methods
- Use libraries for greater API composability
|Module 9: Securing and governing APIs
- Define API security requirements
- Use security schemes to apply resource-level and method-level policies
- Define custom security schemes for APIs
- Apply an OAuth2.0 external provider policy to resource methods
- Use API Governance to enforce security and conformance rules
|Module 10: Enhancing API responses by using hypermedia
- Describe hypermedia
- Simplify API discoverability and enhance responses using hypermedia
- Modify API definitions to generate state-specific client responses
|Module 11: Versioning APIs
- Explain when and when not to version APIs
- Describe the methods of versioning APIs
- Document changes in new API versions using API portals
- Deprecate old API versions