BassemE/mulesoft-documentation-embeddings huggingface dataset:
Security | MuleSoft Documentation
# Security
Anypoint API Community Manager uses the same secure hardware, backup, disaster recovery, and business continuity systems as Salesforce and Anypoint Platform.
API Community Manager is part of Anypoint Platform and each member user of the API Community Manager portal has an identity in Anypoint Platform. This identity is also used as their API Community Manager account.
All connections between API Community Manager and related systems, such as Salesforce and Anypoint Exchange, are encrypted with Transport Layer Security (TLS).
During initial configuration, you can set API Community Manager to use a third party single sign-on (SSO) provider, such as Okta, for member connections to both Anypoint Platform and Salesforce systems.
Anypoint Access Management configures Identity Management for single sign-on (SSO) in MuleSoft, and supports LDAP and other standards.
Anypoint API Manager applies policies to APIs for security, and supports OAuth 2.0 and other standards.
If you discover a security vulnerability, follow the steps in How to Report Vulnerabilities or Security Issues on Mule Products to send a report to security@salesforce.com with detailed steps to reproduce the vulnerability.
## See Also
  *
Create a Directory Using File Connector Example | MuleSoft Documentation
# Create a Directory Using File Connector Example
Anypoint Connector for File (File Connector) provides a **Create directory** operation that enables you to create a directory of a given name.
If the reason for creating the directory is to immediately write, copy, or move content to the directory, then use the **Write** , **Copy** , or **Move** operations with the **Create parent directories** field set to **TRUE**.
## Configure the Create Directory Operation in Studio
To add and configure the **Create directory** operation in Studio, follow these steps:
  1. In the **Mule Palette** view, search for `file` and select the **Create directory** operation.
  2. Drag the **Create directory** operation onto the Studio canvas.
  3. In the **General** tab of the operation configuration screen, click the plus sign (**+**) next to the **Connector configuration** field to access the global element configuration fields.
  4. Specify the connection information and click **OK**.
  5. Set **Directory path** to the new directory’s path name, for example, `~/newFolder`.


In the **Configuration XML** editor, the `<file:create-directory>` configuration looks like this:
```
<file:create-directory doc:name="Create directory" config-ref="File_Config" directoryPath="~/newFolder"/>
```

## See Also
  * File Connector Examples
  * MuleSoft Help Center
Manage Members | MuleSoft Documentation
# Manage Members
Consumer developers self-register for access to your Anypoint API Community Manager community. You can then approve member registrations to give them access to the restricted sections of your community.
Registered members require a license. No license is required for guest users. For full information about licenses, refer to the Licensing Overview.   
---  
## Member Registration and Activation
When consumer developers browse your community as unregistered users (guests), they can view only limited information.
Consumer developers follow these steps to self-register:
  1. Navigate to the community to which they want access.
  2. Select **Log in**.
  3. Select **Not a member?**
  4. Enter their community username and password.
  5. Select **REGISTER** to submit the registration request.


## Approve and Activate Members
  1. After the consumer developer sends a registration request, you receive a notification email.
  2. To review and approve the request, open the API Community Manager control panel and click **Member Management**.
  3. Open the **Members** tab to view a searchable list of current members, with the option to disable and enable their accounts.
  4. To deactivate a member, disable the **Active** setting for that member and confirm the change.
  5. Open the **Pending members registration** tab to view a searchable list of requests for access.
  6. To reject a registration request, select **Reject** and confirm the change.
A user whose request is rejected cannot request registration again for 30 days. To undo a rejection by retrieving the rejected request, enable **Show rejected users** and click **Retrieve**.
  7. To approve a request, select **Approve** and confirm the change.
  8. After you approve a registration request, a welcome email is sent to the consumer developer.
  9. To complete registration, the member must click an email verification link in the email and specify a new password.
The consumer developer can then log in to your community. When the member’s status is **Active** , additional options become available to the developer, such as **Forums** and **My Applications**.


## Searching Members
In the API Community Manager control panel, the **Member Management** tab shows a search bar. Enter one or more terms into the search field.
You can filter search results with the following filter attributes:
  * `fullName`
  * `userName`


To use a filter attribute, type the attribute name followed by a colon and the value for that attribute. For example, filtering with `userName:Smith` only shows members with names that include "Smith", such as `jsmith@company.com` and `sue.jones@ironsmith.com`.
Search terms without a filter attribute only apply to member fields that are not filtered. For example, the search `userName:com Jones` shows members that include "com" in the "Username" field and "Jones" in any field other than "Username".
DataWeave Issues and Errors | MuleSoft Documentation
# DataWeave Issues and Errors
Cloud IDE 
Desktop IDE 
**Open Beta Release** : The **cloud IDE is in open beta**. Any use of Anypoint Code Builder in its beta state is subject to the applicable beta services terms and conditions, available from the IDE.
When Anypoint Code Builder can’t process a value, the IDE provides a visual indicator to identify an issue with the value. Issues include:
  * Unable to find sample input
  * Unable to resolve reference
  * Expects _x_ but got _y_
  * 

