MuleSoft for Salesforce Developers: A practitioner's guide to deploying MuleSoft APIs and integrations for Salesforce enterprise solutions
()
About this ebook
MuleSoft for Salesforce Developers will help you build state-of-the-art enterprise solutions with flexible and scalable integration capabilities using MuleSoft’s Anypoint Platform and Anypoint Studio. If you’re a Salesforce developer looking to get started with this useful tool, look no further. This book will get you up to speed in no time, leveling up your integration developer skills.
This essential guide will first introduce you to the fundamentals of MuleSoft and API-led connectivity, before walking you through the API life cycle and the Anypoint Studio IDE. Once you have the IDE set up, you’ll be ready to create Mule applications. You’ll look at the core components of MuleSoft and Anypoint Platform, and before long you’ll know how to build, transform, secure, test, and deploy applications using the wide range of components available to you. Finally, you’ll learn about using connectors to integrate MuleSoft with Salesforce and to fulfill a number of use cases, which will be covered in depth, along with interview and certification tips.
By the end of this book, you will be confident building MuleSoft integrations at an enterprise scale and be able to gain the fundamental MuleSoft certification – MCD.
Related to MuleSoft for Salesforce Developers
Related ebooks
Enterprise Integration with Mulesoft: Learn how to leverage MuleSoft to power Enterprise Integration (English Edition) Rating: 0 out of 5 stars0 ratingsAutomation with SaltStack Rating: 0 out of 5 stars0 ratingsSalesforce Lightning Reporting and Dashboards Rating: 0 out of 5 stars0 ratingsUltimate Laravel for Modern Web Development Rating: 0 out of 5 stars0 ratingsCloud Computing Using Salesforce: Build and Customize Applications for your business using the Salesforce Platform (English Edition) Rating: 0 out of 5 stars0 ratingsSalesforce Advanced Administrator Certification Guide: Become a Certified Advanced Salesforce Administrator with this exam guide Rating: 0 out of 5 stars0 ratingsRust Cookbook Rating: 0 out of 5 stars0 ratingsMastering Application Development with Force.com Rating: 0 out of 5 stars0 ratingsInfrastructure Automation with Terraform: Automate and Orchestrate your Infrastructure with Terraform Across AWS and Microsoft Azure Rating: 0 out of 5 stars0 ratingsBuilding Microservices with .NET Core Rating: 1 out of 5 stars1/5Web Development on Netlify: Proven strategies for building, deploying, and hosting modern web applications Rating: 0 out of 5 stars0 ratingsMastering Apache Solr 7.x: An expert guide to advancing, optimizing, and scaling your enterprise search Rating: 0 out of 5 stars0 ratingsPuppet 8 for DevOps Engineers: Automate your infrastructure at an enterprise scale Rating: 0 out of 5 stars0 ratingsAkka Cookbook: Recipes for concurrent, fast, and reactive applications Rating: 0 out of 5 stars0 ratingsMastering ASP.NET Web API Rating: 0 out of 5 stars0 ratingsSoftware Development From A to Z: A Deep Dive into all the Roles Involved in the Creation of Software Rating: 0 out of 5 stars0 ratingsAgile, DevOps and Cloud Computing with Microsoft Azure: Hands-On DevOps practices implementation using Azure DevOps Rating: 0 out of 5 stars0 ratingsUltimate PowerShell Automation for System Administration Rating: 0 out of 5 stars0 ratingsChatGPT for Accelerating Salesforce Development: Achieve faster, smarter, and more cost-effective Salesforce Delivery with ChatGPT Rating: 0 out of 5 stars0 ratings
Software Development & Engineering For You
Python For Dummies Rating: 4 out of 5 stars4/5Android App Development For Dummies Rating: 0 out of 5 stars0 ratingsGrokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5PYTHON: Practical Python Programming For Beginners & Experts With Hands-on Project Rating: 5 out of 5 stars5/5Hand Lettering on the iPad with Procreate: Ideas and Lessons for Modern and Vintage Lettering Rating: 4 out of 5 stars4/5Learn to Code. Get a Job. The Ultimate Guide to Learning and Getting Hired as a Developer. Rating: 5 out of 5 stars5/5Creative Selection: Inside Apple's Design Process During the Golden Age of Steve Jobs Rating: 5 out of 5 stars5/5Beginning Programming For Dummies Rating: 4 out of 5 stars4/5Level Up! The Guide to Great Video Game Design Rating: 4 out of 5 stars4/5Debugging: The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems Rating: 4 out of 5 stars4/5Lua Game Development Cookbook Rating: 0 out of 5 stars0 ratingsOneNote: The Ultimate Guide on How to Use Microsoft OneNote for Getting Things Done Rating: 1 out of 5 stars1/5Tiny Python Projects: Learn coding and testing with puzzles and games Rating: 5 out of 5 stars5/5Managing Humans: Biting and Humorous Tales of a Software Engineering Manager Rating: 4 out of 5 stars4/5How Do I Do That In InDesign? Rating: 5 out of 5 stars5/5Adobe Illustrator CC For Dummies Rating: 5 out of 5 stars5/5Coding All-in-One For Dummies Rating: 0 out of 5 stars0 ratingsAgile Practice Guide Rating: 4 out of 5 stars4/5How to Write Effective Emails at Work Rating: 4 out of 5 stars4/5Gray Hat Hacking the Ethical Hacker's Rating: 5 out of 5 stars5/527 PROGRAM MANAGEMENT INTERVIEW TECHNIQUES - To Ace That Dream Job Offer ! Rating: 5 out of 5 stars5/5Data Visualization: a successful design process Rating: 4 out of 5 stars4/5Succeeding with AI: How to make AI work for your business Rating: 0 out of 5 stars0 ratingsRy's Git Tutorial Rating: 0 out of 5 stars0 ratingsGood Code, Bad Code: Think like a software engineer Rating: 5 out of 5 stars5/5iPhone Application Development For Dummies Rating: 4 out of 5 stars4/5
Reviews for MuleSoft for Salesforce Developers
0 ratings0 reviews
Book preview
MuleSoft for Salesforce Developers - Arul Christhuraj Alphonse
BIRMINGHAM—MUMBAI
MuleSoft for Salesforce Developers
Copyright © 2022 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author(s), nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capital. However, Packt Publishing cannot guarantee the accuracy of this information.
Group Product Manager: Alok Dhuri
Publishing Product Manager: Harshal Gundetty
Senior Editor: Nisha Cleetus
Business Development Executive: Uzma Sheerin
Technical Editor: Maran Fernandes
Copy Editor: Safis Editing
Project Coordinator: Manisha Singh
Proofreader: Safis Editing
Indexer: Subalakshmi Govindhan
Production Designer: Prashant Ghare
Marketing Coordinator: Rayyan khan and Deepak Kumar
First published: September 2022
Production reference: 1090922
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.
ISBN 978-1-80107-960-0
www.packt.com
To the memory of my father, Alphonse, and to my mother, Esther RajaRathinam, for their sacrifices and love.
– Arul Christhuraj Alphonse
To my wife, Ana, for being my biggest supporter, my best friend, and the best life partner I could’ve asked for. To my aunts, Elia and Vero, for believing in me unconditionally and for all of your love. To my mom, Lulu, for all your sacrifices, your long nights when I was sick, your hugs, your tears, your smiles, your warmth, and everything you gave me. Las amo, siempre.
– Alexandra Martinez
To my parents, I truly appreciate your efforts in bringing me up to be a better individual. To my best friend and my favorite human, Dan! I love you! To my little bro, Shubham, for being so mature and supportive.
– Akshata Sawant
Contributors
About the authors
Arul Christhuraj Alphonse works as a senior integration architect at Cognizant. Before working at Cognizant, he also worked at Akmin Technologies, Quinnox, IBM, and TCS. He has over 18 years of experience in the integration and API domain and has designed over 1,000 integrations. His educational qualifications include Master of Computer Applications and Master of Business Administration degrees, and his professional qualifications include MuleSoft Mentor, MuleSoft Certified Integration Architect, MuleSoft Certified Platform Architect, MuleSoft Certified Developer Level 1, and SoftwareAG webMethods Certified Professional. He was born and raised in Thoothukudi, Tamil Nadu, India, and currently lives in Singapore. He shares his knowledge through Udemy and the Tech Lightning YouTube channel.
I thank God because without God I wouldn’t be able to do any of this. I would like to thank my loving and understanding wife, Sahaya Divya, my son, Rithwin, my daughter, Riya, and also my family for their continuous support, patience, and encouragement throughout the long process of writing this book. Big thanks to my team at Cognizant and DFS for being supportive.
Alexandra Martinez is a developer advocate at MuleSoft, creating technical content to enable developers and architects to get started with MuleSoft’s products. Before this, Alex worked as a MuleSoft developer and was part of the MuleSoft community as an Ambassadress and meetup leader for the Toronto, Online Spanish, and Women Who Mule chapters. Alex has more than 10 years of experience in technology and has developed software in other languages, such as Java, Python, and PHP. Born and raised in Monterrey, Mexico, Alexandra’s MuleSoft career was key to moving to a different country, and she currently lives in Niagara Falls, Canada. Alex volunteers at organizations such as Women Who Code and Olascoaga MX to help close the gender gap in STEM careers.
I want to thank my dream team at MuleSoft: Mariana Lemus, Sabrina Marechal, Sabrina Hockett, Isabella Navarro, David Norris, and Meghan Murphy. You have helped me in more ways than you’ll ever know and I really appreciate it. I also want to thank Bits In Glass for changing my life, especially Aaron Wentzell and Graham Fraser for mentoring me.
Akshata Sawant is a developer advocate at MuleSoft. She’s been evangelizing MuleSoft through her blogs, videos, and training sessions. She has around five years of experience as a MuleSoft developer. Apart from this, she's also a MuleSoft Certified Developer and an architect. Akshata has been an active member of the MuleSoft community and is also a former MuleSoft Ambassadress and a meetup leader for the London, Mumbai, and Manchester regions. Her roots go back to Mumbai but she’s currently living her London dream. She’s been a global speaker and mentors women in the integration ecosystem.
I would like to thank my parents, Dan, Shubham, Chetan Parekh Sir, family, and my mentors at Apisero and EPAM for always motivating me. Thanks to all my friends for their honest reviews on my content. Thanks to everyone at Packt for being so patient and Uzma Sherin for trusting me with this book. To my team at MuleSoft and my amazing MuleSoft Community, a big thank you from the bottom of my heart! Ambadnya!
About the reviewers
Gaurav Kheterpal is a well-known name in the Salesforce ecosystem, a Salesforce MVP since 2016, and he holds 40 Salesforce Certifications, 21 Salesforce AP Credentials and 5 MuleSoft Certifications – he is ranked among the top 3 globally certified experts in Salesforce & Mulesoft ecosystems.
Gaurav has been recognized by Salesforce as a Developer Success Story and a Trailblazer. He has delivered several sessions at leading events such as Dreamforce, TrailheaDX, Salesforce World Tour, London’s Calling, and several others. Gaurav is passionate about evangelizing Salesforce and MuleSoft platforms in the broader community.
D Rajesh Kumar is a Lead MuleSoft Integration Architect with 17+ years of extensive experience in the IT industry. For the last 8 years, he has been working on the MuleSoft platform in various domains for end-to-end platform setups, architecture, design and Center for Enablement (C4E) setups and execution. He is a MuleSoft Certified Architect and a MuleSoft Ambassador recognized by MuleSoft for his expertise in Mule. He is currently working for TCS as Solution Architect and previously worked for Infosys, HCL, and Jamcracker.
Table of Contents
Preface
Part 1:Getting Started with MuleSoft
1
Introduction to APIs and MuleSoft
Understanding the need for an integration tool
Introducing no-code and low-code technologies
Analyzing integrations
Understanding APIs
Reviewing the restaurant analogy
Exploring an API example
Analyzing API components
Listing the benefits of using APIs
Introducing MuleSoft
Listing MuleSoft’s products
Understanding why MuleSoft is useful
Analyzing how MuleSoft helps Salesforce developers
Exploring application networks and the API-led connectivity approach
Understanding what application networks are
Analyzing the API-led connectivity approach
Summary
Questions
Answers
2
Designing Your API
Understanding an API life cycle
Introducing REST, HTTP, and SOAP
REST
HTTP/HTTPS
SOAP
Getting started with OAS and RAML
OAS
RAML
Getting started with API design
URI parameter
Query parameter
API mocking
Best practices and tips
API design naming convention
Optimizing your API design
Summary
Assignments
Questions
Answers
3
Exploring Anypoint Studio
Technical requirements
Downloading and installing Anypoint Studio
Downloading Anypoint Studio
Installing Anypoint Studio
Launching Anypoint Studio
Introducing the Mule Palette
Exploring the Mule project structure
Introducing Mule views and perspectives
Views
Building, running, and testing a Mule application
Building the Mule application
Running the Mule application
Testing the Mule application
Exporting and importing Mule files
Exporting a Mule application as a JAR file
Exporting a Mule application as a filesystem
Importing a Mule application from a JAR file
Importing a Mule application from the filesystem
Updating the theme in Anypoint Studio
Installing software updates in Anypoint Studio
Summary
Questions
Answers
4
Introduction to Core Components
Technical requirements
Getting familiar with a Mule flow
Exploring the types of Mule flow
Understanding the Mule event structure
Core components
Batch
Features of the Batch scope
The batch processing stages
A batch step
The batch aggregator
The batch job
Components
Custom Business Event
Dynamic Evaluate
Idempotent Message Validator
Invalidate Cache
Invalidate Key
Logger
Parse Template
Set Transaction Id
Transform Message
Endpoints
A Scheduler
Error handling
On Error Continue
On Error Propagate
Raise Error
Error Handler
Flow control
Choice
First Successful
Round Robin
Scatter-Gather
Scopes
Async
Cache
Flow
For Each
Parallel For Each
Sub Flow
Try
Until Successful
Transformers
Set Variable
Remove Variable
Set Payload
Summary
Assignments
Questions
Answers
5
All About Anypoint Platform
Technical requirements
Introducing Anypoint Platform
Getting started with Design Center
API Designer
Flow Designer
Introducing Exchange
The public portal
Exploring Runtime Manager
Deploying a Mule application into CloudHub
Managing a Mule application
Runtime Manager alerts
Anypoint VPC – virtual private cloud
Load balancer
Introducing API Manager
Exploring Anypoint Monitoring
Alerts
Log Management
Introducing Anypoint Visualizer
Exploring Access Management
Organization and business groups
Invite user
Roles
Environments
Audit logs
SUBSCRIPTION
Summary
Questions
Answers
Part 2: A Deep Dive into MuleSoft
6
Learning DataWeave
Technical requirements
Introducing DataWeave
Analyzing DataWeave
Diving into a script’s anatomy
Adding comments to your code
Understanding data types
Understanding data formats
Writing DataWeave scripts
Using operators
Creating and using variables
Defining and calling functions
Retrieving data with selectors
Understanding scopes and flow control
Summary
Questions
Answers
7
Transforming with DataWeave
Technical requirements
Understanding modules in DataWeave
Importing modules and functions
Analyzing the existing DataWeave modules
Using the DataWeave core functions
Transforming multiple types
Transforming numbers
Transforming strings
Transforming objects
Transforming arrays
Using the Transform Message component in Anypoint Studio
Exploring the views
Defining metadata
Creating custom modules
Summary
Questions
Answers
8
Building Your Mule Application
Technical requirements
Exploring different types of configuration files
Mule configuration file
Properties file
Project Object Model
Introducing Scheduler
Creating a Mule application with the Scheduler component
Generating a flow using APIkit Router
Creating a Mule application using an API specification
Running and testing a Mule application
Exploring Object Store Connector
Different types of Object Store
Creating a Mule application with Object Store Connector
Summary
Questions
Answers
9
Deploying Your Application
Technical requirements
Getting started with deployment models
Types of deployment models
Choosing the right deployment model
Understanding the different deployment environments
The hybrid model
Deploying your Mule application to CloudHub
Deploying your Mule application on an on-premises server
Building a CI/CD pipeline with MuleSoft
The Mule Maven plugin
Summary
Assignments
Questions
Answers
10
Secure Your API
Technical requirements
The need for API security
API security with MuleSoft
Introducing API Manager
Understanding the capabilities of API Manager
Understanding the API gateway
Policies in MuleSoft
Security
Compliance
Transformation
Quality of service
Custom policies
Implementing API security using policy
API Autodiscovery
Configuring a security policy
The security capabilities of MuleSoft
Anypoint Enterprise Security
Anypoint Security
Anypoint Flex Gateway
Summary
Assignments
Questions
Answers
11
Testing Your Application
Technical requirements
Introduction to testing
Getting familiar with testing tools
Postman
SoapUI
JMeter
Introducing MUnit
Creating a test suite
Exploring the MUnit Test Recorder
Creating a test suite using the Test Recorder
Summary
Assignments
Questions
Answers
Part 3: Integration with Salesforce and Other Connectors
12
MuleSoft Integration with Salesforce
Technical requirements
Exploring Salesforce connectors
Configuring a Salesforce connector
Adding a Salesforce connector
Discovering accelerators and templates for Salesforce
Getting started with accelerators
Exploring templates
Getting started with MuleSoft Composer
Capabilities of MuleSoft Composer
Configuring MuleSoft Composer
Exploring MuleSoft’s integration capabilities with Salesforce
The Bulk API
CDC events
Data analytics tools
Summary
Assignments
Questions
Answers
13
MuleSoft Connectors and Use Cases
Technical requirements
Introducing connectors
Exploring File Connector, FTP Connector, and SFTP Connector
File Connector
FTP Connector
SFTP Connector
Understanding Database Connector and watermarking
Watermarking
Configuring Web Service Consumer Connector
Publishing and subscribing using VM Connector
Operations
Publishing and listening to a message
Exploring JMS Connector
Operations
JMS Connector configuration
Introducing MuleSoft accelerators
Summary
Questions
Answers
14
Best Practices, Tips, and Tricks
Best practices
General best practices
Mule project best practices
Anypoint Platform best practices
Tips and tricks
Summary
Questions
Answers
15
Certification and Interview Tips
Getting MuleSoft certified
Expanding your knowledge with the official training
Developer training
Architect training
Operations training
Contributing to the MuleSoft Community
Expanding your knowledge with MuleSoft meetups
Helping others as a MuleSoft Mentor
Becoming a MuleSoft Ambassador
Getting help with the MuleSoft forums
Passing your interview
Summary
Questions
Answers
Index
Other Books You May Enjoy
Preface
MuleSoft for Salesforce Developers will help you build state-of-the-art enterprise solutions with flexible and scalable integration capabilities using MuleSoft’s Anypoint Platform and Anypoint Studio. If you’re a Salesforce developer looking to get started with this useful tool, look no further. This book will get you up to speed in no time, leveling up your integration developer skills.
Complete with step-by-step explanations of essential concepts, practical examples, and self-assessment questions, this essential guide will first introduce you to the fundamentals of MuleSoft and API-led connectivity, before walking you through the API life cycle and the Anypoint Studio IDE. Once you have the IDE set up, you’ll be ready to create Mule applications. We’ll look at the core components of MuleSoft and Anypoint Platform, and before long, you’ll know how to build, transform, secure, test, and deploy applications using the wide range of components available to you. Finally, you’ll learn about using connectors to integrate MuleSoft with Salesforce and fulfill a number of use cases, which will be covered in depth, along with interview and certification tips.
By the end of this book, you will be confident in building MuleSoft integrations at an enterprise scale. Also, it’ll help you to pass the fundamental MuleSoft certification – MuleSoft Certified Developer (MCD) – Level 1.
Who this book is for
This book is aimed at Salesforce developers who want to get started with MuleSoft. There’s an increasing demand for cross-cloud solutions that involve integrating MuleSoft with the core Salesforce platform or one of the Salesforce cloud offerings, such as Service Cloud, Marketing Cloud, and Commerce Cloud. Salesforce architects will also find the concepts covered in the book useful in designing Salesforce solutions.
It’s helpful if you have knowledge/prior experience with any programming language and some basic integration concepts.
Some basic familiarity with Salesforce development and experience with Salesforce APIs is expected – at least SOAP API, REST API, Bulk API, or Streaming API.
What this book covers
Chapter 1, Introduction to APIs and MuleSoft, covers what no-code and low-code technologies are, what APIs and integrations are, the different MuleSoft products, what application networks are, and what the API-led connectivity approach is.
Chapter 2, Designing Your API, explores the API life cycle and how to create an API specification and fragments using RAML, fundamentals of REST and SOAP API and HTTP protocol, capabilities of API Manager, and API Design best practices.
Chapter 3, Exploring Anypoint Studio, covers how to download Anypoint Studio from the official website, install it on the system, and perform the required configuration. After the installation, we will develop the new Mule application and run it inside Anypoint Studio.
Chapter 4, Introduction to Core Components, covers the basics of a Mule Event, the flow, and the sub-flow. It introduces us to several components, scopes, routers, transformers, and flow controls in Mule. It also examines error handling and batch processing in Mule 4.
Chapter 5, All About Anypoint Platform, delves into the Anypoint Platform components, such as Design Center – API Designer, Exchange, API Manager, Runtime Manager, and Anypoint Monitoring. At the end of this chapter, we will be familiar with how to create an API using Design Center, how to publish the API in Exchange, how to create the API in API Manager to enforce the policies, what Runtime Manager is, and how to monitor applications from Anypoint Platform.
Chapter 6, Learning DataWeave, covers an introduction to DataWeave if you’re new to the language. We discuss what DataWeave is, how scripts are created, how to add comments, and what data types, data formats, operators, variables, functions, selectors, scopes, and conditionals are.
Chapter 7, Transforming with DataWeave, focuses on learning more about the DataWeave modules and some of the most used functions in real life. We also learn about the Transform Message component to use DataWeave in Anypoint Studio.
Chapter 8, Building Your Mule Application, explains how to build a Mule application using different configuration and properties files, and also covers Scheduler Endpoint, the APIkit router, and Object Store.
Chapter 9, Deploying Your Application, explores the different deployment options available in MuleSoft, how to deploy an application to CloudHub, how to download and install a Mule on-premises server, how to deploy a Mule application to an on-premises server, and also how to build a CI/CD pipeline using MuleSoft.
Chapter 10, Secure Your API, covers the need to secure your API with the help of policies, explores the capabilities of API Manager, and more about MuleSoft’s security features.
Chapter 11, Testing Your Application, examines MUnit, MUnitTools, different operations, and how to create test suites and test cases using MUnit. We will also see how MUnit can speed up the development process and the test recorder.
Chapter 12, MuleSoft integration with Salesforce, covers how to leverage the capabilities of MuleSoft to integrate Salesforce with other end-systems. It also covers Salesforce connectors, accelerators, and templates and several capabilities of MuleSoft to make integration easy. It also covers about MuleSoft Composer to simplify integrations.
In the API-based approach, we will access the Salesforce objects via the API to access the information in real time. In the event-based approach, we will listen to the Salesforce topic to receive the message and process it synchronously to the required backend system.
Chapter 13, MuleSoft Connectors and Use Cases, delves into the different modules (File, FTP, SFTP, Database, Slack, SOAP, VM, and JMS) available in MuleSoft. In the File-based modules (File, FTP, and SFTP), we will connect to the system and read the file. We will also send the file through different connectors. In the Database module, we will perform the required connector configuration to a specific database and read/insert records from/to the database. This chapter also covers the different modules, such as Slack, Web Service Consumer (SOAP), VM, and JMS connectors.
Chapter 14, Best Practices, Tips, and Tricks, covers the MuleSoft best practices, guidelines, coding standards, tips, and tricks.
Chapter 15, Certification and Interview Tips, explores the different career paths you can choose in the MuleSoft ecosystem, what the different MuleSoft certifications are and some tips to get certified, what the different available trainings are, how to contribute to the MuleSoft community, and some interview tips for your first MuleSoft position.
To get the most out of this book
You will need a version of Anypoint Studio 7.x installed on your computer – the latest version, if possible. Examples have been tested using Anypoint Studio 7.12 on macOS. However, they should work with future minor version releases too.
You will need a web browser installed on your computer to access Anypoint Platform and the DataWeave Playground. Examples have been tested using Google Chrome on macOS. However, other browsers such as Safari or Firefox should work too.
You will need a REST client application installed on your computer to make requests to the APIs. Examples have been tested using Postman v9 on macOS and Windows. However, other tools such as an advanced REST client or curl should work too.
If you are using the digital version of this book, we advise you to type the code yourself or access the code from the book’s GitHub repository (a link is available in the next section). Doing so will help you avoid any potential errors related to the copying and pasting of code.
Download the example code files
You can download the example code files for this book from GitHub at https://github.com/PacktPublishing/MuleSoft-for-Salesforce-Developers. If there’s an update to the code, it will be updated in the GitHub repository.
We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!
Download the color images
We also provide a PDF file that has color images of the screenshots and diagrams used in this book. You can download it here: https://packt.link/u7ZAp.
Conventions used
There are a number of text conventions used throughout this book.
Code in text: Indicates code words in the text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: You want to compare whether b is greater than a or a is greater than or equal to b.
A block of code is set as follows:
a = 1
b = 5
if b > a:
print(b is greater than a
)
else:
print(a is greater than or equal to b
)
When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:
asyncapi: '2.0.0'
info:
title: MusicAsyncAPI
version: '1.0.0'
Bold: Indicates a new term, an important word, or words that you see onscreen. For instance, words in menus or dialog boxes appear in bold. Here is an example: Click on Publish and select the Publish to Exchange option.
Tips or Important Notes
Appear like this.
Get in touch
Feedback from our readers is always welcome.
General feedback: If you have questions about any aspect of this book, email us at [email protected] and mention the book title in the subject of your message.
Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you have found a mistake in this book, we would be grateful if you would report this to us. Please visit www.packtpub.com/support/errata and fill in the form.
Piracy: If you come across any illegal copies of our works in any form on the internet, we would be grateful if you would provide us with the location address or website name. Please contact us at [email protected] with a link to the material.
If you are interested in becoming an author: If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, please visit authors.packtpub.com.
Share Your Thoughts
Once you’ve read MuleSoft for Salesforce Developers, we’d love to hear your thoughts! Please click here to go straight to the Amazon review page for this book and share your feedback.
Your review is important to us and the tech community and will help us make sure we’re delivering excellent quality content.
Part 1:Getting Started with MuleSoft
Part 1 covers an introduction to MuleSoft, Anypoint Platform capabilities, and how to design an API. This part also covers the core components of Anypoint Studio. We will explore various components of Anypoint Platform. At the end of this part, we will be familiar with the features and capabilities of Anypoint Platform and Anypoint Studio. We will also have hands-on experience in designing an API.
The following chapters are included in this part:
Chapter 1, Introduction to APIs and MuleSoft
Chapter 2, Designing Your API
Chapter 3, Exploring Anypoint Studio
Chapter 4, Introduction to Core Components
Chapter 5, All About Anypoint Platform
1
Introduction to APIs and MuleSoft
The world is changing. Technologies keep emerging. There are more needs for technology now than there used to be, and it’s not a coincidence. Earlier, there were simple problems and simple solutions: maybe not the best solutions, but they worked well enough for the needs at the time. Now, we are swamped with different technologies we can choose from to achieve the same goal. We are bombarded with new programming languages, frameworks, and methodologies. What was popular yesterday is obsolete today. How do we keep up?
Before, it was good enough to just have an engineering or computer science degree to be able to thrive in the Information Technology (IT) world. Now, you don’t necessarily need a degree, but you do need to understand the basic terminology or learn the appropriate logic required to create software. A lot of people think this is a skill you are born with, that you either have what it takes to understand programming algorithms and patterns or you’re doomed to never be able to work in IT. This is not true – especially nowadays, in the no-code/low-code era.
Today, we can find mobile applications that do our work for us. There are tools online to help us write, design, paint, sing, and build, even if that is not our strongest suit. Why would programming be any different? This is where technologies such as Salesforce and MuleSoft come into play. The simplicity they’re based on helps you to thrive in this environment even if you don’t come from an IT background.
In this chapter, we’re going to cover the following main topics:
No-code and low-code technologies
Integrations
APIs
MuleSoft’s products
Application networks
API-led connectivity approach
Let’s start by understanding the need for an integration tool.
Understanding the need for an integration tool
If you come from a Salesforce background, you might not be 100% familiar with the usefulness of an integration tool such as MuleSoft. Before we dive into MuleSoft, let’s first understand why we need an integration tool and what low-code or no-code technologies are.
Introducing no-code and low-code technologies
Programming and software development have been evolving over the years. At first, programmers needed to manually translate the behavior they wanted into computer code. You needed to study a programming language, practice it, and really polish it to be able to create unimaginable programs. Eventually, this transformed into human-readable words that you could input into the machine and it would automatically know what you meant.
Fast-forward to the year 2022 and you don’t even have to input words for the computer to know what you want to do. Computers are now good enough to work with icons, buttons, or drag-and-drop components. You don’t need to memorize commands; you just need an introduction to the tool and some practice to be proficient in it. What a blessing!
Of course, there might still be some need to write code in order to have more customized behavior that fits into more complex needs for the tool; but code in general, or a programming language, is easier to understand every time.
Let’s now look into both no-code and low-code technologies in more detail.
No-code technologies
There are some applications that you can use that involve no coding whatsoever. A few examples that come to mind are Trello for project management, Canva for graphic design, or Zapier for integration/automation. You can use them without needing to know a programming language. It’s all done through clicks and configurations.
For example, Zapier and other tools such as If This Then That (IFTTT) are very popular because you only need your browser to access them. There’s no need to install an application on your computer or perform updates to your software. You can simply type the site name into your browser, create an account, and start using it right away. Of course, there is a learning curve to understanding how to use them. But this can be overcome in a matter of hours or days, not years of a professional career. With these kinds of integration tools, there are predefined apps that you can connect to through their Graphical User Interfaces (GUIs), such as Google Calendar, GitHub, and Philips Hue. You can create specific triggers to automate your day-to-day work. An example that comes to mind is sending a Slack message as soon as a commit is pushed in GitHub. You can just click through the flow to sign in to your accounts from these different services and you don’t even need to understand how their code works. That is the beauty of no-code technologies.
Low-code technologies
In low-code tools, you can still take advantage of drag and drop, clicks, and configurations, but there might be some coding involved for more precise functionality. However, programming is not the majority of the work. The technology does not revolve around the programming language; rather, it is considered a feature of the overall product. This is the case for Salesforce with Apex and MuleSoft with DataWeave. You can use Salesforce and MuleSoft without the need to use their programming languages, but they are available for you in case you need custom functionality.
We will look into these in more detail later in the book, but if you’re completely new to MuleSoft, picture this: you have a palette of connectors you can choose from. There is a Salesforce connector,