trainocate-advanced-technology-courses-b
Home > Vendors > advanced-technology-courses > atc-api-designing

ATC-API-DESIGNING - API Designing

Overview

Duration: 2 days
The API Designing course will help you learn and get a hands-on experience creating well-designed, modular API definitions using RAML 1.0 and Anypoint Platform.

Objectives

  • Translate design requirements into API resources and methods. 
  • Use API designer to create API definitions.  
  • Use RAML to define API resources, methods, parameters, and responses. 
  • Document and test APIs. 
  • Minimize repetition in API definitions using resource types and traits. 
  • Model data in APIs using data types. 
  • Modularize APIs using libraries, overlays, and extensions. 
  • Specify API security schemes.

Audience

  • API designers
  • Developers 
  • Architects

Content

Designing APIs
Module 1: Introducing RESTful API Design
  • Describe the common web API formats including SOAP, RPC, and REST  
  • Describe REST API architecture 
  • List the rules for retaining REST principles in APIs 
  • Describe design-first approach for REST APIs

Module 2: Translating Functional Requirements for APIs
  • Identify different categories and actions for a REST API 
  • Convert categories to resources 
  • Select HTTP methods to support the actions on the categories

Module 3: Introducing API-Led Connectivity and the API Lifecycle
  • Describe the API development lifecycle 
  • Explain MuleSoft's API-led connectivity approach 
  • Navigate Anypoint Platform 
  • Describe the API design lifecycle with Anypoint Platform

Defining APIs with the RESTful API Modeling Language (RAML)

Module 4: Defining API Resources and Methods
  • Use RAML 1.0 to create API definitions 
  • Define resources and methods in RAML API definitions 
  • Specify URI parameters for necessary resource methods

Module 5: Specifying Responses
  • Describe response structure in HTTP methods 
  • 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 6: Documenting and Testing APIs
  • Add documentation and description nodes to RAML definitions 
  • Use the mocking service to create API endpoints 
  • Use the API Console to test API endpoints

Module 7: Making APIs Discoverable
  • Create API Portals for learning about and testing APIs
  • Customize API Portals with themes 
  • Publish API definitions to the Anypoint Exchange for discovery 
  • Gather feedback from API consumers

Module 8: Modeling Data
  • Create datatypes and their properties for resources 
  • Create examples for datatypes 
  • Include datatypes and examples in resource methods 
  • Create scenarios in API Notebook to manipulate data using datatypes and examples

Module 9: Reusing Patterns
  • Create and reference resource types patterns for reusability 
  • Use traits to modularize methods

Module 10: Modularizing APIs
  • Use libraries for greater API composability 
  • Use overlays to internationalize resources  
  • Use extensions to promote portability to test APIs in multiple environments

Module 11: Securing APIs
  • Define API security requirements 
  • Use security schemes to apply resource and method level policies 
  • Define custom security schemes for APIs 
  • Apply an OAuth2.0 external provider policy to resource methods

Module 12: Enhancing API Responses using Hypermedia
  • Describe hypermedia 
  • Simplify API discoverability using hypermedia 
  • Use hypermedia to enhance API responses 
  • Modify API definitions to generate state-specific client responses in resource method

Module 13: Versioning APIs
  • Explain when and when not to version APIs 
  • Describe the methods for versioning APIs 
  • Document changes in new API versions using shared API Portals
  • Deprecate older versions of APIs

Prerequisites

  • An understanding of HTTP protocol 
  • Web programming experience

Certification

Trainocate Certificate of Attendance

Schedule





Enquire Now
 
 
 
 
By clicking "Submit", I agree to the Terms Of Use and Privacy Policy