## Unable to Find Sample Input
The DataWeave error `Unable to find sample input` applies to a Mule event variable, such as `payload`. In this case, the IDE places a wavy blue line under the value in the configuration XML file.
If your application isn’t running, the IDE can’t provide any information about Mule variables unless you provide sample data. Use Quick Fix to provide sample data in the format and data structure that you expect to be present when the application runs.
For more information about Mule event variables, see Predefined Variables.
## Unable to Resolve Reference
The error `Unable to resolve reference` is typically for a sequence of characters like `afkdldjf` that isn’t recognized.
Either provide the intended value or use Quick Fix to convert the character sequence into a DataWeave variable. For more information, see DataWeave Variables.
## Expects _x_ but Got _y_
The error similar to `Expects _x_ but got _y_`typically indicates that something is wrong with the provided function. For example,`Expects 1 argument but got 0` occurs for `round()` because the function is missing an argument, in this case, a number to round. An example of a fix is `round(1.65)`. Similar errors indicate that an argument is of the wrong data type or that a function is otherwise malformed and requires correction.
Read the error message to determine what part of the expression to fix, and review the function description after the error message to learn more about the function. See DataWeave Modules to find additional DataWeave function documentation.
## Invalid Input
The error `Invalid input` typically occurs when special characters, such as `?`, appear in a DataWeave expression and aren’t escaped, for example:
For more information, see Rules for Declaring Valid Identifiers and Escape Special Characters.
Sending Application-to-Application Requests in the Same Cluster | MuleSoft Documentation
# Sending Application-to-Application Requests in the Same Cluster
In an Anypoint Runtime Fabric cluster, every application replica exposes an endpoint inside the cluster. When you enable inbound traffic, that endpoint is exposed externally. Refer to Configuring Ingress for Runtime Fabric for additional information about servicing external requests.
To send a request from one application to another application inside the cluster, use the application name and environment ID.
Every application has a DNS record in the cluster internal domain. For example, the DNS record for the application `hello-world` in the `2abc2ce6-cce6-463b-afaa-a1979e3xxxxx` environment is:
```
hello-world.2abc2ce6-cce6-463b-afaa-a1979e3xxxxx.svc.cluster.local
```

Because application replicas first search DNS records in the same domain before searching the parent domain, you need only the application name and environment ID to send a request to another application in the same cluster. If both applications are in the same namespace, you need only the application name:
```
http://hello-world:8081/api
```

If required, replace `http` with `https`.
The following example sends a request from one application to an application in another namespace. In this example, `1abc2ce6-cce6-463b-afaa-a1979e3xxxxx` is another envionment in the same Runtime Fabric cluster, so this environment ID is appended to the application name:
```
http://hello-world.1abc2ce6-cce6-463b-afaa-a1979e3xxxxx:8081/api
```
FHIR R4 US Core Profile | MuleSoft Documentation
# FHIR R4 US Core Profile
The MuleSoft Accelerator for Healthcare provides a library of United States Core Data for Interoperability (USCDI) and FHIR R4 resources to help healthcare developers adhere to interoperability needs and jumpstart the development of healthcare digital transformation initiatives.
You can also use the FHIR Error API Policy to capture error responses and format them in an FHIR OperationOutcome-compliant format, since Anypoint Platform’s out-of-the-box (OOTB) policies do not provide error messages in an FHIR-compliant format. This policy can also be used with other OOTB API policies provided in Anypoint Platform, such as OAuth or JWT.
For the list of all FHIR R4 assets, please refer to this link.
## USCDI Core Profile Asset list
_API specifications, data types, and libraries built to meet compliance with FHIR R4 USCDI Core Profile standards._
Module | Library | API specification  
---|---|---  
Data Types | FHIR R4 Common Library Resource Types Library  
Foundation | DocumentReference Library |   
Security |  |   
Conformance | CapabilityStatement Library |   
Administration | Patient Library Practitioner Library PractitionerRole Library Device Library Organization Library Location Library CareTeam Library Encounter Library | Patient API* Practitioner API PractitionerRole API Device API Organization API Location API CareTeam API Encounter API  
Clinical | AllergyIntolerance Library CarePlan Library Goal Library Procedure Library Condition Library | AllergyIntolerance API* CarePlan API Goal API Procedure API Condition API  
Diagnostics | Observation Library DiagnosticReport Library | Observation API* DiagnosticReport API  
Medications | Immunization Library Medication Library MedicationRequest Library | Immunization API Medication API MedicationRequest API  
_APIs marked with`*` have both FHIR R4 and US Core-specific Library and API specification available._
## See Also
  * FHIR R4 Resources List
  * MuleSoft Accelerator for Healthcare
minutes | MuleSoft Documentation
# minutes
## minutes(nMinutes: Number): Period
Creates a Period value from the provided number of minutes.
The function applies the `duration` function to the input value.
_Introduced in DataWeave version 2.4.0._
### Parameters
Name | Description  
---|---  
The number of minutes as a whole or decimal number. A positive or negative number is valid.  
### Example
This example shows how `minutes` behaves with different inputs. It adds and subtracts hours from DateTime values. It also converts the decimal value `4.555` into the Period format (`PT4M33.3S`) and and the whole number `4` into the Period format (`PT4M`). Notice that `minutes(-1) + minutes(2)` returns the number of seconds.
#### Source
```
%dw 2.0
import * from dw::core::Periods
output application/json
---
{
  nextMinute: |2020-10-05T20:22:34.385Z| + minutes(1),
  previousMinute: |2020-10-05T20:22:34.385Z| - minutes(1),
  decimalInputPeriod: minutes(4.555),
  wholeNumberInputPeriod: minutes(4),
  addNegativeValue: minutes(-1) + minutes(2)
}
```

