Registration for the self-paced course
A self-paced version of this course is available for purchase for $150; it is not free. This price includes 90 days of access to the course from the date you enroll.
Register
Summary
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.
Objectives
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.
Prerequisites
- Getting Started with Anypoint Platform
Setup requirements
- 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
|