#### Output
```
{
  "nextMinute": "2020-10-05T20:23:34.385Z",
  "previousMinute": "2020-10-05T20:21:34.385Z",
  "decimalInputPeriod": "PT4M33.3S",
  "wholeNumberInputPeriod": "PT4M",
  "addNegativeValue": 60
}
```
Anypoint MQ Connectors | MuleSoft Documentation
# Anypoint MQ Connectors
Anypoint Connector for MQ (Anypoint MQ Connector) is available for Mule 4.
  * Mule 4:
    * Anypoint MQ Connector 4.x
    * Anypoint MQ Connector 3.x
    * Anypoint MQ Connector 2.x


## Anypoint MQ Connector 4.x - Mule 4
  * Anypoint MQ Connector 4.x for Mule 4
    * Upgrading and Migrating Anypoint MQ Connector
    * ACK and NACK Operations
    *     *     *     * Anypoint MQ Connector 4.x Reference
    * Anypoint MQ Connector Release Notes - Mule 4
  * Anypoint MQ Connector 4.x - Mule 4 on Anypoint Exchange


## Anypoint MQ Connector 3.x - Mule 4
Only the US Cloud and EU Cloud instances of Anypoint Platform support this connector version.   
---  
  * Anypoint MQ Connector 3.x for Mule 4
    * ACK and NACK Operations
    *     *     *     * Anypoint MQ Connector 3.x Reference
    * Anypoint MQ Connector Release Notes - Mule 4
  * Anypoint MQ Connector 3.x - Mule 4 on Anypoint Exchange


## Anypoint MQ Connector 2.x - Mule 4
Only the US Cloud and EU Cloud instances of Anypoint Platform support this connector version.   
---  
  * Anypoint MQ Connector 2.x for Mule 4
    * ACK and NACK Operations
    *     *     *     * Anypoint MQ Connector 2.x Reference
    * Anypoint MQ Connector Release Notes - Mule 4
  * Anypoint MQ Connector - Mule 4 on Anypoint Exchange


## Anypoint MQ APIs
  *   *   * 

## See Also
  *
isIntersectionType | MuleSoft Documentation
# isIntersectionType
## isIntersectionType(t: Type): Boolean
Returns `true` if the input type is the Intersection type.
_Introduced in DataWeave version 2.3.0._
### Parameters
Name | Description  
---|---  
The type to check.  
### Example
This example shows how `isIntersectionType` behaves with different inputs.
#### Source
```
%dw 2.0
import * from dw::core::Types
type AType = {name: String} & {age: Number}
output application/json
---
{
  a: isIntersectionType(AType),
  b: isIntersectionType(Boolean),
}
```

#### Output
```
{
 "a": true,
 "b": false
}
```
AS2 Connector 6.9 XML and Maven Support | MuleSoft Documentation
# AS2 Connector 6.9 XML and Maven Support
Although you can manually code a Mule app in XML, it is more efficient to use Anypoint Studio.
If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can get access to the connector in your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file.
When you install the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location. It also adds a dependency to the `pom.xml` file.
## Add a Namespace for the Connector
Paste the following code inside the `<mule>` tag of the header of your configuration XML:
```
http://www.mulesoft.org/schema/mule/as2-mule4
http://www.mulesoft.org/schema/mule/as2/current/mule-as2-mule4.xsd
```

This example shows how the namespace statements are placed in the `<mule>` XML block:
```
<[source,xml,linenums]
<mule xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns:as2="http://www.mulesoft.org/schema/mule/as2-mule4"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
	xmlns:spring="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	  xsi:schemaLocation="http://www.springframework.org/schema/beans
	  http://www.springframework.org/schema/beans/spring-beans-current.xsd
    http://www.mulesoft.org/schema/mule/core
	http://www.mulesoft.org/schema/mule/core/current/mule.xsd
    http://www.mulesoft.org/schema/mule/as2-mule4
	http://www.mulesoft.org/schema/mule/as2/current/mule-as2-mule4.xsd">
   <!-- put your global configuration elements and flows here -->
</mule>
```

## Add a POM File Dependency
The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. If you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector:
```
<dependency>
 <groupId>com.mulesoft.connectors</groupId>
 <artifactId>mule-as2-connector</artifactId>
 <version>x.x.x</version>
 <classifier>mule-plugin</classifier>
</dependency>
```

Replace `x.x.x` with the version that corresponds to the connector you are using.
To obtain the most up-to-date `pom.xml` file information:
  1. Go to Anypoint Exchange.
  2. In Exchange, click **Login** and supply your Anypoint Platform username and password.
  3. In Exchange, search for `as2`.
  4. Select the connector.
  5. Click **Dependency Snippets** near the upper right of the screen.


## Next Step
After completing your namespace and `pom.xml` file, you can try the examples.
## See Also
  * * Introduction to Anypoint Connectors
  * MuleSoft Help Center
Check Web Element | MuleSoft Documentation
# Check Web Element
Use this _Web Automation_ object to verify if a website or web application element was loaded properly and how long this took. The _Check Element_ object can be used on any website element.
## Properties
**Expected Value** Define the value that the attribute must have to be valid
**Use regular expression** Use this function if you want to use a regular expression when checking the value of a selected attribute. For an introduction to regular expressions, see Section Using Regular Expressions.
**Invert Check logic** If enabled, the _Check Element_ object waits until the defined web element cannot be found any more, instead of waiting for it to appear.
## Inbound Variables
**Attribute to check**
**Check Value**
**InvertLogic**
**Regular expression**
**Element XPath**
**WindowTitle**
## Outbound Variables
The action step _Check Element_ possesses no outbound variables.
## Wizard
When you select the element you want to check using the _Browser Wizard_ , the available attributes for the element are listed in a drop-down menu. After you have chosen an attribute, an expected value must be defined for that attribute. The current value will automatically be set as the default.
You can also use regular expressions to match the expected value. For more information about regular expressions see Section Using Regular Expressions.
This check works as follows:
**Normal check logic** | **Invert check logic**  
---|---  
**_Attribute to check_ is empty** | Only checks if there is an element at the given XPath for the given timeout period. Fails if no element can be found at the XPath for the whole timeout. | Checks if there is **no** element at the given XPath or waits until it disappears. Fails if an element is detected during the timeout period.  
**_Attribute to check_ has an entry** | In addition to the check above, if the element is found, checks if the attribute to check is equal to the _Expected Value_. Fails if the attribute does not equal the expected value during the whole timeout period. | In addition to the check above, if the element is found, checks if the attribute to check is **not** equal to the _Expected Value_. Fails if the attribute equals the expected value at any point during the whole timeout. Note that this check will be instantly successful if the element cannot be found at all!
Custom Business Event Component | MuleSoft Documentation
# Custom Business Event Component
Use the Custom Business Event component (`tracking:custom-event` element in the XML view) to add metadata and Key Performance Indicators (KPIs) to your flow. Configure the component as follows:
  1. Click the **Mule Palette** tab in Anypoint Studio.
  2. Drag **Custom Business Event** to any point of your flow.
  3. Open the component properties view and specify values for **Display Name** and **Event Name** :


You can also configure Key Performance Indicators (KPIs) to capture information from the message payload:
  * In the UI:
    1. Click the plus button (]) inside **Key Performance Indicators**.
    2. Configure **Name** and **Expression / Value** :
  * In the XML:
    1. Add a child `tracking:meta-data` element to the `tracking:custom-event`.
    2. Configure the `key` and `value` attributes inside `tracking:meta-data`:
For example:
```
<tracking:custom-event doc:name="Custom Business Event" event-name="New order">
			<tracking:meta-data key="order-id" value="#[payload.order.header.orderID]" />
</tracking:custom-event>
```



For your KPIs, use names that are easy to search for in the Anypoint Runtime Manager interface, and use a representative value, which can be any Mule expression:
Name | Expression / Value  
---|---  
`#[payload['ID']]`  
`employee-email` |  `#[payload['Email']]`  
`employee-git-id` |  `#[payload['GITHUB_ID']]`  
`price-after-discount` |  `#[vars.price]`  
`#[payload.order.header.orderID]`  
## See Also
ServiceNow Connector 6.12 | MuleSoft Documentation
# ServiceNow Connector 6.12
Anypoint Connector for ServiceNow (ServiceNow Connector) provides connections between Mule runtime engine (Mule) and ServiceNow apps. Use the ServiceNow operations with the custom ServiceNow tables, along with any operations available through the installed plugins.
For compatibility information and fixed issues, see the ServiceNow Connector Release Notes.
## Before You Begin
To use this connector, you must be familiar with:
  * Anypoint Connectors
  * Mule runtime engine (Mule)
  * Elements in a Mule flow and global elements
  * How to create a Mule app using Anypoint Studio


Before creating an app, you must have access to the ServiceNow target resource and Anypoint Platform.
## Common Use Cases for the Connector
Common use cases for ServiceNow Connector include:
  * **IT Service Management (ITSM)**
Sync ServiceNow data and extend IT service management (ITSM) capabilities to SaaS and on-premises applications, such as Salesforce, SAP, Workday, and Microsoft Dynamics 365, to help with data migration and replication, application integration, and consolidation. For example, you can bidirectionally sync workers data between Workday and ServiceNow or aggregate employees from Workday and users from ServiceNow into a CSV file.
  * **Integrated Business Processes**
Fully integrate business processes across HR, legal, procurement, operations, marketing, and facilities departments.
  * **Record Creation and Retrieval**
Transform enterprise IT by automating and managing IT service relationships to create a single system of records that you can retrieve.


For examples of these use cases, refer to ServiceNow Connector Examples.
## Audience
  * New users, read:
    * Using Anypoint Studio to Configure the Connector to create your Mule app
  * Advanced users, read:
    * XML and Maven Support
    * Examples, which provides one or more use cases for the connector


## Connection Types
The following authentication types are supported:
  * Basic
  * OAuth 2.0 Authorization Code


### Limitations
  * OAuth 2.0 Authorization Code authentication works only with the following versions of Mule:
    * 4.1.5
    * 4.2.1 and later
  * Metadata does not work with OAuth 2.0 Authorization Code authentication.


## Use Exchange Templates and Examples
Anypoint Exchange provides templates you can use as a starting point for your app, as well as examples that illustrate a complete solution.
  * Workday and ServiceNow Worker Bidirectional Sync
  * Workday Worker to ServiceNow Service Request Migration
  * Workday and ServiceNow Employee Aggregation
  * Workday to ServiceNow Service Worker Migration
  * Workday Worker to ServiceNow Service Request Broadcast


## Next Step
After you complete the prerequisites and experiment with templates and examples, you are ready to create an app with Anypoint Studio.
## See Also
  * Introduction to Anypoint Connectors
  * Use Anypoint Exchange to Discover Connectors, Templates, and Examples
  * ServiceNow Connector Release Notes
  * ServiceNow Connector on Exchange
  * MuleSoft Help Center
Viewing Runtime Logs in Runtime Manager for Flex Managed Gateway | MuleSoft Documentation
# Viewing Runtime Logs in Runtime Manager for Flex Managed Gateway
Use Runtime Manager to view the runtime logs of your Flex Gateway. Runtime Manager enables you to search for keywords within the logs and to filter by **Replica** , **Time Range** , and **Log Level**.
Runtime Manager stores up to 100 MB of logs per Flex Gateway for 30 days. Runtime Manager automatically purges logs that go beyond 100 MB per Flex Gateway. If you need more storage, either use Anypoint Monitoring to access these logs (Titanium subscription required) or use a third-party logging service.
To access Flex Gateway runtime logs in Runtime Manager:
  1. From Anypoint Platform, select **Runtime Manager**.
  2. Select **Flex Gateways** in the navigation menu.
  3. Click the name of the Flex Gateway whose logs you want to view.
  4. Click **Logs**.


## See Also
  * Viewing Managed Flex Gateway Runtime and Access Logs in Anypoint Monitoring
Preparing Projects | MuleSoft Documentation
# Preparing Projects
A project defines the framework conditions for the automation of a process and is managed by a team.
You must prepare some project properties before starting the automation of a process:
Project Property | Usage  
---|---  
Category | A category describes the common environment of a set of processes in a few keywords, for example `Customer Support Mythical University` or `Finance`.  
Process Applications | Process applications are third-party application installations that are required for the execution of a process, for example `FinWiz - Mythical University - Computer 1 - Tokyo`.  
## See Also
  * Create a Process Evaluation
  * Starting Automation of Approved Processes
  * Create an Automation Project
  * Assign Process Applications to Bots
  * Change Process Assignments of a User
Updating Expiring Certificates | MuleSoft Documentation
# Updating Expiring Certificates
Connected apps enable a two-way connection between Anypoint Platform and Salesforce organizations. The connected apps depend on digital certificates for proper functionality. These certificates are time-bound and subject to expiration.
## How Certificates Are Generated
During the connection process, API Experience Hub generates self-signed certificates that expire in one year.
One of these self-signed certificates links the Anypoint Platform organization and the Salesforce organization. The certificate and the private key are stored in Secrets Manager in Anypoint Security. When this certificate expires, no notification is sent to the administrator of the Salesforce instance. However, the initial connection between Anypoint Platform and Salesforce remains operational. The next time the administrator logs in to API Experience Hub, an error message displays a connection error and enables the administrator to reconnect. When the administrator logs back in to API Experience Hub, a new certificate generates automatically with a one-year expiration time.
API Experience Hub uses the Salesforce Metadata API to generate an Anypoint certificate during the connection process. The connected app uses this certificate to access metadata content from Anypoint. This certificate is also valid for one year. The administrator of the Salesforce instance receives an email 30 days before the certificate expires. Because a named credential uses the Anypoint certificate, you can’t delete the certificate.
## Before You Begin
Before getting started, ensure you have the API Experience Hub Administrator permissions.
## Update the Salesforce Identity Data Certificate
To generate a new Anypoint certificate:
  1. Go to Salesforce and click **Setup** > **Security** > **Certificate and Key Management**.
  2. Locate **Anypoint** in the list and click **Edit**.
  3. Enter a new name, for example, **Anypoint to expire**.
  4. Click **Save**.
  5. Log in to API Experience Hub to trigger a diagnostic check to create a new certificate.
  6. Delete the renamed certificate, for example, **Anypoint to expire** :
    1. Go to Salesforce and click **Setup** > **Security** > **Certificate and Key Management**.
    2. Locate the renamed certificate in the list and click **Delete**.


## See Also
  * Connecting to Salesforce
  *
View the Source Project for Assets Published to Exchange | MuleSoft Documentation
# View the Source Project for Assets Published to Exchange
After publishing an asset to Anypoint Exchange, you can view the source files in the API Designer. Exchange provides a direct link to the API Designer project containing the source files.
When you publish a project to Exchange via a ZIP file or other resource outside of API Designer, you can only view the contents of the project. To edit the files, create a new project based on the contents of the file. If you delete a project from API Designer after publishing it to Exchange, you can only view it in read-only mode.
## Procedure
  1. Open your API specification or fragment in Anypoint Exchange.
  2. Next to the version of the specifcation or fragment you want to view, click the **︙** drop-down menu.
You can only view older published versions of a specification or fragment published to Exchange. You cannot edit them.  
---  
Alternatively, you can the most recent version of a specifcation or fragment by clicking **︙** in the asset toolbar and selecting **View code**.
  3. Select **View code in API Designer**.
API Designer opens the project containing the specification or fragment in read-only view.
  4. To edit the files in the project, click **Edit spec**.
This option is only available if you have edit permissions on the project and the project exists in API Designer.
If the project was edited after being published to Exchange, API Designer gives you the option to continue edit the newer version or view the version published to Exchange.


## See Also
  * Publish an API Specification
Viewing Standard Output Logs | MuleSoft Documentation
# Viewing Standard Output Logs
Flex Gateway maintains standard output logs for individual replicas. Use the standard output logs for quick logging checks when additional logging output is not needed, such as ensuring when an external service is running or API requests are reaching Flex Gateway.
You do not need to configure log output to view standard output logs. However, if you want access logs to appear in standard output logs, you must apply a Message Logging policy to the APIs you want to monitor. To apply a Message Logging policy, see Configuring Access logs.
You can also configure additional Fluent Bit to enable custom logging outputs and customize the log level info. To configure additional logging, see Configuring External Logs for Flex Gateway in Local Mode.
To view additional log outputs, find the appropriate method to view them. The following commands display only the standard output logs.
## View Logs
To view the standard output logs of your replica, run one of the following commands:
For Linux:
```
journalctl -u flex-gateway*
```

For Docker:
```
docker logs -f <container-id>
```

For Kubernetes:
```
kubectl logs -f <pod-name>
```

## See Also
  * Fluent Bit documentation
IDP Permissions | MuleSoft Documentation
# IDP Permissions
The following list shows all Anypoint permissions in Access Management under the **Document Actions** category: 

Manage Actions
    
Gives a user complete access to IDP and assigns reviewer permission by default for every document action. 

Build Actions
    
Enables a user to create, edit, publish, and execute document actions and assign reviewers to the actions. 

Execute Published Actions
    
Enables a user to execute a published document action and retrieve the results of the execution.
## See Also
Duplicated External Objects | MuleSoft Documentation
# Duplicated External Objects
Validating and synchronizing the external data source generates duplicate external objects that will not be used because API Community Manager uses the objects inside the package. Delete these new objects.
-- | MuleSoft Documentation
# --
## --<S>(source: Array<S>, toRemove: Array<Any>): Array<S>
Removes specified values from an input value.
This version of `--` removes all instances of the specified items from an array. Other versions act on objects, strings, and the various date and time formats that are supported by DataWeave.
Name | Description  
---|---  
The array containing items to remove.  
toRemove | Items to remove from the source array.  
### Example
This example removes specified items from an array. Specifically, it removes all instances of the items listed in the array on the right side of `--` from the array on the left side of the function, leaving `[0]` as the result.
#### Source
```
%dw 2.0
output application/json
---
{ "a" : [0, 1, 1, 2] -- [1,2] }
```

#### Output
## --<K, V>(source: { (K)?: V }, toRemove: Object): { (K)?: V }
Removes specified key-value pairs from an object.
### Parameters
Name | Description  
---|---  
The source object (an `Object` type).  
Object that contains the key-value pairs to remove from the source object.  
### Example
This example removes a key-value pair from the source object.
#### Source
```
%dw 2.0
output application/json
---
{ "hello" : "world", "name" : "DW" } -- { "hello" : "world"}
```

#### Output
```
{ "name": "DW" }
```

## --(source: Object, keys: Array<String>)
Removes all key-value pairs from the source object that match the specified search key.
### Parameters
Name | Description  
---|---  
The source object (an `Object` type).  
An array of keys to specify the key-value pairs to remove from the source object.  
### Example
This example removes two key-value pairs from the source object.
#### Source
```
%dw 2.0
output application/json
---
{ "yes" : "no", "good" : "bad", "old" : "new" } -- ["yes", "old"]
```

#### Output
```
{ "good": "bad" }
```

## --(source: Object, keys: Array<Key>)
Removes specified key-value pairs from an object.
### Parameters
Name | Description  
---|---  
The source object (an `Object` type).  
A keys for the key-value pairs to remove from the source object.  
### Example
This example specifies the key-value pair to remove from the source object.
#### Source
```
%dw 2.0
output application/json
---
{ "hello" : "world", "name" : "DW" } -- ["hello" as Key]
```

#### Output
```
{ "name": "DW" }
```

## --(source: Null, keys: Any)
Helper function that enables `--` to work with a `null` value.
_Introduced in DataWeave version 2.4.0._
ceil | MuleSoft Documentation
# ceil
## ceil(number: Number): Number
Rounds a number up to the nearest whole number.
### Parameters
Name | Description  
---|---  
The number to round.  
### Example
This example rounds numbers up to the nearest whole numbers. Notice that `2.1` rounds up to `3`.
#### Source
```
%dw 2.0
output application/json
---
[ ceil(1.5), ceil(2.1), ceil(3) ]
```

#### Output
Configuring OAuth 2.0 for Connectors on CloudHub | MuleSoft Documentation
# Configuring OAuth 2.0 for Connectors on CloudHub
You can deploy your OAuth 2.0 enabled connectors to a cloud service.
Configuring OAuth 2.0 for a connector on CloudHub is the same as configuring OAuth 2.0 for a connector locally, except with CloudHub, the Mule implementation is behind an extra server. Consider the following when configuring OAuth 2.0 for a connector on CloudHub:
  * Connector Listener
    * CloudHub manages some properties for you automatically, such as `${http.port}` and `${https.port}`. Use these properties when configuring your **HTTP Listener**.
    * When deployed on the cloud, the `localhost`, `0.0.0.0`, and `127.0.0.1` hosts are no longer publicly reachable. When configuring your OAuth provider, you must replace all links containing these hosts with the actual CloudHub-provided public addresses. For CloudHub, this address is in the format `{ch-app-name}.{region}.cloudhub.io`. For example, an HTTP app named `ch-example-app` deployed in the Europe (London) region has public address of `http://ch-example-app.uk-e1.cloudhub.io`.
  * OAuth Provider Setup
    * If you set **Callback Path** to `/callback`, your public callback URL is `{ch-app-name}.{region}.cloudhub.io/callback`. This is the callback URL to use as your redirect URI when you configure your OAuth provider.
This must also be configured in your connector as the **External Callback Url**. You can use the `${fullDomain}` property that CloudHub configures for you to automatically obtain the proper host name.
If you are deploying to multiple regions or have some other gateway configured, use the hostname of the load balancer or the gateway in your OAuth provider callback URL and in **External Callback Url**. If your Salesforce instance doesn’t support HTTP or HTTPS callback URLs with private cloud URLs, you can update the callback URL to use a public endpoint.  
---  
In OAuth 2.0 configuration, the user (not the OAuth provider) reaches the callback endpoint from their browser. Ensure that your region configuration is correct. If you create your CloudHub app in the US region and your users connect to the app from Europe, the request is blocked by the gateway.


## Performing the OAuth Dance
After you complete the OAuth 2.0 configuration, you can deploy your app to CloudHub and initialize the OAuth dance by navigating to your public hostname on your authorization endpoint. For example, with the previous configuration, you can navigate to `{ch-app-name}.{region}.cloudhub.io/authorize`. This starts the OAuth dance and prompts you to log in with your OAuth provider.
## See Also
  * Configuring OAuth 2.0 for Connectors
  * Deploying to CloudHub
  * MuleSoft Help Center
Admin Settings Overview | MuleSoft Documentation
# Admin Settings Overview
This topic is affected by the Anypoint Platform integration.
If you use an RPA account to login to RPA Manager, refer to the **Organization Management** documentation.
The **Admin Settings View** of the **Settings** module enables you to do the following:
  * Configure the currency and decimal sign to show in RPA Manager modules.
  * Reassign the RPA assets of deleted or disabled users.
Workflow: Create a Mapping through the Design Center UI | MuleSoft Documentation
# Workflow: Create a Mapping through the Design Center UI
  1. Define Input and Output Structure of a Transformation
Provide expected input and required output structures.
  2. Graphically Construct a Mapping
Drag elements of the input and drop them onto elements of the output. You can also include fixed values and functions to build out the output.
  3. Preview the Output of a Transformation
Verify that the transformation produces the expected output.


## See Also
DataWeave Language
Hyperforce Release Notes | MuleSoft Documentation
# Hyperforce Release Notes
These are the release notes for Salesforce Hyperforce (Hyperforce).
## December 9, 2024
### What’s New
  * MuleSoft is now available on Hyperforce. You can deploy to Canada and Japan control planes. For more information, refer to Salesforce Hyperforce (Hyperforce).


## See Also
Creating Message Types | MuleSoft Documentation
# Creating Message Types
You can create new message types from the **< host>** page or by using the Message Flow wizard.
## Create a Message Type from the Host Page
To create a message type from the **< host>** page:
  1. In the sidebar, select **< host-name>**.
  2. From the **Message types** section, click **New**.
  3. In the **Usage** drop-down list, select the message usage.
  4. Add values to the remaining settings.
For setting descriptions, see the topic that corresponds to the message type usage:
     * Receive from Partners Message Type Settings
     * Send to Partners Message Type Settings
     * Target at Host Message Type Settings
     * Source at Host Message Type Settings


After you create Receive from Partners and Source at Host message types, you can add up to five custom message attributes to them. For information, see Using Custom Message Attributes with Message Types.
## Create a Message Type by Using the Message Flow Wizard
To create a message type by using the Message Flow Wizard, see Create Inbound Message Flows and Create Outbound Message Flows.
## See Also
  * Modifying Message Type Settings
  * Deleting Message Types
map | MuleSoft Documentation
# map
## map<T, R>(@StreamCapable items: Array<T>, mapper: (item: T, index: Number) -> R): Array<R>
Iterates over items in an array and outputs the results into a new array.
### Parameters
Name | Description  
---|---  
The array to map.  
Expression or selector used to act on each `item` and optionally, each `index` of that item.  
### Example
This example iterates over an input array (`["jose", "pedro", "mateo"]`) to produce an array of DataWeave objects. The anonymous function `(value, index) → {index: value}` maps each item in the input to an object. As `{index: value}` shows, each index from the input array becomes a key for an output object, and each value of the input array becomes the value of that object.
#### Source
```
%dw 2.0
output application/json
---
["jose", "pedro", "mateo"] map (value, index) -> { (index) : value}
```

#### Output
```
[ { "0": "jose" }, { "1": "pedro" }, { "2": "mateo" } ]
```

### Example
This example iterates over the input array (`['a', 'b', 'c']`) using an anonymous function that acts on the items and indices of the input. For each item in the input array, it concatenates the `index + 1` (`index` plus 1) with an underscore (`_`), and the corresponding `value` to return the array, `[ "1_a", "2_b", "3_c" ]`.
#### Source
```
%dw 2.0
output application/json
---
['a', 'b', 'c'] map ((value, index) -> (index + 1) ++ '_' ++ value)
```

#### Output
```
[ "1_a", "2_b", "3_c" ]
```

### Example
If the parameters of the `mapper` function are not named, the index can be referenced with `$$`, and the value with `$`. This example iterates over each item in the input array `['joe', 'pete', 'matt']` and returns an array of objects where the index is selected as the key. The value of each item in the array is selected as the value of the returned object. Note that the quotes around `$$` are necessary to convert the numeric keys to strings.
#### Source
```
%dw 2.0
output application/json
---
['joe', 'pete', 'matt'] map ( "$$" : $)
```

#### Output
```
[
 { "0": "joe" },
 { "1": "pete" },
 { "2": "matt" }
]
```

### Example
This example iterates over a list of objects and transform the values into CSV. Each of these objects represent a CSV row. The `map` operation generates an object with `age` and `address` for each entry in the list. `$` represents the implicit variable under iteration.
#### Source
```
%dw 2.0
output application/csv
---
[{
 "age": 14 ,
 "name": "Claire"
}, {
 "age": 56,
 "name": "Max"
}, {
 "age": 89,
 "name": "John"
}] map {
  age: $.age,
  name: $.name
}
```

#### Output
```
age,name
14,Claire
56,Max
89,John
```

## map(@StreamCapable value: Null, mapper: (item: Nothing, index: Nothing) -> Any): Null
Helper function that enables `map` to work with a `null` value.
Versioning Monitors | MuleSoft Documentation
# Versioning Monitors
Although you cannot directly version monitors, you can use schedule rules to specify versions. If you were using an earlier version of API Functional Monitoring where tests were versioned, your test version information is preserved, although it is displayed differently. Multiple test versions that were migrated are now schedules of a single monitor.
To use the version information you had in the earlier version:
  1. Navigate to the old layout.
  2. Download a version of a test that should be preserved.
  3. Unzip the test package.
  4. Upload the unzipped directory.
  5. Choose a new test name.
  6. Specify a schedule rule that corresponds with the test version in the first step.
  7. Delete the version downloaded in the first step.
Testing the API Spec with the Mocking Service | MuleSoft Documentation
# Testing the API Spec with the Mocking Service
Cloud IDE 
Desktop IDE 
**Open Beta Release** : The **cloud IDE is in open beta**. Any use of Anypoint Code Builder in its beta state is subject to the applicable beta services terms and conditions, available from the IDE.
Use the Mocking Service in the API Console to check the GET request and response that you configured for American Flights API in Adding Examples to the API Spec.
## Before You Begin
If you haven’t started the American Flight API specification, complete these procedures before attempting to test:
  1. Designing the American Flights API Spec
  2. Adding Examples to the API Spec


## Test Your API Specification
  1. In Anypoint Code Builder, open the RAML file for your American Flights API specification (`american-flights-api.raml`).
  2. Click the **API Console** icon in the editor toolbar:
  3. In API Console, select the `get` method for the `flights/` resource:
  4. Select the **destination** text box inside **Query Parameters** and verify that the three values you defined in your API specification appear:
  5. Click **Send**.
  6. Verify that the API Console returns the response you defined with the imported fragment (`AmericanFlightsExample.raml`):
The logic for selecting specific destinations is not yet implemented.
Optionally, review your configured response examples when querying your mocked API endpoints.
  7. Proceed to Publishing the API Spec to Anypoint Exchange.
Monitoring in Managed Flex Gateway | MuleSoft Documentation
# Monitoring in Managed Flex Gateway
Managed Flex Gateway allows you to access logs and view key metrics.
Refer to these topics for details about monitoring Managed Flex Gateway:
  * Viewing Managed Flex Gateway Metrics
  * Configuring Message Logging for Managed Flex Gateway
  * Viewing Key Metrics in API Manager for Managed Flex Gateway
  * Viewing API Status in Runtime Manager for Managed Flex Gateway
  * Viewing Runtime Logs in Runtime Manager for Flex Managed Gateway
  * Viewing Managed Flex Gateway Runtime and Access Logs in Anypoint Monitoring
Java Module 2.0 | MuleSoft Documentation
# Java Module 2.0
Release Notes: Java Module Release Notes Exchange: Java Module
Mule 4 is built to:
  * Minimize the need for custom code.
  * Avoid the need for you to know or understand Java.


However, some advanced uses cases require integration with custom Java code, such as:
  * Reuse of a library, such as a tax calculation library.
  * Reuse of a canonical object model that is standard in the organization.
  * Execution of custom logic using Java.


In Mule 3, MEL served as a bridge for creating instances of Java classes and executing Java methods. In Mule 4, interoperation with Java changed, due to the replacement of MEL by DataWeave, which is a functional language. Functional languages do not have side effects on their input arguments, so it does not make sense for DataWeave to execute random instance methods on random object instances. Therefore, pure DataWeave supports calling only static Java methods, without use of the Java module.
## Java Module Versus the Scripting Module
You can use the Java module, or execute Groovy code through the Scripting module. However, the Scripting module does not offer DataSense support, user interface support, visual aids for methods available for each class, autocompletion, and so on. See Java Integration.
## See Also
  * Create an Instance of a Class
  *   * Test for an Instance of a Class
  * Work With Throwables
  * Java Module Reference
  * Java Module Argument Transformation
  * MuleSoft Help Center