# mulesoft API Community Manager - Full Documentation --- product: API Community Manager --- # Accessibility > For the full documentation index, see: https://docs.mulesoft.com/llms.txt All Anypoint API Community Manager components, including both components provided by MuleSoft and components in Salesforce Experience Cloud, comply with the Web Content Accessibility Guidelines (WCAG) 2.1 AA-level accessibility standard and enable the creation of sites compliant with this standard and level. Because MuleSoft customers design and brand their API communities, accessibility assessment for sites built with API Community Manager depends on the customer’s choice of design, structure, visual, user interface, and behavior elements. Customers are responsible for accessibility assessment of these aspects in their specific community. The API Community Manager community template for the fictional company Northern Trail Outfitters (NTO) is provided only as an example. It is not intended for customers to use as-is for their live communities. This template has not been assessed for accessibility. ## See Also - Accessibility in Salesforce Experience Cloud: [Salesforce Product Accessibility Status](https://www.salesforce.com/company/legal/508_accessibility/) - [Web Content Accessibility Guidelines (WCAG) 2.1](https://www.w3.org/TR/WCAG21/) --- product: API Community Manager --- # Administer Your Site > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Administering your Anypoint API Community Manager site includes performing basic maintenance on your API Community Manager Salesforce organization, checking for important notifications about new API Community Manager upgrades and downtime, performing diagnostics, and using sandboxes. Administering your site also includes getting support from MuleSoft, if necessary. These pages explain how to perform each action: - Salesforce documentation: [Maintain an Organization](https://help.salesforce.com/s/articleView?language=en_US&id=setup_overview.htm&type=5) - [Check for Important Notifications](https://docs.mulesoft.com/api-community-manager/notifications) - [Upgrades](https://docs.mulesoft.com/api-community-manager/update-acm) - [Administer Salesforce Releases and Migrations](https://docs.mulesoft.com/api-community-manager/salesforce-releases-migrations) - [Check API Community Manager Diagnostics](https://docs.mulesoft.com/api-community-manager/diagnostics) - [Use API Community Manager Sandboxes](https://docs.mulesoft.com/api-community-manager/sandboxes) - [Contact MuleSoft Support](https://docs.mulesoft.com/api-community-manager/mulesoft-support) --- product: API Community Manager --- # Advanced Styling with CSS > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint API Community Manager offers advanced styling functionality with editable community site Cascading Style Sheets (CSS). The following sections summarize the available options. For detailed information, refer to [Override Template Elements with Custom CSS](https://developer.salesforce.com/docs/atlas.en-us.communities_dev.meta/communities_dev/communities_dev_customize_css.htm) in the Experience Cloud Developer Guide. ## Edit the CSS 1. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Builder**. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 2. Select the paintbrush icon in the sidebar navigation to open the **Theme** menu. 3. Select the drop-down arrow in the corner of the menu and select **Edit CSS**. 4. Edit the CSS file in the **Edit CSS** dialog box. 5. When you are finished with your changes, select **Save**. ## Example You can use CSS to change the colors of the API Community Manager Theme: ```css search-bar-container { background: #342b4a !important; } ``` ## CSS Classes ### ACM Search Box
Table 1. ACM Search Box CSS Classes and Descriptions
ClassDescription

search-box-container

Container

search-box-result

Result

search-box-results

Results

search-result-group

Result group

### ACM Search Result
Table 2. ACM Search Result CSS Classes and Descriptions
ClassDescription

search-result

Search result

search-result-name

Name

search-result-description

Description

search-result-api-detail

API Detail

search-result-api-learn-more

API Learn More

search-results-all-page

All page

search-result-page

Page

search-results-container

Container

search-result-tab-menu-container

Tab menu container

search-results-info

Info

search-result-empty-main-text-message

Empty main text message

search-result-empty-header-message

Empty header message

### API Carousel
Table 3. API Carousel CSS Classes and Descriptions
ClassDescription

api-version-carousel-container

Carousel container

api-version-carousel-empty-message

Empty cards message

api-version-carousel-slider

Slick-slider component container

api-version-carousel-dots

Carousel bottom dots navigation

api-version-carousel-arrow

Left and right arrows navigation

### API Catalog
Table 4. API Catalog CSS Classes and Descriptions
ClassDescription

api-catalog-container

Catalog container

api-catalog-header

Catalog header

api-catalog-categories-container

Categories container

api-catalog-mini-search

Small search used when the search bar is beside the categories

api-catalog-mini-search-input

Small search input

api-catalog-multiselect-container

Multiple selection container

api-catalog-multiselect-label

Multiple selection label

api-catalog-multiselect

Multiple selection component for categories

api-catalog-chips-container

Container for chips, selected categories label, and clear all button

api-catalog-chips-label

Chips label

api-catalog-clear-all-button

Clear All button

chips-container

Chips container

chip-container

Container for one chip with label and close icon

chip-label

Chip label

chip-icon

Chip close icon

api-catalog-separator

Separator

api-catalog-search-container

Search container

api-catalog-search

Standard size search used when the search bar is below the categories

api-catalog-apis-container

APIs container

api-catalog-page-indicator

Page indicator

api-catalog-empty-message

Empty cards message

api-catalog-card-container

Card container

api-catalog-card-badges-container

Card badges container

api-catalog-card-badge

Card badge

api-catalog-card-icon

Card icon

api-catalog-card-name

Card name

api-catalog-card-description

Card description

api-catalog-card-buttons-container

Card buttons container

api-catalog-card-details-button

Card Details button

api-catalog-card-learn-more-button

Card Learn More button

api-catalog-paginator-container

Paginator container

### API Details Button
Table 5. API Details Button CSS Classes and Descriptions
ClassDescription

api-details-button

API Details button

### API Version Card
Table 6. API Version Card CSS Classes and Descriptions
ClassDescription

api-version-card-container

API card container

api-version-card-border

API card border and shadow

api-version-card-header

Container for icon and title

api-version-card-icon

Card icon

api-version-card-title

Card title

api-version-card-description

Card description

api-version-card-buttons-container

Container for "API Details" and "Learn more" buttons

api-version-card-button-detail

"API Details" button

api-version-card-button-more

"Learn more" button

### Search Bar
Table 7. Search Bar CSS Classes and Descriptions
ClassDescription

search-bar-container

Search bar container

#acm-search

Search input

### Application Listing
Table 8. Application Listing CSS Classes and Descriptions
ClassDescription

application-listing-header

Container for button and search app input

application-listing-no-app-msg

Message when there are no application cards

application-listing-search-container

Search input container

application-listing-cards-container

Application cards container

### Application Card
Table 9. Application Card CSS Classes and Descriptions
ClassDescription

application-card-container

Application card container (borders and shadow)

application-card-header-container

Container for title and card buttons

application-card-header-title

Application card title

application-card-action-buttons-container

Buttons container

application-card-edit-button

Edit button

application-card-delete-button

Delete button

application-card-info-container

Information card container

application-card-primary-divisor

First line divider

application-card-analytics-container

Analytics info container

application-card-requests-info

Request label and value

application-card-throughput-info

Throughput label and value

application-card-errors-info

Errors label and value

application-card-latency-info

Latency label and value

application-card-secondary-divisor

Second line divider

application-card-requests-container

"Request Information" container

application-card-api-access

Access label

application-card-requests-approved

Approved requests label and value

application-card-requests-rejected

Rejected requests label and value

application-card-requests-pending

Pending requests label and value

### Application Register
Table 10. Application Register CSS Classes and Descriptions
ClassDescription

application-register-container

New application register wrapper

application-register-title

Create an application title

application-register-subtitle

Application information sub title

application-register-name

Application name label

application-register-name-input

Application name input

application-register-name-registered

Message application name already registered

application-register-description

Description label

application-register-description-input

Description input

application-register-callback

Callback label

application-register-callback-input

Callback input

application-register-button

Create button

### Application Detail
Table 11. Application Detail CSS Classes and Descriptions
ClassDescription

application-detail-name

Application name

application-detail-line

Line divider

application-detail-client-credentials

Client credentials label

application-detail-client-id

Client ID container

application-detail-client-id-label

Client ID label

application-detail-client-id-value

Client ID value

application-detail-client-secret

Client secret container

application-detail-client-secret-label

Client secret label

application-detail-client-secret-input

Client secret input

application-detail-client-access-status

API access status label

application-detail-client-approved

Approved label and value

application-detail-client-rejected

Rejected label and value

application-detail-client-pending

Pending approval label and value

### Instance Selector
Table 12. Instance Selector CSS Classes and Descriptions
ClassDescription

instance-selector-container

Instance selector container

instance-selector-add-api

Add APIs label

instance-selector-line

Line separator

instance-selector-box

Instance selector borders

instance-selector-list-container

Instance selector list

### Contracts Selector
Table 13. Contracts Selector CSS Classes and Descriptions
ClassDescription

contracts-selector-container

Contracts selector container

contracts-selector-label

Application name label

contracts-selector-line

Line separator

contracts-selector-box

Contracts selector borders

contracts-selector-list

Contracts selector list

contracts-selector-api-name

API name label

contracts-manager-button

Arrow button

### Header
Table 14. Header CSS Classes and Descriptions
ClassDescription

acm-header

Main header of the community

defaultLogo

Logo of the community

### Learn More Button
Table 15. Learn More Button CSS Classes and Descriptions
ClassDescription

learn-more-button

Learn More button

--- product: API Community Manager --- # API Community Manager > For the full documentation index, see: https://docs.mulesoft.com/llms.txt With Anypoint API Community Manager, you can build and operate communities around your APIs for developers and partners, both inside and outside of your organization, who write applications that use your APIs. API Community Manager is powered by **[Salesforce Experience Cloud](https://www.salesforce.com/products/?bc=OTH)** and provides customization, branding, marketing, and engagement capabilities to serve the different needs of your developer audiences. Use API Community Manager for rich presentation of APIs cataloged in [Anypoint Exchange](https://docs.mulesoft.com/exchange/), and to manage client applications, API access credentials, and consumption metrics. See these useful resources to get up to speed with the capabilities of Salesforce Experience Cloud: - [Experience Cloud Product Documentation](https://help.salesforce.com/s/articleView?language=en_US&id=networks_resources.htm&type=5) - [Experience Cloud Trailhead](https://trailhead.salesforce.com/content/learn/trails/communities) ## What Is an API Community? To drive developer adoption of your APIs, you must help them discover and learn how to use your APIs effectively, and provide a personalized, branded experience to motivate them to work with you. You must also engage with these developers during every step of their journey to ensure their success. Anypoint API Community Manager enables you to create this personalized, connected experience for your developers so they can interact with your APIs: APIs designed, cataloged, and managed in Anypoint Platform. As a community administrator, you use API Community Manager to create a visually compelling digital experience that is consistent with your organization’s brand identity. Your community showcases APIs that you select directly from [Anypoint Exchange](https://docs.mulesoft.com/exchange/), plus other relevant content and self-service resources to inspire and help the developers you want to reach. ## A Connected and Personalized Digital Experience for Your Consumer Developers A consumer developer accessing your API community finds news, events, tutorials, developer blog posts, and both business and technical information about your APIs, in a branded, customized experience. Information in your community includes content created by your marketing and business development teams to help your audiences understand the value proposition of your APIs, in addition to the technical API documentation and self-service API console that helps developers explore API features and learn how to use them. The API technical information is made available directly from the API designs in Anypoint Platform. Consumer developers can request access to your API for new or existing client applications, following the regular governance model of the API lifecycle provided by Anypoint Platform and [API Manager](https://docs.mulesoft.com/api-manager/latest/latest-overview-concept). Developers can manage their client applications, their access credentials (API keys and secrets), and get insights on their applications' performance as their applications use your APIs. Developers use discussion forums to engage with your organization and other members of the community, by posting questions and answers, sharing ideas, and discussing issues they find. Other API Community Manager features enable your organization to engage with partners and ensure that they are supported throughout their journey. ## Building Your API Community Personalize your community look and feel, branding, and site structure by using [Experience Builder](https://help.salesforce.com/s/articleView?language=en_US&id=community_designer_overview.htm&type=5), a drag-and-drop editor that enables you to create and customize the user experience at every level of detail. Experience Builder makes it easy to create a tailored experience using pre-existing Lightning components and simple clicks, or using the full flexibility of HTML and CSS for precise pixel-perfect experiences. ## Understand How Your Developers Engage in Your Community [Pre-built dashboards](https://help.salesforce.com/s/articleView?language=en_US&id=networks_appexchange_overview_dashboard_and_reports.htm&type=5) show you how the content and assets in your community are being used, so you understand the activity in your ecosystem. These out-of-the-box dashboards leverage more than ten years of Salesforce experience to reflect best practices in community engagement. ## API Community Manager On Control Planes All features of API Community Manager are supported on Japan and Canada control planes. ## See Also - [API Community Manager Release Notes](https://docs.mulesoft.com/release-notes/api-community-manager/api-community-manager-release-notes) - [MuleSoft Trailblazer Community](https://trailhead.salesforce.com/trailblazer-community/neighborhoods/mulesoft) - [Salesforce Help](https://help.salesforce.com) --- product: API Community Manager --- # API Community Manager Release Notes > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Use Anypoint API Community Manager to build and operate communities around your APIs for developers and partners, both inside and outside of your organization, who write applications that use your APIs. The following release notes are provided for API Community Manager: - [Anypoint API Community Manager Release Notes](https://docs.mulesoft.com/release-notes/api-community-manager/api-community-manager-release-notes) ## See Also - [API Community Manager](https://docs.mulesoft.com/api-community-manager/) - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # API Console > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The interactive API Console component shows information about your REST APIs and their methods, and enables users to test the methods by sending requests. Endpoints are displayed in alphabetical order. Console components include API Console, API Console Documentation, API Console Instances, API Console Navigation, and API Console Request Panel. In Site Builder, you can add multiple console components to the same page. Changes to a console component are visible in all other console components on that page that display the same API. For example, selecting the **Summary** tab in an API Console results in **Summary** tab selection in all API Consoles on the same page that display the same API. The component shows the public API instances and documentation from [Anypoint Exchange](https://docs.mulesoft.com/exchange/). If an API’s specification includes OAuth 2.0 security, users either select a client application in the **Credentials source** list to populate the client ID and client secret automatically, or they select **Custom credentials** in the list to enter the client ID and client secret manually. ![Credentials source](/mulesoft/current/en-us/api-community-manager/_images/credentials-source.png) By default, the API console sends requests of 2 megabytes or less from the browser through Salesforce Experience Cloud to an API. To send requests directly from the browser to an API instance, which allows requests with no size limit, open **Setup** > **Custom Metadata Type** > **ACM API Console Configuration Metadata** > **Manage ACM API Console Configuration Metadata** > **ACM API Console Configuration** > **Edit** and select **Browser Requests Enabled**. This setting applies to all API instances in the community and does not affect the mocking service. You can specify values for the following parameters of the API console: **API** Specifies the API to display. **Show Documentation Pages** Shows the API’s documentation pages. **Expand endpoints on start** Expands the documentation of the API endpoints when the page loads. **Enable resource filtering** Shows a search bar on the navigation panel so users can filter the API resources and show only the resources that match their search terms. **Show endpoints toggle button** Shows a button on the navigation panel to expand or collapse all endpoints. **Remove overview items from navigation** Removes the overview links and shows the overview when the user clicks the endpoint name. **Enable expandable request panel** Enables expanding and collapsing the request panel by clicking the arrows at the edge of the panel. **Link Hover Color** Specifies the hover link color. **Button Text Color (Optional)** Specifies the color of button text. **Button Hover Text Color (Optional)** Specifies the color of button hover text. Default is the button text color. **Headline Font Family (Optional)** Specifies the API console headline font family. **Error Color (Optional)** Specifies the color of error messages. **Method Label Get Background Color** Specifies the GET method label background color. **Method Label Get Color** Specifies the GET method label color. **Method Label Post Background Color** Specifies the POST method label background color. **Method Label Post Color** Specifies the POST method label color. **Method Label Put Background Color** Specifies the PUT method label background color. **Method Label Put Color** Specifies the PUT method label color. **Method Label Delete Background Color** Specifies the DELETE method label background color. **Method Label Delete Color** Specifies the DELETE method label color. **Method Label Patch Background Color** Specifies the PATCH method label background color. **Method Label Patch Color** Specifies the PATCH method label color. **Method Label Options Background Color** Specifies the OPTIONS method label background color. **Method Label Options Color** Specifies the OPTIONS method label color. **Method Label Head Background Color** Specifies the HEAD method label background color. **Method Label Head Color** Specifies the HEAD method label color. If an **API Console** navigation item such as an API endpoint or method has a long name, the name wraps around to a second line. By default, the line breaks at the end of a word, using the `word-break` CSS property set to the value `break-word`. If you wish to select different line break behavior: 1. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Builder**. Click **Settings** > **Advanced**. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 2. In the section **Head Markup**, click **Edit Head Markup**. 3. Insert this code: ```html ``` 4. Optionally, replace `api-navigation` with any selector that contains the component `api-navigation`. 5. Optionally, replace `break-word` with any valid value for the `word-break` CSS property. To link directly to an endpoint or type in this component, set the URL query paramters `method`, `path`, or `type`. `method` must be in lower case. `type` is case sensitive. If `method` and `path` are defined and exist in the API definition, then navigation will open there regardless of the `type` parameter. If `method` or `path` is not defined and `type` is defined and exists in the API definition, then navigation will open at the specified `type`. Examples: - `communityapi/a003D000001pQpjQAE/basicapi?method=get&path=/users/{id}` - `communityapi/a003D000001pQpjQAE/basicapi?type=Users` ## API Console Documentation The API Console Documentation component shows the documentation about an API from [Anypoint Exchange](https://docs.mulesoft.com/exchange/). You can specify values for the following parameters of the API Console Documentation: **API** Specifies the API to display. **Show Documentation Pages** Shows the API documentation pages. **Method Label Get Background Color** Specifies the GET method label background color. **Method Label Get Color** Specifies the GET method label color. **Method Label Post Background Color** Specifies the POST method label background color. **Method Label Post Color** Specifies the POST method label color. **Method Label Put Background Color** Specifies the PUT method label background color. **Method Label Put Color** Specifies the PUT method label color. **Method Label Delete Background Color** Specifies the DELETE method label background color. **Method Label Delete Color** Specifies the DELETE method label color. **Method Label Patch Background Color** Specifies the PATCH method label background color. **Method Label Patch Color** Specifies the PATCH method label color. **Method Label Options Background Color** Specifies the OPTIONS method label background color. **Method Label Options Color** Specifies the OPTIONS method label color. **Method Label Head Background Color** Specifies the HEAD method label background color. **Method Label Head Color** Specifies the HEAD method label color. **Headline Font Family (Optional)** Specifies the API console headline font family. ## API Console Instances The API Console Instances component shows the list of public instances of an API, also known as endpoints. The component shows the public API instances from [Anypoint API Manager](https://docs.mulesoft.com/api-manager/latest/). You can specify values for the following parameters of the API Console Instances: **API** Specifies the API whose instances are displayed. ## API Console Navigation The API Console Navigation component shows the API console component’s navigation. The component shows the public API instances and documentation from [Anypoint Exchange](https://docs.mulesoft.com/exchange/). You can specify values for the following parameters of the API Console Navigation: **API** Specifies the API to display. **Show Documentation Pages** Shows the API’s documentation pages. **Method Label Get Background Color** Specifies the GET method label background color. **Method Label Get Color** Specifies the GET method label color. **Method Label Post Background Color** Specifies the POST method label background color. **Method Label Post Color** Specifies the POST method label color. **Method Label Put Background Color** Specifies the PUT method label background color. **Method Label Put Color** Specifies the PUT method label color. **Method Label Delete Background Color** Specifies the DELETE method label background color. **Method Label Delete Color** Specifies the DELETE method label color. **Method Label Patch Background Color** Specifies the PATCH method label background color. **Method Label Patch Color** Specifies the PATCH method label color. **Method Label Options Background Color** Specifies the OPTIONS method label background color. **Method Label Options Color** Specifies the OPTIONS method label color. **Method Label Head Background Color** Specifies the HEAD method label background color. **Method Label Head Color** Specifies the HEAD method label color. ## API Console Request Panel The API Console Request Panel component shows a panel where users can test an API by making requests to it. The component shows the public and managed API instances from [Anypoint API Manager](https://docs.mulesoft.com/api-manager/latest/). You can specify values for the following parameters of the API Console Request Panel: **API** Specifies the API to display. **Show Documentation Pages** Shows the API’s documentation pages. **Method Label Get Background Color** Specifies the GET method label background color. **Method Label Get Color** Specifies the GET method label color. **Method Label Post Background Color** Specifies the POST method label background color. **Method Label Post Color** Specifies the POST method label color. **Method Label Put Background Color** Specifies the PUT method label background color. **Method Label Put Color** Specifies the PUT method label color. **Method Label Delete Background Color** Specifies the DELETE method label background color. **Method Label Delete Color** Specifies the DELETE method label color. **Method Label Patch Background Color** Specifies the PATCH method label background color. **Method Label Patch Color** Specifies the PATCH method label color. **Method Label Options Background Color** Specifies the OPTIONS method label background color. **Method Label Options Color** Specifies the OPTIONS method label color. **Method Label Head Background Color** Specifies the HEAD method label background color. **Method Label Head Color** Specifies the HEAD method label color. **Link Hover Color** Specifies the color of links when the cursor hovers over them. **Button Text Color (Optional)** Specifies the color of button text. **Button Hover Text Color (Optional)** Specifies the color of button hover text. Default is the button text color. **Headline Font Family (Optional)** Specifies the headline font family. **Error Color (Optional)** Specifies the color of error messages. To enable users to select an application to populate the `clientId` and `clientSecret` credential values, add credential annotations to the application specification: ```text /all-query: get: queryParameters: query_id: type: string (credentialType): id query_secret: type: string (credentialType): secret /all-headers: get: headers: header_id: type: string (credentialType): id header_secret: type: string (credentialType): secret ``` If your site has a custom request access implementation, update the application selector by dispatching the following event. Without this event, each time a user adds an application, the user must refresh the page to show the application in the **Application** menu. ```text this.dispatchEvent(new Event('acm:application_created_success', {bubbles: true})) ``` --- product: API Community Manager --- # API Documentation is Not Displaying in the API Details Page > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If the API documentation is not displaying in the API Details page, follow these steps: 1. Go to **Setup** > **Session Settings**. 2. Scroll to **Lightning Web Security** and uncheck **Use Lightning Web Security for Lightning web components (GA) and Aura components (Beta)**. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Approved Members Not Created or Emailed > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If your Winter '20 Salesforce organization has the member approval workflow active, and approving a member and refreshing the screen removes the member from the list without creating the new user or sending the new user email, either set the approver’s language to `English` or add the approver’s language. To set the approver’s language to English, configure the approver user in the `SelfRegister` component and set the locale to `English`. To add the approver’s language: 1. Open Salesforce setup. 2. Open company settings. 3. Open language settings. 4. Enable the appropriate languages and locales by enabling end-user languages, enabling platform-only languages, or enabling both. 5. Add the language matching the approver user profile to the list of displayed languages. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Avoid a Potential Security Vulnerability > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The guest and member user profile contains the Exchange Viewer permission that gives access to all assets in Exchange with this visibility. An impersonated user can potentially exploit this visibility and access assets that are not intended for them. To troubleshoot this issue, ensure that guest and community users can only access intended and required assets. 1. Create a new team in Access Management called Guest Community Users and create a new mapping for External Idp Groups called Community Guest. 2. In Salesforce, change the Named Credential authentication information. 3. In Exchange, share the assets for the Everyone visibility with the Guest Community Users team and share assets for the Members only visibility with the Community Users team. 4. In Access Management, remove the Exchange Viewer permission and the inherited permissions of the guest user and the Community Users team. To avoid a potential security vulnerability: 1. Create a new team in Access Management called Guest Community Users and create a new mapping for External Idp Groups called Community Guest: 1. Go to Access Management. 2. In the Access Management navigation menu, click **Teams**. 3. Click **Create Team** and enter `Guest Community Users`. 4. Select **External Idp Groups** and enter the following fields: - In **Group Name**, enter `Community Guest`. - In **Provider Name**, select a provider. 5. Click **Save Changes**. 2. In Salesforce, change the Named Credential authentication information: 1. Go to **Salesforce > \*Setup**. 2. In the **Quick Find** search box, enter `Named Credentials` and select it. 3. Click **Anypoint**. 4. In the **Authentication** section, go to the **Per User Subject** field. 5. In the **Formula Editor** field change `& "|[\"Community User\"]"` to `& "|" & IF($User.Alias = "guest", "[\"Community Guest\"]", "[\"Community User\"]")`. 6. Click **Save**. 3. In Exchange, share the asset with the Guest Community Users or the Community Users team. Repeat these steps for each asset you want to share with guest community users or the community users: 1. Go to Exchange and select the asset. 2. Click **Share**. 3. In the **Collaborators** tab, enter `Guest Community Users` or `Community Users`. 4. Click **Save**. 4. In Access Management, remove the ability for users to see the inherited permissions from the Exchange Viewer permission: 1. Go to **Access Management > Users**. 2. Select the guest user. 3. In **Permissions**, move the slider to disable showing inherited permissions. 4. Click **Permissions > Remove all permissions**. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Brand and Customize Your Site > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint API Community Manager enables you to customize and adjust the exact details of branding, look and feel, and the site structure of your Salesforce Experience Cloud site, using a simple point-and-click approach. Advanced HTML and CSS editing is also available for precise web designs. - [Site Look-and-Feel Customization](https://docs.mulesoft.com/api-community-manager/customize) - [Site Structure](https://docs.mulesoft.com/api-community-manager/site-structure) - [Description of API Community Manager Lightning Components](https://docs.mulesoft.com/api-community-manager/acm-lightning-components) - [API Console](https://docs.mulesoft.com/api-community-manager/api-console) - [Preview Your Site](https://docs.mulesoft.com/api-community-manager/preview-community) - [Publish Your Site](https://docs.mulesoft.com/api-community-manager/publish-community) - [Advanced Styling with CSS](https://docs.mulesoft.com/api-community-manager/css-styling) --- product: API Community Manager --- # Broken Images on Documentation Pages > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Images uploaded to Exchange with the Markdown editor are stored in Exchange. If your community shows a broken image on an API documentation page, and the image displays correctly on the API documentation page in Exchange, follow these steps: 1. If the image is stored in Exchange, make the Exchange API version asset public so the image can be rendered in your community. 2. If the image is stored on a web location outside Exchange, such as S3 or Dropbox: 1. Open Salesforce setup. 2. Open your community’s content security policy (CSP) trusted sites list. 3. Ensure that the list includes the image site domain. 4. Because some file-sharing services resolve URLs through multiple redirects, ensure that the list includes the domain of the final URL. To learn if any content in any component or page of the community is blocked by the content security policy: 1. Open the API Community Manager control panel. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 2. Click **Shortcuts to applications** and select **Site Builder**. 3. Click **Preview**. 4. Open the page that contains the content. To inspect the URLs the browser loads when rendering a community page, use the browser developer tools. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Cannot Create Applications When Application Limit is Reached > For the full documentation index, see: https://docs.mulesoft.com/llms.txt This issue can occur if the maximum number of 10,000 client applications is reached. To resolve this issue, check for inactive client applications and revoke access. If you have a significant number of inactive client applications, contact your customer success partner. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Changes to APIs Are Not Displaying > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If changes made to APIs are not visible right after you make them, you can refresh the cache to see them: 1. Log in to your Salesforce organization. 2. In **Setup**, click **Platform Cache**. 3. Click the `ACMCache` partition. 4. If the caches are in use, then the **Clear Cache** button is displayed. 5. Click **Clear Cache**. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Configure API Visibility > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint API Community Manager uses visibility rules to make APIs visible to selected groups of users. For example, your community could have a Payment API and a Trade API visible to the financial developers team of three users, and have an Order Submission API visible to the retail developers team of two other users. API visibility rules use the Salesforce object CommunityApi to represent each API published in your community, and Salesforce [Public Groups](https://help.salesforce.com/s/articleView?id=platform.user_groups.htm&type=5) and [Sharing Rules](https://help.salesforce.com/s/articleView?id=platform.security_about_sharing_rules.htm&type=5) to provide a flexible permissions model. ## Visibility Setup To set up API visibility, configure your community to enable visibility, define your member groups, and define visibility rules to grant the groups permission to see APIs. ### Enable Visibility Follow these steps to configure your community for API visibility: 1. Create a new **ACM Community User Plus** profile based on the **Customer Community User Plus** profile: 1. Click **Salesforce Setup** > **Profiles**. 2. Select **Customer Community User Plus**. 3. Click **Clone**. 4. Enter a name for the new profile that represents the use case, such as `External Developer`. 5. Assign permissions that match the member user profile permissions described in the API Community Manager documentation section [Configure Member User Profile Permissions](https://docs.mulesoft.com/api-community-manager/create-community#configure-member-user-profile-permissions). 2. Configure your community to use the new profile: 1. Click **Setup** > **All Communities**. 2. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Administration**. Click the **Members** tab. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 3. In **Select Profiles**, use the search menu to select **Customer**. 4. Add the new **ACM Community User Plus** profile to the selected profiles. 5. Remove the existing **ACM Community User** profile but _do not_ remove the **System Administrator** profile. If you remove the **System Administrator** profile, the system locks you out and removes all access to your community. 3. Remove all profiles from your community sharing set: 1. Click **Setup** > **Communities Settings**. 2. In **Sharing Sets**, edit your community sharing set and remove all profiles from **Selected Profiles**. 3. If **Selected Objects** in the sharing set includes it, remove **CommunityApi**. 4. If your community already has users, click **Setup** > **Users**, update each user to change **User License** to **Customer Community Plus**, and select the new **ACM Community User Plus** profile. 5. In the API Community Manager control panel, set the visibility of each of your APIs to **Members Only**. ### Define Member Groups Use member groups, also known as _public groups_, to group members and then make individual APIs visible to the group. Visibility rules, also known as _sharing settings_, determine which APIs are visible to a member group. To create a member group: 1. Click **Setup** > **Public Groups**. 2. Create a public group. 3. Enter a name, such as `External Developers`. 4. Click **Save**. To add members to a member group: 1. Click **Setup** > **Public Groups**. 2. Edit the group. 3. In the **Search** menu, select **Customer Portal Users**. 4. Add the members by moving them from **Available Members** to **Selected Members**. **Available Members** shows only users with the new **ACM Community User Plus** profile. If the user you want to add is not in **Available Members**, open the user record and verify the profile. 5. Click **Save**. ### Define Visibility Rules for APIs Use visibility rules, also known as _sharing settings_, to define a set of conditions that determine which APIs are visible to a specific member group. To create a new sharing set: 1. Click **Setup** > **Sharing Settings**. 2. In **Manage sharing settings for**, select **CommunityApi**. 3. In **Sharing Rules**, click **New**. 4. Enter a name for the rule. 5. In **Select your rule type**, select **Based on Criteria**. 6. Customize criteria using the available fields in the API, such as **Name** and **Visibility**. Use **Add Filter Logic** to define and/or conditions. 7. Select a member group to enable it to view the APIs matching these conditions. In this example, an internal developer group sees publicly visible APIs and some internal APIs: ![Sharing Settings](/mulesoft/current/en-us/api-community-manager/_images/sharing-settings.png) ## Add Members to a Member Group To add members to a member group: 1. Click **Setup** > **Public Groups**. 2. Edit the group. 3. In **Search**, select **Customer Portal Users**. 4. Add members to the group by moving them from **Available Members** to **Selected Members**. **Available Members** shows only users with the new **ACM Community User Plus** profile. If the user you want to add is not in **Available Members**, open the user record and verify the profile. 5. Click **Save**. ## Make an API Visible to a Member Group To make an API visible to a member group: 1. Click **Setup** > **Sharing Settings**. 2. In **Manage sharing settings for**, select **CommunityApi**. 3. In the **Sharing Rules** section, create a new rule or edit an existing rule. 4. Ensure that the rule matches the API. 5. Ensure that the rule specifies the member group. ## Automation Assign users to member groups automatically with the option that best suits your needs: - For simple automation such as adding each new user to a default member group, use Salesforce [Process Builder](https://help.salesforce.com/s/articleView?id=platform.process_overview.htm&type=5). - For complex automation by writing business rules for group assignment directly in APEX code, use [APEX triggers](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_triggers.htm). - For complex automation by using declarative group assignment, use Salesforce [Flows](https://help.salesforce.com/s/articleView?language=en_US&id=sf.flow.htm&type=5). --- product: API Community Manager --- # Configure the Platform Cache > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Improve the performance of pages and components in your Salesforce Experience Cloud site by using the [platform cache](https://help.salesforce.com/s/articleView?language=en_US&id=data_platform_cache.htm&type=5). The platform cache has two parts: a session cache that holds data specific to one user and their session, and an organization cache that holds data accessed by multiple users in the organization. Cached objects include: Applications Details of the client applications of the users API Versions Basic details of API versions from Exchange API Documentation API version information and documentation pages API Instances Available instances of each published API version Categories Categories defined in Exchange for organizing APIs API Categories Category values that have been applied to APIs in Exchange API Tier Limits Service Level Access (SLA) tier limits, such as the number of requests an API can make API Query Responses of the "Try It" operation in the API Console Set which parts are enabled and the amount of time the cache keeps each type of data: 1. Log in to your Salesforce organization. 2. In **Setup**, click **Custom Metadata Types**. 3. Next to the label **ACM Platform Cache Metadata**, click **Manage Records**. 4. Next to the label **ACM Configuration**, click **Edit**. 5. Use the **Session Cache Enabled** and **Organization Cache Enabled** checkboxes to enable or disable the corresponding cache. 6. Set the number of seconds that cached data remains in the cache for applications, API versions, documentation content, instances, categories and category values, tier limits, and queries. 7. If you want to see the minimum and maximum number of seconds for each entity, hover over the question mark (?) next to each field name. 8. If you want to disable caching of an entity, set that field to zero seconds. 9. Click **Save**. Cache size defaults to zero. To finish configuring the caches, set the cache size: 1. Log in to your Salesforce organization. 2. In **Setup**, click **Platform Cache**. 3. Click the `ACMCache` partition. 4. Click **Edit**. 5. Set the size of each cache (in megabytes) in the **Organization** field. The sum of the sizes of the session cache and the organization cache cannot be more than your organization’s cache capacity, as determined by your [license](https://docs.mulesoft.com/api-community-manager/licensing-overview). 6. Click **Save**. The new configuration is effective immediately. To see how much of each cache is in use, you can click **Recalculate**. ## See Also - [Salesforce Platform Cache documentation](https://help.salesforce.com/s/articleView?language=en_US&id=data_platform_cache.htm&type=5) - [Platform Cache Basics module on Trailhead](https://trailhead.salesforce.com/content/learn/modules/platform_cache) --- product: API Community Manager --- # Connection Not Established > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If an organization has multiple identity providers, the guided setup can fail to create the data bridge between Anypoint and API Community Manager. During setup, an API request is sent to obtain the identity provider ID and to check if it matches the ID that is entered. When there are more than one identity providers, only the first identity provider ID from the response is read, which might not match the ID that was entered. Resolve this issue by changing the identity provider ID: 1. To find the identity provider ID, run this request: `curl --location --request GET 'https://anypoint.mulesoft.com/accounts/api/organizations//identityProviders' \ --header 'Authorization: Bearer '` 2. Replace `` with your organization ID and replace `` with your token. 3. In the response, find the line with the provider\_id: `"provider_id": "01234567-89ab-cdef-0123-456789abcdef",` 4. In Salesforce, go to **Setup** > **Security** > **Named Credentials** and click **Anypoint**. 5. Change the formula to the following: `"v2|IDP_ID|" & $User.Username & "|" & $User.FirstName & "|" & $User.LastName & "|" & $User.Email & "|[\"Community User\"]"` 6. Replace `` IDP_ID` `` with the identity provider ID. For example: `"v2|83685668-9e8a-49c2-9d9a-7a7c89391cce|" & $User.Username & "|" & $User.FirstName & "|" & $User.LastName & "|" & $User.Email & "|[\"Community User\"]"` ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Connectivity with MuleSoft Government Cloud > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Use Anypoint API Community Manager to create developer communities that surface APIs from Anypoint Platform organizations in the MuleSoft AWS Government Cloud environment. In this deployment model, your developer community runs on the standard API Community Manager product in the commercial cloud environment. Your community connects to your MuleSoft Government Cloud organization as an external system to retrieve the specific information you want to make available outside your FedRAMP authorization boundary for your public API community, such as API documentation. In this model, you have full control of what data in your MuleSoft Government Cloud organization is accessible to the API Community Manager product in the Salesforce commercial cloud environment. The MuleSoft Government Cloud data control documentation page shows how to configure these detailed data access controls. For compliance with FedRAMP regulations on handling support cases associated with API Community Manager when connected to your MuleSoft Government Cloud organization, any support case that requires access or interaction with your MuleSoft Government Cloud organization data is handled by the MuleSoft support team following FedRAMP requirements. Support cases that do not require access to your MuleSoft Government Cloud data (such as those related to look and feel, branding, CMS articles, and forums on your public developer community) are handled through API Community Manager standard support processes. ## Limitations API Community Manager supports MuleSoft Government Cloud with a few limitations. The following search options are visible but not functional for MuleSoft Government Cloud in the latest version of API Community Manager: - Search in API Specifications - Search in API Documentation Pages - Search in Custom Fields - Enable Advanced Links ## See Also - [MuleSoft Government Cloud Data Control](https://docs.mulesoft.com/api-community-manager/govcloud-data-control) --- product: API Community Manager --- # Console Mocking Service Not Loading > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If the console shows a spinning icon and never loads the mocking service: 1. Open Salesforce setup. 2. Open the **Named Credentials** configuration. 3. Ensure that the Anypoint Platform credentials for the data bridge are configured as described in [Manual Setup](https://docs.mulesoft.com/api-community-manager/manual-setup). ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Contact MuleSoft Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt For professional services customizations, enhancement requests, and other assistance, contact your MuleSoft Customer Success representative. To report issues or defects in Anypoint API Community Manager, submit a support case through [Salesforce Help](https://help.salesforce.com). The MuleSoft support team works closely with the Salesforce support team to coordinate work on any support tickets involving Salesforce technology. Service-level agreements (SLAs) for support are available at the MuleSoft [Product Support and Maintenance Terms](https://www.salesforce.com/en-us/wp-content/uploads/sites/4/documents/legal/Agreements/mulesoft-cloud-offerings-SLA-forSalesforce-uMSA.pdf) page. --- product: API Community Manager --- # Create a Community > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Creating and configuring a Salesforce Experience Cloud site for your API community includes setting branding, forums and moderation rules, Salesforce CMS, Salesforce CRM content, Chatter tracking for APIs, profiles and permissions, sharing, member registration and approval, and user impersonation. You can create any number of sites. All sites are in the same Salesforce organization. The default Anypoint API Community Manager license covers up to 100 sites. Installing, updating, or configuring API Community Manager must be done by a user account with the **System Administrator** profile in the API Community Manager Salesforce organization. If you are not familiar with Experience Cloud, refer to the [Experience Cloud Overview](https://help.salesforce.com/s/articleView?id=experience.networks_resources.htm&type=5). ## Create a New Community 1. Navigate to **Setup**. 2. In the **Quick Find** box, enter **`Digital Experiences`** and then click **All Sites**. 3. Click **New**. All site templates are listed. 4. If you want to get started from an example, choose any of the **API Community Manager Templates** or any of the other available templates. 5. If you want to design your site from scratch with full control of the structure and look and feel, choose **Build your own**. 6. Click **Get Started**. 7. Enter values for **Name** and **optional URL suffix** for your site. 8. Click **Create**. The configuration process will take a few minutes. 9. When the configuration process finishes and you see your new site workspace, click **Install AppExchange Package** in the top banner and follow the installation wizard instructions to install the pre-defined metrics and dashboards. Make sure to install this package in your production organization when prompted by the wizard. 10. Open Salesforce **App Launcher** and select **API Community Manager** to open the API Community Manager control panel. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 11. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Administration**. 12. Click **Settings**. 13. Click **Activate**. To enable the admin panels, publish your community for the first time: 1. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Builder**. 2. Click **Publish** in the top right corner. 3. In the **Publish Your Community** dialog, click **Publish**. In a few minutes, your community is published. 4. Look for an email notification including your community’s public URL. 5. You can also always find your community’s live URL by opening the API Community Manager control panel, clicking **Shortcuts to applications**, and selecting **Open Site**. To use a custom domain name, also known as a vanity domain, refer to the Salesforce knowledge article [Run your Salesforce Digital Experience under a custom domain](https://help.salesforce.com/s/articleView?language=en_US&id=000336819&mode=1&type=1). To customize the look, feel, and branding of your community, refer to [Brand and Customize Your API Community](https://docs.mulesoft.com/api-community-manager/brand-intro). ## Configure Content Your community’s content configuration controls the forums, moderation rules, Chatter tracking for APIs, Salesforce CMS, and Salesforce CRM content. ### Configure Forums 1. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Administration**. 2. Click **Preferences** in the left panel. 3. Click **Show all settings in Workspaces**. 4. Click **Save** so this setting is reflected. 5. Click **Allow discussion threads**. 6. Click **Save**. 7. Return to the API Community Manager control panel, and click **Manage CMS Content**. 8. Click the **Topics** tab. 9. Click **Navigational Topics**. 10. Create as many topics as you need for your community forums and click **Save**. By default, discussion forums are not moderated, so any member can create posts with any content and the posts become visible for other members immediately. If you want to define a basic "review/approve-all" moderation model, follow these steps: 1. In the API Community Manager control panel, click **Manage Forums** > **Rules**. 2. Click **New** and create a **Content Rule**. 3. Enter a **Name** and a **Unique Name** in the **Details** section and click **Activate Rule**. 4. In the **Rule Conditions** section, select **Post** and **Comment**, and in **Moderation Action** select **Review**. 5. In the **Criteria** section, move all items in **Member Criteria** from the **Available Criteria** box to the **Selected Criteria** box. 6. Click **Save**. ![Forum Moderation Rule](/mulesoft/current/en-us/api-community-manager/_images/forum-moderation-rule.png) > [!IMPORTANT] Verify the **Activate Rule** check box is active when saving your changes. You can define much more advanced moderation and review rules. You can find more information in the Salesforce Experience Cloud documentation about [forum moderation rules](https://help.salesforce.com/s/articleView?language=en_US&id=networks_moderator_manage_rules.htm&type=5). Chatter tracking enables your community to create discussions about specific objects such as APIs. To enable Chatter tracking: 1. In **Setup**, search for **Chatter** using the **Quick Find** box and click **Feed Tracking**. 2. Click **CommunityAPI**. 3. Without selecting any fields, click **Enable feed tracking**. 4. Click **Save**. ### Organize CMS Content Using Topics If you want to organize CMS content using Topics, follow these steps: 1. Go to the API Community Manager control panel, click **Manage CMS Content**, and click **Topics**. 2. Select the topics you want to enable to organize CMS content and click **Enable for content** in the top right. ### Enable Salesforce CRM Content To verify that Salesforce CRM Content is enabled: 1. In **Setup**, search for **Salesforce CRM** using the **Quick Find** box and click **Salesforce CRM Content**. 2. Ensure that **Enable Salesforce CRM Content** is selected. 3. Click **Save**. ## Configure Profiles and Permissions After you create a community, you must create different user profiles for your community _members_ (signed in) and _guests_, so that you can control access to and visibility of APIs and content. Configure the settings with one of these options: - Configure the member and guest user settings automatically using the default settings specified by the **Fix** buttons in the [API Community Manager diagnostics user access tab](https://docs.mulesoft.com/api-community-manager/diagnostics#user-access-tab). - Configure the member and guest user settings manually using custom settings applied in the following steps. API Community Manager uses the following permission sets to define the visibility of external objects and Apex classes and access to these entities. - ACM Admin User - ACM Guest User - ACM Member User For more information about using permission sets, see [Permission Sets](https://help.salesforce.com/s/articleView?id=sf.perm_sets_overview.htm&type=5). ### Configure Member User Permission Sets The permission for the member user must be assigned to the **ACM Member User** permission set so your members can access APIs, create client applications, and manage their details. As part of the API Community Manager package, the member user is assigned automatically. After the package is installed, a trigger searches for users with a Customer Community Profile and assigns the member users to the **ACM Member User** permission set. To manually assign a new user to the permission set for access to the external objects and Apex classes: 1. Go to the member profile and search for the assigned user. 2. Assign the **ACM Member User Permission Set** to the User. ### Configure Guest User Permission Sets The permission for the guest user must be assigned to the **ACM Guest User** permission set so your guests can access API information. You can use API Community Manager Diagnostics or manually set the guest user profile to the **ACM Guest User** permission set. To manually assign the guest user to the permission set for access to the external objects and Apex classes: 1. Go to the guest profile and search for the assigned user. 2. Assign the **ACM Guest User** to the **Community Guest User**. ## Configure Sharing Settings Configure the settings with one of these options: - Configure sharing settings for members and guests automatically using the default settings specified by the **Fix** buttons in the [API Community Manager diagnostics user access tab](https://docs.mulesoft.com/api-community-manager/diagnostics#user-access-tab). - Configure sharing settings for members and guests manually using custom settings applied in the following steps. Configure sharing settings for members: 1. In **Setup**, search for **`Digital Experiences`** using the **Quick Find** box and click **Settings**. 2. Scroll to **Sharing Sets** and click **New**. 3. In the **Sharing Set Edit** section, update **Label** with `_Site Name_ Sharing Set`. 4. In the **Select Profiles** section, select **_Site Name_ Member User** from **Available Profiles** and add it to **Selected Profiles**. 5. In the **Select Objects** section, select **CommunityApi** and **CommunityAssetVersion** from **Available Objects** and add them to **Selected Objects**. 6. In the **Configure Access** section, under the **Action** column, select **Set Up** next to **CommunityApi**. 7. In the **Access Mapping for CommunityApi** page enter these values. 1. **Account** in the **User** list. 2. **acm\_pkg\_\_Account\_c** in the **Target CommunityApi** list. 3. **Read Only** in the **Access Level** list. 8. Click **Update**. 9. In the **Configure Access** section, under the **Action** column, select **Set Up** next to **CommunityAssetVersion**. 10. In the **Access Mapping for CommunityAssetVersion** page enter these values. 1. **Account** in the **User** list. 2. **acm\_pkg\_\_Account\_c** in the **Target CommunityAssetVersion** list. 3. **Read Only** in the **Access Level** list. 11. Click **Update**. 12. Click **Save**. Configure sharing settings for guests: 1. In **Setup**, search for **Security** using the **Quick Find** box and click **Sharing Settings**. 2. Scroll to the **CommunityApi Sharing Rules** section near the bottom of the page and click **New**. 3. In the **Rule Name** section, update **Label** with `_Site Name_ Guest`. 4. In the **Select your rule type** section, select `Guest user access, based on criteria`. 5. In the **Select which records to be shared** section, add these criteria. 1. **Field**: `Community Name` **Operator**: `equals` **Value**: `_Site Name_` 2. **Field**: `Visibility` **Operator**: `equals` **Value**: `Public` 6. In **Select the users to share with**, select `_Site Name_ Site Guest User`. 7. In **Select the level of access for the users**, select **Read Only**. 8. Save. 9. In **Setup**, search for **Security** using the **Quick Find** box and click **Sharing Settings**. 10. Scroll to the **CommunityAssetVersions Sharing Rules** section near the bottom of the page and click **New**. 11. In the **Rule Name** section, update **Label** with `_Site Name_ Guest`. 12. In the **Select your rule type** section, select `Guest user access, based on criteria`. 1. **Field**: `Community Name` **Operator**: `equals` **Value**: `_Site Name_` 2. **Field**: `Visibility` **Operator**: `equals` **Value**: `Public` 13. In **Select the users to share with**, select `_Site Name_ Site Guest User`. 14. In **Select the level of access for the users**, select **Read Only**. 15. Save. > [!NOTE] If you ever change the name of your site, be sure to update this setting. ## Enable Guest User Registration as Members These steps enable guests to register as members in your API Community Manager portal. Configure the settings with one of these options: - Configure user registration automatically using the default settings specified by the **Fix** buttons in the [API Community Manager diagnostics user access tab](https://docs.mulesoft.com/api-community-manager/diagnostics#user-access-tab). - Configure user registration manually using custom settings applied in the following steps. Assign a profile for your community members: 1. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Administration**. Navigate to the **Members** section in the left panel. 2. In the **Select Profiles** section, in the **Search** list, click **All**. 3. Use the **Add** button to add **_Site Name_ Member User** to the **Selected Profiles** box. 4. Click **Save**. > [!IMPORTANT] Do not **Remove** the **System Administrator** profile from the **Selected Profiles** > section. If you remove the **System Administrator** profile you will lose all access to your > community. Create an account for your community members: 1. Navigate to **App Launcher** and click **Accounts**. 2. Click **New** to create a new account. 3. Select the record type **Company** and click **Next**. 4. Enter `ACM Registered Users` in **Account Name**. 5. Click **Save**. Configure a registration page for your community members. The self-registration Lightning component enables guest users to register themselves as members of your community. If you’re not using any of the templates supplied with API Community Manager, use these steps to add the self-registration Lightning component specific to API Community Manager: 1. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Builder**. 2. In the **Pages** list in the top left, navigate to the **Register** page. 3. Remove the standard **Self Registration** Lightning component by clicking the delete icon next to it. 4. Navigate to **Components**, search for **Self Register** and add the Lightning component to the page. Configure a login page: 1. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Administration**. Navigate to the **Login & Registration** section in the left panel. 2. Scroll down to the **Registration Page Configuration** section near the bottom of the page. 1. Select **Allow customers and partners to self-register**. 2. Select **Experience Builder Page** for **Registration Page Type** and click **Register**. 3. Select **_Site Name_ Member User** in **Profile**. 4. Select **ACM Registered Users Account** in **Account**. 3. Click **Save**. > [!NOTE] Refer to [Brand and Customize Your API Community](https://docs.mulesoft.com/api-community-manager/brand-intro) to understand how to > configure the look and feel of your login and registration pages. ## Optionally Set Up an Admin Approval Process for Creating New Users Use these steps to set an optional approval process for self-registered users. The system will then require administrator approval before creating member accounts. If the request is approved, the new user account is created, a welcome email is sent to the new user, and the user sets a password and logs in to the community. If you don’t configure an approval process, self-registered users will become members automatically when they register. Create the approval process: 1. In **Setup**, search for **Approval Processes** in the **Quick Find** box and click **Approval Processes**. 2. In the **Manage Approval Processes For** list, select **Self Register User Request**. 3. In the **Create New Approval Process** list, select **Use Standard Setup Wizard**. 4. In the wizard, enter this information. 1. In **Step 1. Enter Name and Description**, set **Process Name** to `Approve Registration`. 2. Click **Next**. 3. In **Step 2. Specify Entry Criteria**, enter this information. 1. **Field**: `SelfRegisterUserRequest: Approved` 2. **Operator**: `equals` 3. **Value**: `False` 4. Click **Next**. 5. In **Step 3. Specify Approver Field and Record Editability Properties**, in the **Record Editability Properties** section, select **Administrators ONLY can edit records during the approval process**. 6. Click **Next**. 7. In **Step 4. Select Notification Templates**, in the **Approval Assignment Email Template** section, in the look-up dialog, under the **ACM** category, select **Registration Request**. 8. Click **Next**. 9. In **Step 5. Select Fields to Display on Approval Page Layout**: 1. Add **Self Register User Request Name** and **Owner** to **Selected Fields**. 2. Select the **Display approval history information in addition to the fields selected above** check box. 10. Click **Next**. 11. In **Step 6. Specify Initial Submitters**, add **Self Register User Request Owner** to the **Allowed Submitters** column. 12. Click **Save** and continue to the next section. Create an approval step: 1. If you are prompted to add an approval step, click **Yes, I’d like to create an approval step now** and click **Go!**. 2. If you are not prompted to add an approval step: 1. In **Setup**, search for **Approval Processes** in the **Quick Find** box and click **Approval Processes**. 2. Click **Approve Registration** (the approval that you created in the previous section). 3. In the **Approval Steps** section, click **New Approval Step**. 3. In the **Step 1. Enter Name and Description** section, enter `Step 1` in **Name**. 4. Click **Next**. 5. In the **Step 2. Specify Step Criteria** section, click **Next**. 6. In the **Step 3. Select Assigned Approver** section, select **Let the submitter choose the approver manually**. 7. Click **Save**. Create a final approval action: 1. If you are prompted to add an Approval Action, click **Yes, I’d like to create an approval action for this step now**, select **Field Update** in the list, and click **Go!**. 2. If you are not prompted to add an Approval Action: 1. In **Setup**, search for **Approval Processes** in the **Quick Find** box and click **Approval Processes**. 2. On the **Self Register User Request: Approve Registration** page, navigate to **Final Approval Actions** and click **Add New**. 3. Click **Field Update**. 3. In the **Field Update Edit** section, enter these values. 1. **Name**: `Create User` 2. **Field to update**: `Approved` 3. **Re-evaluate Workflow Rules after Field Change**: Select the check box. 4. **Checkbox Options**: `True`. 4. Click **Save**. Activate the approval process: 1. On the **Approve Registration** page, click **Activate** and confirm. 2. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Builder**. Click **Settings** > **General**. 3. In Site Builder, navigate to the **Register** page in the **Pages** list and select the API Community Manager **Self Register** Lightning component. 4. Ensure that **Approved Registration** is enabled. ## Require Admin Approval for Guest Registration To prevent the self-registration approval process from automatically approving new users, configure the guest registration to require an admin’s approval. You must have API Community Manager package 2.24 or later installed to enable this approval process. To require an admin’s approval for guest registration: 1. Configure the Builder: 1. Go to Salesforce > **Setup**. 2. In the **Quick Find** box enter `All Sites` and select **All Sites**. 3. On the **Digital Experience** page, click **Builder**. 4. Click the **Page Properties** drop-down, enter `register` in the **Pages** search box, and select **Register**. 5. Click the **Self Register** component and select the **Registrations Require Approval** checkbox. 2. Add the metadata in Salesforce: 1. Go to Salesforce. 2. In the **Quick Find** box, enter `custom metadata types` and select **Custom Metadata Types**. 3. On the **All Custom Metadata Types** page, select **ACM Community Configuration Metadata**. 4. On the **ACM Community Configuration Metadata** page, click **Manage ACM Configuration Metadata**. 5. Select a metadata record from the list and click **Edit**. 6. Select the **RegistrationRequireApproval** checkbox and click **Save**. If there’s no metadata record listed on the **Manage ACM Configuration Metadata** page: 1. Click **New** and enter these fields: - Label - ACM Community Configuration Metadata Name 2. To get the NetworkID: 1. Go to the **Builder** > **Settings** and select **Developer** and click **Developer Console**. 2. In the **Query Editor**, enter `Select Name, Id from Network` and click **Execute**. 3. In **Query Results**, copy the number from the **Id** column and paste it into the **NetworkId** field on the **ACM Community Configuration Metadata** page. 3. Select the **RegistrationRequireApproval** checkbox and click **Save**. --- product: API Community Manager --- # Data Sheets > For the full documentation index, see: https://docs.mulesoft.com/llms.txt These data sheets offer further information about Anypoint API Community Manager. - [Licensing Overview](https://docs.mulesoft.com/api-community-manager/licensing-overview) - [Connectivity with MuleSoft Government Cloud](https://docs.mulesoft.com/api-community-manager/connectivity-govcloud) - [Accessibility](https://docs.mulesoft.com/api-community-manager/accessibility) - [Security](https://docs.mulesoft.com/api-community-manager/security) For the list of supported browsers, see [Browser Support for Anypoint Platform](https://docs.mulesoft.com/general/browser-support). API Community Manager is not certified for use on mobile devices. Some functionality works on mobile devices, but some functionality such as the API console does not. --- product: API Community Manager --- # Description of API Community Manager Lightning Components > For the full documentation index, see: https://docs.mulesoft.com/llms.txt You design the pages of your Anypoint API Community Manager portal by adding and configuring Lightning components in Site Builder. These Lightning components include both the Lightning components available in all Salesforce Digital Experiences, and the API Community Manager Lightning components available only in API Community Manager. Each API Community Manager Lightning component has different configuration options and adds different functionality to the portal. Many API Community Manager Lightning components show data from Anypoint Platform. Community admins can change some of these data fields, such as API names, descriptions, and icons. API Community Manager saves these changes but does not push the changes back to Anypoint Platform. ## ACM Search Box The Anypoint API Community Manager Search Box component enables users to search for both content that exists in Salesforce Experience Cloud (such as knowledge articles, support cases, and announcements) and content that exists in Anypoint Platform (such as APIs and client applications). Results from the search are presented in the [ACM Search Results](#acm-search-results) component. You can specify values for the following parameters of the API Community Manager Search Box: **Result Page URL** Specifies the URL of the search results page shown after the user enters a search. **Search Areas** Selects which types of content to search: **APIs**, **API Groups**, **Applications**, **Knowledge Articles**, **Cases**, **Discussions**, **Topics**, **Managed Content (CMS)**, **API Specifications**, **Documentation Pages**, and **Custom Fields**. **Number of results to show** Specifies the number of results shown as the user types a query. **Enable advance links** Enables search results to link to specific tabs of an API details page, such as the console, documentation, custom fields, and applications tabs, according to their tab set IDs. The **Result Page URL** parameter specifies the URL of a search results page, and the search results page must include an **ACM Search Results** component to display the search results. If the page does not include an **ACM Search Results** component, members and guest users who enter a search and go to the page see no results. If a content type is not selected in the **Search Areas** parameter, then the linked **ACM Search Results** component omits results of that content type. MuleSoft Government Cloud does not support searching in API specifications or documentation pages. When you select **Enable advance links**, configure the tab set ID fields that match your customization of the tabs of the API details page, such as `Console Tab Set Id`, `Documentation Tab Set Id`, `Custom fields Tab Set Id`, and `Applications Tab Set Id`: 1. Open the builder. 2. Preview the community as an authenticated user. 3. Open the API details page for an API. 4. Select a tab. 5. In the URL of the current page, find a tab set ID, which looks similar to `tabset-1a2b3c=2` or `tabset-1a2b3c=4d5e6f`. 6. Copy this tab set ID to a tab set ID field such as `Console Tab Set Id`. Your community’s default pages have one ACM Search Box and one ACM Search Results component, and this is the best practice to minimize the chance of misconfigurations, although it is possible to use separate searches for separate audiences within your community’s members. Search results are sorted by the date they were most recently modified, from newest to oldest. To test and preview the search configuration and the presentation of the results page, [preview your API community](https://docs.mulesoft.com/api-community-manager/preview-community) and run a search. ## ACM Search Results The API Community Manager Search Results component shows results after a user enters a search in the [ACM Search Box](#acm-search-box) component. You can specify values for the following parameters of the Search Results: **Component Title** Specifies the title for the results. **Border** Specifies border thickness. Values are **Thick**, **Medium**, **Thin**, or **None**. Default is **Thin**. **Show Search Input** Shows the search input on the results page. **Enable advance links** Enables search results to link to specific tabs of an API details page, such as the console, documentation, custom fields, and applications tabs, according to their tab set IDs. When you select **Enable advance links**, configure the tab set ID fields that match your customization of the tabs of the API details page, such as `Console Tab Set Id`, `Documentation Tab Set Id`, `Custom fields Tab Set Id`, and `Applications Tab Set Id`: 1. Open the builder. 2. Preview the community as an authenticated user. 3. Open the API details page for an API. 4. Select a tab. 5. In the URL of the current page, find a tab set ID, which looks similar to `tabset-1a2b3c=2` or `tabset-1a2b3c=4d5e6f`. 6. Copy this tab set ID to a tab set ID field such as `Console Tab Set Id`. ## API Access Requester The API Access Requester component enables community members to request access to an API for either a new or existing application. An API page displays the **API Access Request** button when at least one public managed API instance has its [visibility set to public in Exchange](https://docs.mulesoft.com/exchange/to-configure-api-settings). Community members can either request access for an existing client application and API instance, or request to create a new client application with access to the API by specifying the application name and description and choosing an API instance. When a consumer developer requests access for a new client application to an API instance that has an identity provider (IDP), the consumer developer must specify one or more of the OAuth 2.0 grant types Authorization Code Grant, Implicit Grant, Refresh Token, and Resource Owner Grant. Some IDPs do not support all grant types. Requesting access and specifying an unsupported grant type shows the error `Error creating application.` You can specify values for the following parameters of the API Access Requester: **API** Specifies the API. **Button Border Radius** Selects the button border radius. A larger radius makes the button look more rounded. **Button Align** Specifies left, right, or center button alignment. **Show Modal Title Line** Shows the title line in the access request modal. ## API Card The API Card component shows information about an API or API Group, including icon, name, and description. The icon, name, and description shown are set in the API Community Manager control panel when you [add an API or API Group version to your community](https://docs.mulesoft.com/api-community-manager/publish-apis). You can specify values for the following parameters of the API Card: **API** Specifies the API shown. **Override URL** By default the API Details button links to the API main page. You can optionally set the Override URL to direct users to other information such as documentation or marketing collateral. **Show Buttons** Shows the API Details button. If the button is not shown, users can click anywhere on the card to show the API details. **Card Height** Specifies the card height. **Card Margin** Specifies the amount of margin space around the card. **Card Border** Specifies the card border thickness. **Card Border Radius** Specifies the card border radius. A larger radius makes the cards look more rounded. **Card Shadow** Specifies the shadow beneath the card. **API Details Button Label** Enables you to set the API Details button label. Default is **API Details**. **Learn More Button Label** Enables you to set the Learn More button label. Default is **Learn More**. ## API Carousel The API Carousel component shows a horizontally scrollable set of API cards. Each card shows an API or API Group. The API icon, name, and description shown are set in the API Community Manager control panel when you [add an API version to your community](https://docs.mulesoft.com/api-community-manager/publish-apis). You can specify values for the following parameters of the API Carousel: **Show Buttons** Shows the API Details button on each card. Users can see API details by clicking the button if it is present or by clicking anywhere on the card if it is not. **Max Cards Display** Specifies the maximum number of cards to show. **Rows** Specifies the number of rows of cards in the carousel. **Show Arrows** Shows arrows on the carousel’s right and left sides. Clicking the arrows scrolls through the cards in the direction of the arrow clicked. **Arrow Size** Specifies the size of the arrows on the right and left sides. **Show Dots** Shows dots below the cards. Each dot links to a page of cards in the carousel. **Card Height** Specifies the card height. **Card Margin** Specifies the margin space around each card. **Card Border** Specifies the card border thickness. **Card Border Radius** Specifies the card border radius. A larger radius makes the cards look more rounded. **Card Shadow** Specifies the shadow beneath each card. **Message If Empty** Shows a message if the carousel has no APIs. Default is `There are no APIs available right now.` **Show** Specifies whether to show **APIs**, **Groups**, **APIs and Groups**, or **Children**. Default is **APIs and Groups**. **Children** shows the APIs in an API Group. Use the **Children** setting only on pages with **Page Variation** set to **API Group Detail** and not **API Detail**. **Filter Condition (Advanced)** Causes the carousel to show only APIs that match the given search condition, which uses the syntax described in [Filter Conditions](#filter-conditions). **Categories Filter (Advanced)** Causes the carousel to show only APIs that match the given categories, using the syntax described in [Categories Filter](#categories-filter). **API Details Button Label** Enables you to set the API Details button label. Default is **API Details**. **Learn More Button Label** Enables you to set the Learn More button label. Default is **Learn More**. ## API Catalog The API Catalog component offers API consumers an interactive way to explore all the available APIs and API Groups in an API community. The API Catalog shows API cards in rows and columns, divided into pages, and shows controls to filter the displayed APIs and API Groups by categories and search terms. Each card shows an API or API Group. With the catalog users can view and explore large numbers of API versions. The API catalog search and the search you perform by using the [ACM Search Box](#acm-search-box) component are not the same searches. The API catalog search is a basic search of APIs and API Groups, and the ACM Search Box component offers advanced search features to search all assets in your API community. In the template community, the link to the API Catalog component appears below the API Carousel component. If a community has multiple API Catalog instances on multiple pages, the best practice is to standardize the pages and place the instances as consistently as possible. To prevent confusion, the API Catalog component is designed to use a maximum of five managed categories, and not tags. After you add a new category in Anypoint Exchange, it appears in the API Catalog configuration within five minutes when the cache refreshes automatically. The API Catalog configuration shows a category only if at least one API has a value for that category. If a category is removed or modified in Exchange, all API Catalog instances automatically reflect the change. A card can have multiple badges from one category. It can display up to three badges and, if it has more, it offers a tooltip to display them. If you do not specify category colors, your community theme is used as the default. Colors can be hexadecimal values such as `#FF0000` or `#0000FF` or standard CSS color names such as `red` and `blue`. You can use URL parameters to pass filters to the catalog. For example, the URL of the page with the catalog component can end with `?catalogFilters=Country:Argentina,USA;Payment:Cash,Credit`. The API icon, name, and description shown are set in the API Community Manager control panel when you [add an API version to your community](https://docs.mulesoft.com/api-community-manager/publish-apis). You can specify values for the following parameters of the API Catalog component: **Component Title** Specifies the catalog title. Default is **API Catalog**. **Show API Counter** Enables you to show the API counter, which displays the number of APIs that match the current search and filters. **APIs Per Page** Specifies the number of APIs shown on each page of the catalog. Default is 12. **Category Filter 1 through Category Filter 5** Specifies the categories that community members and guest users can use to filter the APIs. Default is **None**. **Category Color 1 through Category Color 5** Specifies the color for each category. **Search Input Position** Specifies whether the search box is next to the filters or below the filters and above the cards. **Category Card Badge 1 through Category Card Badge 3** Specifies the categories that appear at the top of the cards as badges, with colors matching the category colors. **Show** Specifies whether to show **APIs**, **Groups**, **APIs and Groups**, or **Children**. Default is **APIs and Groups**. **Children** shows the APIs in an API Group. Use the **Children** setting only on pages with **Page Variation** set to **API Group Detail** and not **API Detail**. **Filter Condition (Advanced)** Causes the catalog to show only APIs that match the given search condition, which uses the syntax described in [Filter Conditions](#filter-conditions). **Categories Filter (Advanced)** Causes the catalog to show only APIs that match the given categories, using the syntax described in [Categories Filter](#categories-filter). ## API Console For information about API Console components, see [API Console](https://docs.mulesoft.com/api-community-manager/api-console). ## API Custom Field Table The **API Custom Field Table** component shows all of an API’s custom fields and their values. You can specify values for the following parameters of the **API Custom Field Table**: **Record Id** Specifies the API. Default is `{!recordId}`, which shows the instances of the API selected on the current page. **Show Table Header** Shows the table header. By default, the table shows all custom fields listed in the Anypoint organization. To show only some fields: 1. Open **Setup** > **Custom Metadata Type** > **ACM General Configuration Metadata** > **Manage Records**. 2. Next to **ACM Configuration**, click **Edit**. 3. In the **CustomFieldsFilter** box, enter a series of custom field keys as a comma-separated list, such as `email,rating,case`. To list all the custom field keys, open the developer console and run the query `SELECT acm_pkg__TagKey__c FROM acm_pkg__AnypointCustomFields__x`. ## API Custom Field Pills The **API Custom Field Pills** component shows up to five of an API’s custom fields and their values, displayed as a sequence of field-value pairs. You can specify values for the following parameters of the **API Custom Field Pills**: **Record Id** Specifies the API. Default is `{!recordId}`, which shows the instances of the API selected on the current page. **Custom Fields** Specifies the five custom fields to show. ## API Details Button The API Details Button component provides portal users with details about an API. You can specify values for the following parameters of the API Details Button: **API** Specifies the API to display. **Button Label** Specifies the button label. Default is **API Details**. **Button Align** Specifies button alignment as left, right, or center of the UI field. **API Name** Adds the API name to the button label. Values are **Append**, **Prepend**, or **None**. Default is **None**. **API Version** Adds the API version to the button label. Values are **Append**, **Prepend**, or **None**. Default is **None**. ## API Documentation Viewer The API Documentation Viewer component shows an API’s documentation from [Anypoint Exchange](https://docs.mulesoft.com/exchange/). The documentation can have multiple pages, and each page can have multiple sections. You can specify values for the following parameters of the API Documentation Viewer: **API** Specifies the API. **Section (Optional)** Selects the section to open. If the **Selected page (optional)** setting is empty, the **Section (optional)** setting is ignored. **Selected Page (Optional)** Selects the page to open. To link directly to a markdown page in this component, set the URL query parameter `selectedPage` to the exact name of the page. For example, if the page is named "Details", use a URL like this: `/communityapi/a003D000001pQpjQAE/basicapi?selectedPage=Details`. If `selectedPage` is defined both in Site Builder for this component and in the URL, then the value in Site Builder is used and the value in the URL is ignored. ## API Engagement The API Engagement component shows the number of likes and subscriptions for an API and enables users to like and subscribe to the API. You can specify values for the following parameters of the API Engagement component: **Record Id** Specifies the API. Default is `{!recordId}`, which shows the instances of the API selected on the current page. ## API Header The API Header component displays the API header, including icon, name, contact email, and description. The API icon, name, and description shown are set in the API Community Manager control panel when you [add an API version to your community](https://docs.mulesoft.com/api-community-manager/publish-apis). The contact email is set in Anypoint Exchange. You can specify values for the following parameters of the API Header: **API** Specifies the API to show. **Show "Learn More" Button** Shows the "Learn More" button. **API Learn More Button Label** Specifies the button label for APIs. Default is **Learn More**. **API Group Learn More Button Label** Specifies the button label for API groups. Default is **Learn More about this API Group**. **Show API Access Requester** Shows the API access requester. **Disable Request Access Anypoint Email** Disable emails for approved and revoked contracts. **Show API Version** Shows the asset version from Exchange when only one version is visible. **Show Contact Email** Shows the contact email from Exchange. When more than one version of the asset is visible, the API Header component displays a version selector and the **Show API Version** checkbox has no effect. To show the email contact: 1. Open **Setup** > **Custom Metadata Type** > **ACM General Configuration Metadata** > **Manage Records**. 2. Check **Show Contact Email**. 3. Click **Save**. ## Application Analytics Graph The Application Analytics Graph component displays statistics about the use of an application, such as traffic, response time, and application health. The component shows the application statistics from [Anypoint API Manager](https://docs.mulesoft.com/api-manager/latest/). You can specify values for the following parameters of the Application Analytics Graph: **Application** Specifies the application to show. ## Application Details The Application Details component displays details about an application from [Anypoint API Manager](https://docs.mulesoft.com/api-manager/latest/). The component shows the application description, application URL, redirect URIs, client ID, client secret, and the application’s contracts with APIs and API Groups. You can specify values for the following parameters of the Application Details: **Application** Specifies the API to show. **Enable Application Editing** Enables editing application details such as the name and description. When application editing is enabled, the component displays the **Reset Credentials** button. By default, this button works on an application with the client provider type Anypoint, and displays an error on an application with a different client provider type such as OpenID. An administrator can customize the button to reset credentials successfully on an application with a client provider type other than Anypoint. ## Application Listing The Application Listing component shows applications that use an API. On a page with an API record ID in scope, such as an API details page, the component shows only the applications with access to the current version of that API. The component shows the application name, client ID, and client secret from [Anypoint API Manager](https://docs.mulesoft.com/api-manager/latest/). You can specify values for the following parameters of the Application Listing: **New Application URL** Specifies a new application URL. **Card Margin** Specifies the amount of margin space around the card. **Card Border** Specifies the card border thickness. **Card Border Radius** Specifies the card border radius. Cards with a larger radius look more rounded. **Card Shadow** Specifies the shadow beneath the card. **Card Width** Specifies the card width. **Card Height** Specifies the card height. ## Instance Viewer The Instance Viewer component shows API instance environments, labels, and URLs. You can specify values for the following parameters of the Instance Viewer: **Record Id** Specifies the API. Default is `{!recordId}`, which shows the instances of the API selected on the current page. **Show Copy URL Icon** Shows the **Copy URL** icon. **Show content in a Box** Shows a box around the instance information. **Show Production-type environments** Shows production-type environments. **Show Sandbox-type environments** Shows sandbox-type environments. **Show Instance Label** Shows the name of each instance. **Show table header** Shows the table header. **Advanced Filter** Shows only APIs that meet the Salesforce Object Query Language (SOQL) condition. Conditions can use the fields `Name`, `Environment`, and `URL`, for example, `Name LIKE 'v1%'`. ## Learn More Button The Learn More Button component provides portal users with a custom page with additional information about the API. You can specify values for the following parameters of the Learn More Button: **API** Specifies the API to display. **Button Label** Specifies the button label. Default is `Learn more about this API`. **Button Align** Specifies button alignment as left, right, or center of the UI field. **API Name** Adds the API name to the button label. Values are **Append**, **Prepend**, or **None**. Default is **None**. **API Version** Adds the API version to the button label. Values are **Append**, **Prepend**, or **None**. Default is **None**. ## Login Form The Login Form component enables community members to log in to the portal. You can specify values for the following parameters of the Login Form: **Start URL** Specifies the URL that members see after they log in. The default value is the portal home page. **Username Label** Specifies the username field label. Default is `Email`. **Password Label** Specifies the password field label. Default is `Password`. **Login Button Label** Specifies the login button label. Default is `Log in`. **Forgot Password Label** Specifies the forgotten password link label. Default is `Forgot your password?`. **Forgot Password URL** Specifies the forgotten password link URL. Default is `/ForgotPassword`. **Self Register Label** Specifies the self-registration link label. Default is `Not a member?`. **Self Register URL** Specifies the self-registration link URL. Default is `/SelfRegister`. ## Login Requester The Login Requester component notifies guest users that they must log in to access feedback and discussions activity in an API’s user forums. ## Self Register The Self Register component enables users to register for portal accounts. You can specify values for the following parameters of the Self Register component: **Start URL** Specifies the start URL. Default is the portal home page. **Confirm URL** Specifies the confirmation URL. Default is `/CheckPasswordResetEmail`. **First Name Label** Specifies the first name field label. Default is `First Name`. **Last Name Label** Specifies the last name field label. Default is `Last Name`. **Email Label** Specifies the email address field label. Default is `Email`. **Password Label** Specifies the password field label. Default is `Create Password`. **Confirm Password Label** Specifies the password confirmation field label. Default is `Confirm Password`. **Submit Button Label** Specifies the submit button label. Default is `Sign Up`. **Include Password Field** Shows the password field. **Extra Field Set** Specifies extra fields. **Registrations Require Approval** Select whether registration requires approval. **Approver ID** Specifies the approver ID. ## Spec Downloader The Spec Downloader component enables users to download an API specification. The API specification downloaded from API Community Manager is the same as the specification downloaded from Anypoint Exchange. The available buttons are **Download Spec as RAML** and **Download Spec as OAS**. Upload specifications as RAML, OAS 2.0, or OAS 3.0. Uploading a RAML version automatically generates an OAS 2.0 version. Uploading an OAS 2.0 or OAS 3.0 version automatically generates a RAML version. Due to small differences in the RAML and OAS formats, the automatically generated version might be slightly inconsistent with the uploaded version. You can specify values for the following parameters of the Spec Downloader component: **Record Id** Specifies the API. Default is `{!recordId}`, which downloads the specification of the API selected on the current page. **Layout** Specifies the layout of the buttons, **Horizontal** (default) or **Vertical**. **Buttons Color Picker** Specifies the color of the buttons. **Download Spec Options** Specifies the download buttons to show: **Original Format**, **All** (default), **OAS3**, or **RAML**. **Show Export Message** Shows an icon next to the export button with a tooltip warning about possible inconsistencies when exporting an API specification to a different version. ## User Settings The User Settings component enables users to configure notification settings and control what emails they receive. ## User Subscriptions The User Subscriptions component shows users their API subscriptions and the option to unsubscribe from each API. ## Filter Conditions The API Carousel component and the API Catalog component use the parameter **Filter Condition (Advanced)** to show only the APIs that meet the _condition_ (a standard search in Salesforce Object Query Language (SOQL)). Conditions can use these fields: - `Icon` - `Name` - `NavigateUrl` - `VersionGroup` These examples demonstrate filter conditions: - `Name = 'My API'`: The API name is exactly equal to `My API`. - `Name LIKE '%My API%'`: The API name contains the text `My API`. - `(NOT Name LIKE '%BETA%')`: The API name does not contain the text `BETA`. - `(Name = 'API Alpha' OR Name = 'API Bravo')`: The API name is `API Alpha` or `API Bravo`. - `(Name = 'My API' AND VersionGroup = 'v1')`: The API name is `My API` and the API version group is `v1`. - `(Name LIKE 'Product%' OR Name LIKE 'Shipping%' OR Name LIKE 'Order%')`: The API name begins with `Product`, `Shipping`, or `Order`. - `Icon != ''`: The API has an icon. - `NavigateUrl != ''`: The API has a Learn More button that links to a custom page with more information. - `VersionGroup = 'v2'`: The API version group is exactly equal to `v2`. - `VersionGroup > 'v1'`: The API version group is later than `v1`. - `VersionGroup < 'v1'`: The API version group is earlier than `v1`. - `VersionGroup >= 'v2'`: The API version group is later than or equal to `v2`. - `VersionGroup <= 'v2'`: The API version group is earlier than or equal to `v2`. Queries using `OR` or `AND` must enclose the whole condition in parentheses. API Community Manager compares version groups using normal string comparison. You can learn more about SOQL from the Salesforce SOQL and SOSL Reference. ## Categories Filter The API Carousel component and the API Catalog component use the parameter **Categories Filter (Advanced)** to show only the APIs that have categories in Anypoint Exchange with the specified values. Write categories and values as semicolon-separated pairs such as `Country=Argentina;Payment=Credit`. Use commas to separate multiple values for the same category such as `Country=Argentina,Spain;Payment=Credit`. The API Carousel or API Catalog will show only APIs that match all of the category-value pairs in the categories filter and all of the filter conditions. --- product: API Community Manager --- # Diagnostics > For the full documentation index, see: https://docs.mulesoft.com/llms.txt From the Anypoint API Community Manager control panel, open the Salesforce App Launcher and search for **API Community Manager Diagnostics**. ## Status Tab The status tab shows the status of your Salesforce organization and your communities. The **Organization** section shows this information about your Salesforce organization: 1. **Package version** shows the version of your currently installed API Community Manager package. 2. **Connectivity with Anypoint** shows the URL your API community uses to access Anypoint. 3. **Cache**: 1. **Org cache enabled** shows if the organization cache is enabled and links to the platform cache metadata. 2. **Org cache allocated** shows the size of the organization cache allocated and links to the platform cache configuration. 3. **Session cache enabled** shows if the session cache is enabled and links to the platform cache metadata. 4. **Session cache allocated** shows the size of the session cache allocated and links to the platform cache configuration. The **ACM Communities** section shows each of your API Community Manager communities. Here you can choose to show all diagnostics (default) or only diagnostics to review, collapse all communities in the list, or create a new community. Each API Community Manager community has options to open the community and to open the community builder, and shows three diagnostics: 1. **Community status** shows if the community is active. 2. **Public** shows if the community is public, and links to the builder where you can make the community public. 3. **Published assets status** shows if any assets in API Community Manager incorrectly point to Exchange assets that no longer exist. If your list of communities is empty, [Create a Community](https://docs.mulesoft.com/api-community-manager/create-community). ## User Access Tab The user access tab shows the status of your guest user and member user configurations, including their permissions. The guest user and member user categories list their configuration items. Items that are not yet configured correctly have an error and a **Fix** button, and their category has a **Fix All** button. Correctly configured items and categories have no button and a green circle with a white check mark. These configuration options work only for the default API Community Manager configuration. If you have a different configuration that uses public groups and rules, do not click the **Fix** button, do not click the **Fix All** button, and do not use this diagnostic tool for the member user profile. **Guest User** items: - **Classes and Object permission** - **Sharing rules** **Member User** items: - **Community profile** - **Profile permission** - **Sharing set** - **Account created** - **Account assigned** - **Account owner role** - **Account visibility** If a community is created but not published, when diagnostics **Fix All** is run for the member user, the **Default Page** for the **Login and Registration** pages displays instead of the **Experience Builder Page**. After the items from **Community profile** through **Account created** are configured, fix the diagnostics for the **Account assigned**: 1. In the diagnostics page, next to the **Member User** item **Account assigned**, click **Assign**. 2. From **Administration Community** > **Accounts**, click the search icon, enter the name of the community, and click **GO!**. 3. From the search results, select the community name from the list of account names, which are displayed in the format MyCommunityName Account. 4. The **Login and Registration** page shows the community account in the **Accounts** field. 5. From the top right of the community page, click the refresh icon. The **Experience Builder Page** is set for **Login Page Type** and **Registration Page Type** fields. 6. Fix the remaining items in the **Member User** list. --- product: API Community Manager --- # Duplicated External Objects > For the full documentation index, see: https://docs.mulesoft.com/llms.txt 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. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Empty Login Page > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you cannot see the fields in the login component, [run the diagnostics tool](https://docs.mulesoft.com/api-community-manager/diagnostics) for the guest user in that Salesforce digital experience site. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Error When Creating a New Community from a Template > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If creating a new community from a template shows the error `An unexpected error occurred,Try again or contact your Salesforce administrator for help`, compile all Apex classes: open **Setup** > **Custom Code** > **Apex Classes** and click **Compile all classes**. In a few minutes, the page displays the message `Compilation Complete: Compilation Successful`. Find more information about compiling Apex classes in the Salesforce help article [Manage Apex Classes](https://help.salesforce.com/s/articleView?language=en_US&id=sf.code_manage_packages.htm&type=5). ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Guest Users Not Seeing Published API Versions > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If guest users do not see published API versions that have been set to be visible for everyone: 1. Open Salesforce setup. 2. Open the sharing rules. 3. Ensure that the sharing rule for the object `CommunityApi` matches your community name exactly, including spacing and letter case. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Guided Setup > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Use the guided setup to setup API Community Manager. If you have multiple identity providers in your organization, follow the instructions in [Manual Setup](https://docs.mulesoft.com/api-community-manager/manual-setup). ## Prerequisites To set up API Community Manager with guided setup, complete the [prerequisite steps](https://docs.mulesoft.com/api-community-manager/installation-prerequisites) and then follow these steps. ## Open Guided Setup From the Anypoint API Community Manager control panel, open the Salesforce App Launcher and search for **API Community Manager Guided Setup**. ## Connect with Your Anypoint Organization To connect your API Community Manager instance to your Anypoint organization: 1. Select your organization’s Anypoint management plane, which may be the US control plane, the EU control plane, the MuleSoft Government Cloud control plane, or another control plane. 2. If your Anypoint Platform user has organization administrator credentials: 1. If your user has multi-factor authentication enabled, open **Access Management** > **Users** > your user’s page > **Settings** and enable **Exempt from MFA requirement**. 2. Select **I have organization administrator credentials** and enter your Anypoint Platform username and password. The system creates a certificate named `Anypoint` in Salesforce, creates a connected app in Anypoint Platform using the certificate, creates a named credential in Salesforce using the client ID from the Anypoint Platform connected app and the identity provider information, configures the external data source, and grants Exchange contributor permissions to the impersonated user from the Salesforce administrator. 3. If your Anypoint Platform user account does not have organization administrator credentials: 1. Ask your organization administrator to use the following steps to create a connected app and give you the **Client ID** and **IDP ID**. 2. Select **I don’t have organization administrator credentials** and enter the **Client ID** and **IDP ID** from your organization administrator. ## Create a Connected App To create a connected app if you are an organization administrator: 1. In Salesforce, create a key pair for communication between Salesforce and Anypoint Platform: 1. Click **Setup** > **Security** > **Certificate and Key Management** > **Create Self-Signed Certificate**. 2. Set **Label/Name** to `Anypoint`. 3. Disable **Exportable Private Key**. 4. Set **Key Size** to 2048 or larger. 5. Click **Save**. 6. Click **Download Certificate** to save the public key from the key pair to your local machine. 2. Click **Access Management** > **Connected Apps** > **Create App**. 3. Enter a name for the app. 4. Enable **App acts on behalf of a user**. 5. In the section **Grant types**, enable **JWT Bearer**. 6. Copy the public key from the downloaded file and paste it into the public key text area. 7. Verify that the public key certificate has this format: \-----BEGIN CERTIFICATE----- PUBLIC KEY -----END CERTIFICATE----- 8. Set **Website URL** to `https://login.salesforce.com`. 9. In the section **Redirect URIs**, add `http://localhost`. Each connected app requires one or more redirect URIs, but this configuration does not use them. 10. In the section **Who can use this application?**, select **Members of this organization only**. 11. In the section **Scopes**, add **Background Access** and **Full Access**. 12. Click **Save**. 13. Copy the client ID. Do not copy the client secret, because this configuration uses the certificate instead. 14. To find the identity provider ID, run this request: curl --location --request GET 'https://anypoint.mulesoft.com/accounts/api/organizations//identityProviders' \\ --header 'Authorization: Bearer ' Replace `` with your organization ID and replace `` with your token. In the response, find the line with the `provider_id`: "provider\_id": "01234567-89ab-cdef-0123-456789abcdef", 15. Copy this identity provider ID to use as the **IDP ID**. ## Configure Users Give your user the Exchange contributor permission: 1. In your Anypoint Platform organization, click **Access Management** > **Users**. 2. Select your user. 3. Click **Permissions** > **Add permissions**. 4. Ensure that your user has the permission **Exchange Contributor** in each business group. Give community users the Exchange viewer permission: 1. Ensure that you have Exchange Administrator permissions. 2. In your Anypoint Platform organization, navigate to **Access Management** and click **Teams**. 3. Create a new team named **Community Users**. 4. Click **Settings**. 5. Set the parent team to everyone in the organization. 6. In **External IdP Groups**, set **Group Name** to **Community User** and set **Type** to **Member**. 7. Click **Permissions** > **Add permissions** and add the permission **Exchange Viewer**. When prompted, select all business groups with any assets that you want community users to be able to view. ## Set Profile Permissions After the connection with your Anypoint organization is established, click **Continue** to open the API Community Manager diagnostics tool, review your installation, and update the guest user and member user permissions. After the installation and permissions are verified, create your first community. ## See Also - [Diagnostics](https://docs.mulesoft.com/api-community-manager/diagnostics) - [Create a Community](https://docs.mulesoft.com/api-community-manager/create-community) - [Map SSO Users to Teams](https://docs.mulesoft.com/access-management/map-users-roles-teams#map-sso-users-to-teams) --- product: API Community Manager --- # Important Notifications > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Use these sources to stay informed about new releases and downtime for Anypoint API Community Manager. ## Release Announcements Upgrades are applied automatically to Anypoint API Community Manager versions 2.0 and later. Details about new releases are announced in the API Community Manager release notes. For further information, contact your MuleSoft customer success representative. ## Downtime MuleSoft and Salesforce report and monitor platform downtime at [https://status.salesforce.com/products/Mulesoft](https://status.salesforce.com/products/Mulesoft) and [https://trust.salesforce.com/](https://trust.salesforce.com/). ## See Also - [Upgrades](https://docs.mulesoft.com/api-community-manager/update-acm) --- product: API Community Manager --- # Incorrect or Missing Data for One API Version > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If a single API version has documentation or console components with incorrect or missing data: 1. Open the API Community Manager control panel. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 2. Edit the API version. 3. Click **View asset in Exchange**. 4. Ensure that the API version in API Community Manager points to the correct API version in Exchange. 5. Ensure that the API version in Exchange is published and not in draft mode. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Install and Configure > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint API Community Manager is composed of a Salesforce organization with Experience Cloud and a managed package that is installed in this organization. The managed package contains the components and data objects that interact with your Anypoint Platform organization. The usage of data objects in the managed package may change or deprecate without notice. An instance of API Community Manager connects to only one Anypoint Platform organization. The Anypoint user can connect to one or more instances of API Community Manager, possibly including sandbox instances and instances in other Salesforce organizations. The API Community Manager package is installed in a Salesforce organization that is independent of any other Salesforce organizations that your company might already have, so that the API community data is isolated from your company operational data, such as ERP or CRM data. The Salesforce organization with Experience Cloud is provisioned through and included in the Anypoint API Community Manager license from MuleSoft. You don’t need to procure this Salesforce organization separately, and you cannot reuse existing Salesforce licenses for API Community Manager. Find more information about API Community Manager licenses in the [Licensing Overview](https://docs.mulesoft.com/api-community-manager/licensing-overview) section. > [!NOTE] Installing, updating, or configuring API Community Manager must be done by a user account > with the **System Administrator** profile in the API Community Manager Salesforce organization. > [!NOTE] If your Anypoint Platform organization is > [hosted in the EU region](https://docs.mulesoft.com/eu-control-plane/platform-access-eu) you must > replace all occurrences of the `anypoint.mulesoft.com` domain with `eu1.anypoint.mulesoft.com` in > all the steps in this section. The following sections guide you through installing and configuring API Community Manager: - [Installation Prerequisites](https://docs.mulesoft.com/api-community-manager/installation-prerequisites) - [Install API Community Manager Package](https://docs.mulesoft.com/api-community-manager/install-acm) - [Guided Setup](https://docs.mulesoft.com/api-community-manager/guided-setup) - [Manual Setup](https://docs.mulesoft.com/api-community-manager/manual-setup) - [Configure the Platform Cache](https://docs.mulesoft.com/api-community-manager/cache) - [Create a Community](https://docs.mulesoft.com/api-community-manager/create-community) - [Verify the Installation](https://docs.mulesoft.com/api-community-manager/install-validate) - [Optionally Configure Search in CMS Content](https://docs.mulesoft.com/api-community-manager/search-cms) - [Optionally Configure Branded Emails](https://docs.mulesoft.com/api-community-manager/branded-emails) - [MuleSoft Government Cloud Data Control](https://docs.mulesoft.com/api-community-manager/govcloud-data-control) --- product: API Community Manager --- # Install API Community Manager Package > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Support for Mulesoft Government Cloud is only available in API Community Manager version > 2.4.x and earlier. To perform a new install of the API Community Manager package in your API Community Manager Salesforce Organization, perform the following steps. To upgrade an existing API Community Manager installation, refer to [Upgrade API Community Manager](https://docs.mulesoft.com/api-community-manager/update-acm). 1. Complete the [prerequisite steps](https://docs.mulesoft.com/api-community-manager/installation-prerequisites). 2. In your browser, navigate to the package installation link provided in the [API Community Manager Release Notes](https://docs.mulesoft.com/release-notes/api-community-manager/api-community-manager-release-notes). 3. Select **Install for Admin users only**. 4. Select **I acknowledge that I’m installing a Non-Salesforce Application that is not authorized for distribution as part of Salesforce’s AppExchange Partner Program**. 5. Select **Install**. 6. On the **Approve Third-Party Access** page, select the **Yes, grant access to these third-party web sites** check box. 7. Select **Continue**. 8. When installation completes, select **Done**. 9. Start the [guided setup](https://docs.mulesoft.com/api-community-manager/guided-setup). > [!NOTE] If you see a message indicating that the installation process is taking a long time to > install, you will receive an email when the installation completes. You can verify that API Community Manager installation is successful by reviewing the **Installed Packages** information in **Setup**. --- product: API Community Manager --- # Installation Prerequisites > For the full documentation index, see: https://docs.mulesoft.com/llms.txt To install Anypoint API Community Manager, you must follow these prerequisite steps. ## Enable Digital Experiences Follow the steps in [Enable Digital Experiences](https://help.salesforce.com/s/articleView?id=sf.networks_enable.htm&type=5) to enable digital experiences inside your Salesforce organization. ## Set Salesforce Admin Role Installing, updating, or configuring Anypoint API Community Manager must be done by a user account with the **System Administrator** profile in the API Community Manager Salesforce organization. You must set permissions and a role for your Salesforce API Community Manager organization administrator user: 1. Log in to your Salesforce organization. 2. In **Setup**, use the **Quick Find** box to find and click **Users**. 3. Locate your username and click **Edit**. 4. Set the role for your account by selecting from the **Role** list. This can be any role from the list, but cannot be none. If you don’t see any roles in the list, refer to the Salesforce knowledge article [Add roles to the role hierarchy](https://help.salesforce.com/s/articleView?id=000322715&language=en_US&mode=1&type=1) for instructions to create a role in your organization. If you create a role, enter a role name such as `Salesforce_ACM_org_admin_user`. 5. Enable the option **Salesforce CRM Content User**. 6. Click **Save**. ## Add the Monitoring Viewer Permission Add the Monitoring Viewer permission to view metrics for applications on the **My Applications** details page: 1. Log in to Anypoint Platform and go to **Access Management**. 2. Select **Teams** and select **Community Users**. If you don’t see this team, refer to the Exchange Viewer permission steps in [Configure Users](https://docs.mulesoft.com/api-community-manager/guided-setup#configure-users) for instructions to create it. 3. Select the **Permissions** tab and click **Add permissions**. 4. Select **Anypoint Monitoring** > **Monitoring Viewer** and click **Next**. 5. Select all business groups that apply and click **Next**. 6. Click **Add Permissions**. ## Verify API Community Manager Entitlement Verify API Community Manager entitlement for your Anypoint organization: 1. Log in to your Anypoint Platform organization. 2. Choose the correct URL for your cloud and open the URL in your browser: - US cloud: `https://anypoint.mulesoft.com/accounts/api/profile` - EU cloud: `https://eu1.anypoint.mulesoft.com/accounts/api/profile` - MuleSoft Government Cloud: `https://gov.anypoint.mulesoft.com/accounts/api/profile` 3. Verify that under the **Entitlements** property, the `apiCommunityManager` value is `true`. ## Prepare Identity Provider Data ### If You Already Have an Anypoint Platform Identity Provider If you already have an Anypoint Platform identity provider, get identity provider data from your current configuration: 1. If you are using SAML: 1. Click **Access Management** > **Identity Providers**. 2. On **SAML 2.0** click **Edit**. 3. Copy the issuer and the audience so you can use them in the installation. 2. If you are using OpenID Connect: 1. Copy the organization ID so you can use it in the installation. ### If You Do Not Already Have an Anypoint Platform Identity Provider If you do not already have an Anypoint Platform identity provider (IdP), configure Salesforce as a SAML IdP. The following instructions use URLs for the US cloud that begin with `https://anypoint.mulesoft.com/`. If you are using the EU cloud, substitute `https://eu1.anypoint.mulesoft.com/`. If you are using MuleSoft Government Cloud, substitute `https://gov.anypoint.mulesoft.com/`. 1. In **Setup**, search for **App Manager** using the **Quick Find** box and click **App Manager**. 2. Click **New Connected App** in the top right. 3. Provide this information in the **Basic Information** section. 1. **Connected App Name**: `Anypoint`. 2. **Contact Email**: Enter your email address. 4. Provide this information in the **Web App Settings** section. 1. Provide the **Start URL**: `https://anypoint.mulesoft.com/accounts/login/` or the location where you want users to be sent in Anypoint Platform. You can find your Anypoint organization domain name by clicking **Access Management** > **Organization** and then selecting the root organization. 2. Select **Enable SAML**. 3. Provide any string as **Entity Id**. This is also the **Audience** configuration in Anypoint Platform. 4. Provide `https://anypoint.mulesoft.com/accounts/login/receive-id` in the **ACS URL**. SAML assertions are sent to this ACS URL. 5. Select **Enable Single Logout**. 6. Provide **Single Logout URL**: `https://anypoint.mulesoft.com/accounts/logout/receive-id`. 7. Set **Single Logout Binding** to **HTTP Post**. 8. Set **Subject Type** to **Username**. 9. Set **Name ID** Format to **unspecified nameID format**. 10. Set **Issuer** to **salesforce\_org\_domainname** (such as `https://[YourOrgDomain].my.salesforce.com`). 11. Set **IdP Certificate** to **Default IdP Certificate**. 12. Click **Save**. Configure external identity in your Anypoint organization: 1. In the Salesforce organization, click **Setup**, use the **Quick Find** box to search for **Identity Provider**, and click **Identity Provider**. 2. Click **Enable Identity Provider**. 3. Save. 4. Use the **Quick Find** box to search for **App Manager**, choose the app named **Anypoint**, and in the last column of the table, click the arrow and click **Manage**. 5. Make a note of the URIs under the **SAML Login Information** to use them in the Anypoint configuration in these steps. 6. Click **Download metadata** and retrieve the public key in the `` tag inside the XML file. 7. Log in to your Anypoint organization. 8. Navigate to **Access Management** > **Identity Providers** > **SAML 2.0**. 9. Set **Sign On URL** to **IdP-Initiated Login URL**. 10. If you do not want external users to be able to log in directly to the Anypoint organization, set **Sign On URL** to a value of a nonfunctioning URL, for example, `http://www.example.com/login`. 11. Set **Sign Off URL** to **Single Logout Endpoint**. 12. Set **Issuer** to **salesforce\_org\_domainname** (such as `https://[YourOrgDomain].my.salesforce.com`). 13. Set the **Public Key** to the public key extracted from the `` tag in the metadata XML you downloaded. 14. Set **Audience** to match the **Entity Id** you set in the Salesforce account. 15. Click **Save**. ## Next Steps After these prerequisite steps, continue to the [installation steps](https://docs.mulesoft.com/api-community-manager/install-acm). --- product: API Community Manager --- # Issues with Branded Emails > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. Anypoint API Community Manager sends notification emails when an API contract is approved or revoked. By default, these emails use Anypoint platform addresses and branding. The following information includes symptoms and instructions for troubleshooting branded emails. ## Data Capture Process Fails When the change data capture is enabled, Salesforce starts polling the ACM Community Bridge for contract updates. If the data capture process job fails, Salesforce stops polling. Check the status of the data capture process to confirm that the change data capture failed. To check the status, execute the following SOQL in the Developer Console: SELECT Id, Name, SubmittedAt, StartedAt, FinishedAt, ProcessAfter, Status, Error FROM BackgroundOperation WHERE Name = 'acm\_pkg\_\_AnypointContracts\_\_x' ORDER by SubmittedAt DESC LIMIT 15 To resolve this error, the administrator should resume the data capture process. ## Not Receiving Emails API Community Manager sends notification emails when an API contract is approved or revoked. A common issue occurs when the user who set up the change data capture is not an organization administrator. The user must be an organizational administrator of the master organization to view all available applications and contracts in the organization. It is possible to receive no errors using SOQL since the job step could end successfully, but contract updates are not returned. The first step of the change data capture job is to retrieve all available contracts with updates. The trigger that is set as part of the branded emails configuration runs if there are contract updates. If the trigger is not executed by the same user as the change data capture, Salesforce uses a user named Automated Process. This user is created in Anypoint Platform the first time that the user tries to use the ACM Community Bridge. As result, no email notifications are received. To resolve this issue, follow these steps: 1. To determine if the Apex trigger is running, use the following code to add a log in the Apex trigger from the Developer Console: trigger AnypointEmailNotificationsTrigger on acm\_pkg\_\_AnypointContracts\_\_ChangeEvent (after insert) { System.debug('AnypointEmailNotificationsTrigger is running :)'); List events = Trigger.new; acm\_pkg\_\_.AnypointEmailNotifications.notifyOnContractUpdates(events); } 2. In Anypoint, add the organization administrator role to the user that was used to set up the change data capture. 3. Create a test application and request API access to any available API instance in Exchange. 4. From **Access Management**, search for the **Automated Process** user and assign the **organization administrator** role in the **master organization**. 5. From **API Manager**, revoke the test contract previously created to generate changes in the change data capture process. 6. Wait for the next change data capture to occur. See the [Optionally Configure Branded Emails](https://docs.mulesoft.com/api-community-manager/branded-emails) topic for complete instructions to set up branded emails. ## Change Data Capture Process Displays Errors An unexpected error occurs when getting contracts in the ACM Community Bridge. For example, an internal Anypoint service is unavailable due to an outage. Problem querying for changes. An error occurred while connecting to the external system. Please try again, or contact your administrator. To resolve this error: 1. Restart the change data capture process by removing the `` AnypointContracts` `` entity from **Setup > Integrations > Change Data Capture**. 2. Click **Save**. 3. Add the `AnypointContracts` entity from **Setup > Integrations > Change Data Capture** again. 4. Click **Save**. ## Timeout Error is Too Long or OData Query Result is Too Large If you receive any of the following errors, your organization might have too many client applications or contracts. Having more than 2000 applications and contracts causes a timeout. The timeout occurs because the amount of time that the ACM Community Bridge takes to get this information is greater than the Salesforce timeout of less than two minutes. Error is too long Problem querying for changes. The OData query result was too large, so the external data didn't load. If the error persists, contact Salesforce Customer Support. Problem querying for changes. The remote operation timed out. Try again later. If the error persists, contact Salesforce Customer Support. To resolve these errors: 1. Use the following curl command with a token from an organization administrator of the master organization to check the number of applications that your organization contains. curl --location --request GET "https://anypoint.mulesoft.com/apiplatform/repository/v2/organizations/${MASTER\_ORGANIZATION\_ID}/applications?targetAdminSite=true" --header "Authorization: bearer ${TOKEN}" 2. Replace `MASTER_ORGANIZATION_ID` with your organization ID. 3. If there are more than 2000 applications, delete any unnecessary applications. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Licensing Overview > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint API Community Manager licenses are procured and provisioned by MuleSoft. A standard API Community Manager license consists of a _Salesforce Customer Community Plus Login License Unlimited Edition_. It is based on the number of member logins per month, and includes as a base: - Up to 100 communities - Five (5) admin users (community administrators or operators) - Connectivity to one (1) Anypoint Platform top-level organization - Up to 10,000 member accounts across all communities - Salesforce Standard Objects, Features, Capability, and Custom Objects in Customer Community Plus - One (1) megabyte storage per user for all communities - 10 megabyte storage for organization and session caches - One (1) million page views per month across all communities - 40 gigabit network bandwidth in production environments for all communities and 1 gigabit network bandwidth for all sandbox environments - 100 Developer sandboxes, 5 Developer Pro sandboxes, 1 Partial Copy sandbox, and 1 Full Copy sandbox - 10 Custom Objects - 10 API calls per day to the Salesforce Digital Experience site Community login-based license is calculated by the number of **daily unique logins**: login actions that different members perform daily in your communities during a month. Members associated with your license consume one login each day they log into any of your communities. Logging in multiple times during the same day only consumes one login. Once logged in, switching between communities doesn’t consume extra logins. Forecasting the adequate number of daily unique logins is critical to ensure that you have enough licenses to satisfy the demand your community will generate. Your MuleSoft account team will assist you in this analysis as part of the capacity planning and community design process before you roll out your community. You can find more information about **Salesforce Customer Community Plus Login License Unlimited Edition** in the Salesforce Experience Cloud documentation page [Communities User Licenses](https://help.salesforce.com/s/articleView?language=en_US&id=users_license_types_communities.htm&type=5). Additional capacity can be provisioned to your organization if required. For more information, contact your MuleSoft representative. --- product: API Community Manager --- # Manage Client Applications and Contracts > For the full documentation index, see: https://docs.mulesoft.com/llms.txt You can enable your consumer developers to request access to APIs and API Groups in your community and to manage their client applications and contracts. ## API Access Use the [API Access Requester](https://docs.mulesoft.com/api-community-manager/acm-lightning-components#api-access-requester) Lightning component on an API details page to enable consumer developers to request a contract with the corresponding API or API Group. The component allows a developer to select: - An instance of the API or API Group, from the available instances in Anypoint API Manager that have public visibility in Anypoint Exchange - A service-level agreement (SLA) tier, if the selected API or API Group instance has SLA tiers defined in API Manager - A client application, either existing or new To display an API or API group instance in your site, either [set its visibility to public in Exchange](https://docs.mulesoft.com/exchange/to-configure-api-settings), or open the API Community Manager control panel, and in the API curator, set the API or API group’s instances visibility to **All instances**. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). When a consumer developer creates a new application, they can provide an additional description. If the API or API Group uses OAuth 2.0 authentication, the consumer developer can provide an OAuth 2.0 redirect URI. When a consumer developer requests access for a new client application to an API instance that has an identity provider (IDP), the consumer developer must specify one or more of the OAuth 2.0 grant types Authorization Code Grant, Implicit Grant, Refresh Token, and Resource Owner Grant. Some IDPs do not support all grant types. Requesting access and specifying an unsupported grant type shows the error `Error creating application.` If the Anypoint organization is configured to use external identity for client applications, then new client applications are created in the corresponding identity provider [according to the environment of the selected API or API Group instance](https://docs.mulesoft.com/api-manager/latest/configure-multiple-credential-providers). When a consumer developer selects an existing client application for a contract, only client applications with the same identity provider as the selected API or API Group instance are available to select. When a consumer developer selects an existing client application, the consumer developer sees all the client applications that their user account has permissions to see in the Anypoint Platform. This includes the client applications created by this user, and also any other client applications that are visible to this user through roles, permissions, or client application ownership assignment in API Manager. Client applications and contracts requested through Anypoint API Community Manager are created in API Manager. Depending on the SLA tier configuration, they are approved automatically or they require approval by the owner of the API or API Group. To review and approve contracts, refer to [the API Manager documentation](https://docs.mulesoft.com/api-manager/latest/manage-client-apps-latest-task). You can define a custom process or workflow to create client applications and contracts with the Salesforce Approval Process, Salesforce Lightning Flow, or custom Lightning components and Apex code. These approaches use the API Community Manager external objects to interact with the Anypoint Platform through the data bridge, so the same principles and operation apply. ## Managing Client Apps and Contracts If a consumer developer has access to a client application or contract in your API Community, then the **Application Listing**, **Application Details** and **Application Analytics Graph** Lightning components display detailed information to them about the client application or contract. The [Application Listing](https://docs.mulesoft.com/api-community-manager/acm-lightning-components#application-listing) component shows a consumer developer a list of all the applications that their user account in the Anypoint Platform can access. The list includes the client applications created by this user through your community, and also any other client application that this user can access, including client applications where this user has been assigned as owner in API Manager, and other client applications visible through user roles and permissions. Each item in the application listing component has a **Delete** option, and a **View** option which shows an application details page for the application. The application details page uses the [Application Details](https://docs.mulesoft.com/api-community-manager/acm-lightning-components#application-details) component to show the application’s credentials, an option to reset the credentials, the application’s contracts, and an option to change the SLA tier of each contract. The application details page can include the [Application Analytics Graph](https://docs.mulesoft.com/api-community-manager/acm-lightning-components#application-analytics-graph) component, which shows an activity chart with an individual client application’s throughput and response time metrics. --- product: API Community Manager --- # Manage Members > For the full documentation index, see: https://docs.mulesoft.com/llms.txt 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. > [!NOTE] Registered members require a license. No license is required for guest users. For full > information about licenses, refer to the [Licensing Overview](https://docs.mulesoft.com/api-community-manager/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**. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 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". --- product: API Community Manager --- # Manual Setup > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you have multiple identity providers in your organization, follow the manual setup instructions. ## Prerequisites To set up the latest version of Anypoint API Community Manager, complete the [prerequisite steps](https://docs.mulesoft.com/api-community-manager/installation-prerequisites) and then use the [guided setup](https://docs.mulesoft.com/api-community-manager/guided-setup). To set up previous versions manually, complete the [prerequisite steps](https://docs.mulesoft.com/api-community-manager/installation-prerequisites) and then perform the following steps. ## Enable API Community Manager Control Panel The API Community Manager control panel is the interface your community administrators and operators use to operate your communities. It is available in the **App Launcher** page, where it is the first icon displayed in the main navigation bar. To ensure that the control panel is available for admin users: 1. In **Setup**, search for **App Manager** using the **Quick Find** box and click **App Manager**. 2. Locate **API Community Manager** and, in the menu on the right end of the row, click **Edit**. 3. In the left panel, click **Navigation Items**. Under **Available Items**, move these items to the **Selected Items** box: \* **API Curator** \* **Member Management** \* **Diagnostics** \* **Guided Setup** 4. Click **Save** and then click **Back**. 5. Log out and log back in to your Salesforce organization. 6. Verify that the API Community Manager control panel displays correctly by navigating to **App Launcher** > **API Community Manager**. The app shows the **API Curator**, **Member Management**, **Diagnostics**, and **Guided Setup** tabs. If you see a message that you have not created a community, then the steps in this task were performed correctly. ## Set Up the Data Bridge The data bridge is the secure connection from Anypoint API Community Manager to your Anypoint Platform organization. API Community Manager components and data objects use Anypoint Platform as their external data source. ### Create a Key Pair This key pair will be created in Salesforce and used for communication between Salesforce and Anypoint. 1. Click **Setup** > **Security** > **Certificate and Key Management** > **Create Self-Signed Certificate**. 2. Set **Label/Name** to `Anypoint`. 3. Disable **Exportable Private Key**. 4. Set **Key Size** to 2048 or larger. 5. Click **Save**. 6. Click **Download Certificate**. The public key is saved on your local machine, and you will use it in the following steps. ### Create Connected App in Anypoint 1. Click **Access Management** > **Connected Apps** > **Create App**. 2. Choose a name. 3. Enable **App acts on behalf of a user**. 4. In the section **Grant types** enable **JWT Bearer**. 5. Copy the public key from the file downloaded in the previous steps and paste it into the public key text area. The certificate must have the correct format, such as this: \-----BEGIN CERTIFICATE----- PUBLIC KEY -----END CERTIFICATE----- 6. Set **Website URL** to `https://login.salesforce.com`. 7. In the section **Redirect URIs** add `http://localhost`. Connected apps require redirect URIs but this configuration does not use them. 8. In the section **Who can use this application?** select **Members of this organization only**. 9. In the section **Scopes** add **Background Access** and **Full Access**. 10. Click **Save**. You receive a client ID and a client secret. This configuration uses the certificate and does not use the client secret. Save the client ID so you can use it in the following steps. ### Identity Provider Data The following steps require the identity provider data you prepared in the [Installation Prerequisites](https://docs.mulesoft.com/api-community-manager/installation-prerequisites). ### Create Named Credential The following instructions use URLs for the US cloud that begin with `https://anypoint.mulesoft.com/`. If you are using the EU cloud, substitute `https://eu1.anypoint.mulesoft.com/`. If you are using MuleSoft Government Cloud, substitute `https://gov.anypoint.mulesoft.com/`. 1. Click **Setup** > **Security** > **Named Credentials**. 2. Create a named credential with the name `Anypoint`. 3. Set **URL** to `https://anypoint.mulesoft.com`. 4. Go to the **Authentication** section. 5. Set **Identity Type** to **Per User**. 6. Set **Authentication Protocol** to **JWT Token Exchange**. 7. Set **Token Endpoint Url** to `https://anypoint.mulesoft.com/accounts/api/v2/oauth2/token`. 8. Set **Issuer** to the client ID of the connected app you saved previously. 9. Set **Per User Subject** to one of the following formulas. The guided setup uses a slightly different formula in the `IDP_ID` field, but either formula works. - If you are using an identity provider with SAML: 1. To find the identity provider ID, run this request: `curl --location --request GET 'https://anypoint.mulesoft.com/accounts/api/organizations//identityProviders' \ --header 'Authorization: Bearer '` 2. Replace `` with your organization ID and replace `` with your token. In the response, find the line with the provider\_id: `"provider_id": "01234567-89ab-cdef-0123-456789abcdef",` 3. Replace `IDP_ID` with the identity provider ID. `"v2|IDP_ID|" & $User.Username & "|" & $User.FirstName & "|" & $User.LastName & "|" & $User.Email & "|[\"Community User\"]"` For example: `"v2|83685668-9e8a-49c2-9d9a-7a7c89391cce|" & $User.Username & "|" & $User.FirstName & "|" & $User.LastName & "|" & $User.Email & "|[\"Community User\"]"` - If you are using an identity provider with OpenID Connect, replace `ORGANIZATION_ID` with the organization ID from your Anypoint account. `"openid-ORGANIZATION_ID|" & $User.Username & "|" & $User.FirstName & "|" & $User.LastName & "|" & $User.Email & "|[\"Community User\"]"` 10. Set **Audiences** to `https://anypoint.mulesoft.com/accounts/api/v2/oauth2/token`. 11. Set **Token Valid for** to 60 minutes (the Anypoint default) or less. 12. Set **JWT Signing Certificate** to the key that you created previously as described in the section Create a Key Pair. 13. In the **Callout Options** section, enable **Generate Authorization Header**. ### Modify External Data Source 1. Click **Setup** > **Integrations** > **External Data Source** > **Exchange**. 2. Set **URL** to `callout:Anypoint/odatabridge/odata.svc/`. 3. Go to the **Authentication** section. 4. Set **Identity** to **Anonymous**. 5. Set **Authentication Protocol** to **No Authentication Protocol**. 6. Click **Save**. 7. Click **Setup** > **Integrations** > **External Data Source** > **Exchange**. 8. In the section **Custom HTTP Headers**, set **X-Auth-Proto** to the value `'JWT'`, including the single quotes. 9. Click **Save**. ## User Configuration Give your user the Exchange contributor permission: 1. In your Anypoint Platform organization, click **Access Management** > **Users**. 2. Select your user. 3. Click **Permissions** > **Add permissions**. 4. Ensure that your user has the permission **Exchange Contributor** in each business group. Give community users the Exchange viewer permission: 1. Ensure that you have Exchange Administrator permissions. 2. In your Anypoint Platform organization, navigate to **Access Management** and click **Teams**. 3. Create a new team named **Community Users**. 4. Click **Settings**. 5. Set the parent team to everyone in the organization. 6. In **External IdP Groups**, set **Group Name** to **Community User** and set **Type** to **Member**. 7. Click **Permissions** > **Add permissions** and add the permission **Exchange Viewer**. When prompted, select all business groups with any assets that you want community users to be able to view. 8. Manually add the permission **Exchange Viewer** to any users who were invited before you created the team. After each user logs in to the community, the user is visible in Anypoint Platform. --- product: API Community Manager --- # Metrics Not Showing for Applications > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If the metrics aren’t showing for client applications on the **My Applications** details page, you may not have the proper permissions to view the metrics. Ensure that you have the **Monitoring Viewer** permissions. 1. Log in to Anypoint Platform and go to **Access Management**. 2. Select **Teams** and select **Community Users**. 3. Select the **Permissions** tab, locate the business group, and click **Edit**. 4. If **Monitoring Viewer** is not in the list, click **Done**. 5. Click **Add permissions** and select **Anypoint Monitoring** > **Monitoring Viewer**. 6. Click **Next**. 7. Select all business groups that apply and click **Next**. 8. Click **Add Permissions**. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Missing Feature Error > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you receive a `Missing feature` error when you install Anypoint API Community Manager, ensure that digital experiences (previously known as _communities_) are enabled in your API Community Manager Salesforce organization. The error looks similar to the following issues: 1\. Lightning Community Themes(communityThemeDefinitions/acm\_template.communityThemeDefinition) Missing feature Installing this package requires the following feature and its associated permissions: Lightning Community Themes 2. Lightning Community Templates(communityTemplateDefinitions/NTO.communityTemplateDefinition) Missing feature Installing this package requires the following feature and its associated permissions: Lightning Community Templates 3. Navigation Link Sets(navigationMenus/acm\_template\_Nav0.navigationMenu) Missing feature Installing this package requires the following feature and its associated permissions: Navigation Link Sets To fix this error, follow the installation prerequisite steps in [Enable Digital Experience](https://help.salesforce.com/s/articleView?id=sf.networks_enable.htm&type=5). ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Missing Request Access ButtonConfiguration > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If a published API version is not showing the **Request access** button: 1. Ensure that the API version is managed in API Manager. 2. If it is not, click **Import from Exchange**. 3. Ensure that the API version has at least one endpoint defined. 4. Label the endpoint. 5. This label displays in your community. 6. Ensure that at least one of the API version’s endpoints is configured as public in Exchange. In the community builder, check the audience targeting settings of the [API Access Requester](https://docs.mulesoft.com/api-community-manager/acm-lightning-components#api-access-requester) Lightning component. To make the API Access Requester appear to all members, ensure that it is not assigned to any audience. To make it appear only to a specific audience, ensure that it is assigned to the correct audience, and verify it by viewing the page while logged in to an account that is a member of this audience. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Moderate Forums > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Consumer developers can use the Anypoint API Community Manager forums to ask questions and collaborate with other members of the community. When a developer posts a question or answer that’s not visible automatically, a community operator must approve it. To approve or delete pending forum posts, open the API Community Manager control panel and select **Manage Forums**. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). Select **Pending Discussions**. The list of posts shows their authors and the options to **View Author Details**, **View Discussion**, **Approve**, and **Delete**. If the community operator chooses **Approve**, the post becomes visible to the public. If the community operator chooses **Delete**, the post is removed and not visible to anyone. A community operator can also reply to new discussions and questions, review audit trails, and create and manage forum rules. These rules can filter posts, other content, and members based on criteria defined by the operator. Members matching the criteria can be frozen, and posts and other content matching the criteria can be flagged, blocked, automatically edited to remove banned terms, or held for the operator to review them. For more information about the Salesforce Experience Cloud forums and their moderation options, see the Salesforce documentation. ## Nicknames To set the API forums to display each user’s name and not their nickname, open the API Community Manager control panel, click **Shortcuts to applications** and select **Site Administration**. Click **Preferences** and disable **Show nicknames**. ## See Also - Salesforce documentation: [Experience Cloud Site Moderation Strategies and Tools](https://help.salesforce.com/s/articleView?language=en_US&id=networks_moderation_overview.htm&type=5) --- product: API Community Manager --- # MuleSoft Government Cloud Data Control > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Support for Mulesoft Government Cloud is available in the latest version of API Community > Manager, but with limitations. For more information, see > [Limitations](https://docs.mulesoft.com/api-community-manager/connectivity-govcloud#limitations). Your MuleSoft Government Cloud organization can restrict the data entities exposed to its Salesforce Experience Cloud API Community Manager instance. Restrictions are defined on the Anypoint Platform organization management plane and applied at the data bridge level. Before defining the entities and restrictions, get an authorization token from the Anypoint Platform identity services API endpoint `/accounts/login` by sending the username and password of a user with the Organization Administrator permission. To define the restricted data entities and the operations allowed on each, use the token to make the API request to set a property in your Anypoint Platform organization. Entities not listed in this configuration setting allow create, read, update, and delete operations. Entities listed in this configuration setting allow only the listed operations, and all operations not present in the permissions array are blocked. Attempting a blocked operation returns an HTTP 403 error. ## Example Request This example API request enables all operations on the `AnypointApplication` entity but only the read operation on the `AnypointCategory` entity: curl --location --request PUT 'https://gov.anypoint.mulesoft.com/accounts/api/organizations/' \\ --header 'Authorization: Bearer ' \\ --header 'Content-Type: application/json' \\ --data-raw '{ "properties": { "acm": { "entities": { "AnypointApplication": { "permissions": \["create", "read", "update", "delete"\] }, "AnypointCategory": { "permissions": \["read"\] } } } }}' ## Available Entities - `AnypointApi` - `AnypointApis` - `AnypointApiCategory` - `AnypointApiCategories` - `AnypointApiFile` - `AnypointApiGroupInstance` - `AnypointApiGroupInstances` - `AnypointApiGroupInstanceApiInstance` - `AnypointApiGroupInstancesApiInstances` - `AnypointApiGroupTier` - `AnypointApiGroupTiers` - `AnypointApiGroupTierLimit` - `AnypointApiGroupTierLimits` - `AnypointApiGroupVersion` - `AnypointApiGroupVersions` - `AnypointApiInstance` - `AnypointApiInstances` - `AnypointApiPage` - `AnypointApiPages` - `AnypointApiProduct` - `AnypointApiProducts` - `AnypointApiStat` - `AnypointApiStats` - `AnypointApiTier` - `AnypointApiTiers` - `AnypointApiTierLimit` - `AnypointApiTierLimits` - `AnypointApiVersion` - `AnypointApiVersions` - `AnypointApiVersionQuery` - `AnypointApiVersionQueries` - `AnypointApplication` - `AnypointApplications` - `AnypointApplicationOwner` - `AnypointApplicationOwners` - `AnypointAssets` - `AnypointAssetCategories` - `AnypointAssetVersions` - `AnypointCategory` - `AnypointCategories` - `AnypointContract` - `AnypointContracts` - `AnypointContractOperation` - `AnypointEnvironment` - `AnypointEnvironments` - `AnypointOrganization` - `AnypointOrganizations` - `AnypointResetClientOperation` - `AnypointUser` - `AnypointUsers` - `CacheEvict` - `ResetApplicationSecret` - `RestoreApiContract` - `RevokeApiContract` --- product: API Community Manager --- # Not Authorized or Problem Logging In Error When Saving External Data Source Configuration > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If saving the external data source configuration shows one of the errors "Not authorized" or "Problem Logging In - No\_Oauth\_State: State was not sent back", follow these steps: 1. Ensure that the connected app domain is the right domain of the Salesforce organization. 2. Open Salesforce setup. 3. Open the authentication providers configuration. 4. Click the name of the Anypoint Platform authentication provider and ensure that it has these settings from the correct connected app in Anypoint Platform: 1. Ensure that the consumer key and consumer secret match the connected app in Anypoint Platform. 2. Ensure that the authorize endpoint URL, token endpoint URL, and default scopes are configured as described in [Manual Setup](https://docs.mulesoft.com/api-community-manager/manual-setup). 3. Ensure that the test-only initialization URL, OAuth-only initialization URL, callback URL, and single logout URL match the correct domain of your Salesforce organization. 4. Ensure that your connected app in Anypoint Platform has the same domain as your Salesforce organization in its `redirect_uri` setting, a client ID and client secret that match those in Salesforce, and correct scopes. To view details of the connected app, examine the UI or make this API call: curl -X GET 'https://anypoint.mulesoft.com/accounts/api/connectedApplications/' \\ -H "Content-Type: application/json" \\ -H "authorization: bearer XXXXXXXXX" This call returns a response like this: { "client\_id": "5fafXXXXXXXXXXXXXXXXXXXXXXXX29c9", "client\_secret": "9509XXXXXXXXXXXXXXXXXXXXXXXXC10E", "client\_name": "ACM Integration Client", "redirect\_uris": \[ "https://YourOrgDomain.my.salesforce.com/services/authcallback/Anypoint" \], "grant\_types": \[ "authorization\_code", "refresh\_token" \], "public\_keys": \[\], "scopes": \[ "offline\_access", "full" \], "enabled": true, "owner\_org\_id": "f377XXXX-XXXX-XXXX-XXXX-XXXXXXXX9d08", "as\_id": "anypoint" } "YourOrgDomain" is replaced by your organization domain. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Operate Your API Community > For the full documentation index, see: https://docs.mulesoft.com/llms.txt These pages explain how to publish APIs and content to your Anypoint API Community Manager community and how to manage forums, members, and support cases. In an API Community, APIs and API documentation are published from Anypoint Exchange, and articles are published from the [Salesforce content management system (CMS)](https://help.salesforce.com/s/articleView?language=en_US&id=community_managed_content_overview.htm&type=5). API documentation in Exchange includes detailed descriptions of each API version. This documentation is updated with the API release cycle, usually with close involvement from the development team. Salesforce CMS articles include event, marketing, and vision information. These articles typically have their own release cycle and process, usually with close involvement from the marketing team. All of these actions are performed in the API Community Manager control panel: ![API Community Manager control panel](/mulesoft/current/en-us/api-community-manager/_images/control-panel.png) To open the API Community Manager control panel at any time, open the Salesforce **App Launcher** and select **API Community Manager**. ## Community Operations - [Publish APIs](https://docs.mulesoft.com/api-community-manager/publish-apis) - [Configure API Visibility](https://docs.mulesoft.com/api-community-manager/visibility) - [Publish Content and CMS Articles](https://docs.mulesoft.com/api-community-manager/publish-content) - [Moderate Forums](https://docs.mulesoft.com/api-community-manager/moderate-forums) - [Manage Client Applications and Contracts](https://docs.mulesoft.com/api-community-manager/client-apps-contracts) - [Manage Members](https://docs.mulesoft.com/api-community-manager/manage-members) --- product: API Community Manager --- # Optionally Configure Branded Emails > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint API Community Manager sends notification emails when an API contract is approved or revoked. By default these emails use Anypoint Platform addresses and branding. If you wish to configure them to use your own addresses and branding instead, use these steps. ## Disable Standard Email Security Branded emails require disabling Salesforce’s standard configuration for Sender Policy Framework (SPF) for email. For more information about this feature, see the Salesforce Help article [Enable Email Security Compliance](https://help.salesforce.com/s/articleView?id=sales.emailadmin_enable_email_security_compliance.htm&type=5). To disable the standard configuration, open **Setup** > **Deliverability** > **Email Security Compliance** and ensure the option **Enable compliance with standard email security mechanisms** is not selected. ## Configure Email Addresses 1. Navigate to **Setup** and use **Quick Find** to go to **Organization-Wide Addresses**. 2. Set **Display Name** to `EventEmailSender`. 3. Set **Email Address** to the email address at your organization that sends the API contract event notification emails. Ensure you can read confirmation emails sent to this address. 4. Enable **Allow All Profiles to Use this From Address**. 5. Click **Save**. 6. Open the confirmation email sent to the notification sender email address and click the link to confirm the address. ## Enable Custom Email Notifications To enable custom email notifications, follow these steps. ### Configure Data Change Capture 1. Navigate to **Setup** > **Home** > **Integrations** > **External Data Sources** and ensure **Eligible for External Data Change Capture** is enabled. 2. Set **Polling Interval for External Change Data Capture (seconds)**. The default is 1800 and the minimum is 300. 3. Navigate to **Setup**. 4. Use **Quick Find** to navigate to **Change Data Capture**. 5. Navigate to **Entities** > **Change Manually** > **Available Entities**. 6. Move **AnypointContracts** to the **Selected Entities** list, which enables polling on this object. ### Create Apex Trigger 1. Navigate to **Setup**, use **Quick Find** to go to **Apex Triggers**, and click the **Developer Console** button. 2. Click **File** > **New** > **Apex Trigger**, set **Name** to `AnypointEmailNotificationsTrigger`, and set **sObject** to `acm_pkg__AnypointContracts__ChangeEvent`. 3. Enter this code block: trigger AnypointEmailNotificationsTrigger on acm\_pkg\_\_AnypointContracts\_\_ChangeEvent (after insert) { List events = Trigger.new; acm\_pkg\_\_.AnypointEmailNotifications.notifyOnContractUpdates(events); } #### Promote Apex Trigger to Production 1. In the sandbox organization, open **Setup** and use **Quick Find** to go to **Outbound Change Sets**. 2. Click **Continue**. 3. Click **New**, enter a name and description, and click **Save**. 4. Click **Add** under **Change Set Components**, set **Component Type** to **Apex Trigger**, and add `AnypointEmailNotificationsTrigger`. 5. Click **Upload**, set the target organization to the production organization, and click **Upload**. 6. In the production organization, open **Setup** and use **Quick Find** to go to **Inbound Change Sets**. 7. Click **Continue**. 8. If no change sets appear, do these steps: 1. Open **Setup** and use **Quick Find** to go to **Deployment Settings**. Click **Edit** next to your sandbox organization, enable **Allow Inbound Changes**, and click **Save**. 2. Return to **Outbound Change Sets** in the sandbox organization, click **Upload**, set the target organization to the production organization, and click **Upload**. 3. Wait for the confirmation banner, then return to **Inbound Change Sets** in the production organization. 9. Click **Validate** on the change set, set **Test Option** to **Default Test Option**, and click **Validate**. > [!NOTE] The change set validation might fail with this coverage error: > `AnypointEmailNotificationsTrigger has 0% coverage. Each trigger must have at least 1% code coverage.` > This error occurs because the trigger has no test coverage. To resolve it, create a test class > as described in the next steps. 10. In the sandbox organization, open the **Developer Console**, click **File** > **New** > **Apex Class**, set **Name** to `AnypointEmailNotificationsTriggerTest`, and click **OK**. 11. Enter these code and save: @IsTest public class AnypointEmailNotificationsTriggerTest { @IsTest static void testEvent() { acm\_pkg\_\_AnypointContracts\_\_ChangeEvent event = new acm\_pkg\_\_AnypointContracts\_\_ChangeEvent(); EventBus.ChangeEventHeader header = new EventBus.ChangeEventHeader(); header.changeType='CREATE'; header.entityName='AnypointContracts\_\_x'; header.changeOrigin='here'; header.transactionKey = 'some'; header.commitUser = 'me'; event.changeEventHeader = header; event.put('ExternalId', '476111:1094813'); event.put('acm\_pkg\_\_ApiVersionId\_\_c', '66c1049c-ed5c-4f46-9751-33061eb2ce2b:productinformation:v1'); event.put('acm\_pkg\_\_ApiId\_\_c', '15764979'); event.put('acm\_pkg\_\_InstanceId\_\_c', '15764979'); event.put('acm\_pkg\_\_ApplicationId\_\_c', '476111'); event.put('acm\_pkg\_\_Status\_\_c', 'REVOKED'); event.put('acm\_pkg\_\_TierId\_\_c', '218623'); event.put('acm\_pkg\_\_ContractType\_\_c', 'Api'); Test.startTest(); Database.SaveResult sr = EventBus.publish(event); Test.getEventBus().deliver(); Test.stopTest(); System.assertEquals(true, sr.isSuccess()); } } 12. Create a new outbound change set and click **Add** under **Change Set Components**. Add both: 1. `AnypointEmailNotificationsTrigger` under **Apex Trigger** 2. `AnypointEmailNotificationsTriggerTest` under **Apex Class** 13. Upload the change set to the production organization. 14. In the production organization, open **Inbound Change Sets**, click **Validate** on the new change set, set **Test Option** to **Run specified tests**, enter `AnypointEmailNotificationsTriggerTest`, and click **Validate**. 15. After successful validation, click **Deploy**. 16. To verify the deployment, navigate to **Setup** > **Custom Code** > **Apex Triggers** and confirm that `AnypointEmailNotificationsTrigger` appears in the list. ### Configure Branded Email Metadata 1. Navigate to **Setup** and use **Quick Find** to go to **Custom Metadata Types**. 2. Click **ACM Community Configuration Metadata** > **Manage Records** > **New** to add a record. 3. Set **Label** to your API community’s name and press **Tab** to automatically complete the **ACM Community Config Metadata Name**. 4. Open the **Developer Console** and open the **Query Editor**. 5. Enter `SELECT Id, Name FROM Network` and click **Execute**. 6. In the list of IDs and communities, find the row with **Name** equal to your community’s name, double-click the ID, and copy it. 7. In the **ACM Community Config Metadata** field **NetworkId**, paste the ID. 8. In the **Query Editor**, enter `SELECT Id, Name FROM EmailTemplate` and click **Execute**. 9. In the list of IDs and email templates, find the row with **Name** equal to **Contract Approved**, double-click the ID, and copy it. 10. In the **ACM Community Config Metadata** field **ContractApprovedEmailTemplateId**, paste the ID. 11. In the list of IDs and email templates, find the row with **Name** equal to **Contract Revoked**, double-click the ID, and copy it. 12. In the **ACM Community Config Metadata** field **ContractRevokedEmailTemplateId**, paste the ID. 13. In the **Query Editor**, enter `SELECT Id, Address FROM OrgWideEmailAddress` and click **Execute**. 14. In the list of IDs and email addresses, find the row with **Address** equal to the organization-wide email address you set, double-click the ID, and copy it. 15. In the **ACM Community Config Metadata** field **OrgWideEmailAddressId**, paste the ID. 16. Click **Save**. 17. Repeat this process for all additional communities, creating one record for each community. **NetworkId** is different for each community. **ContractApprovedEmailTemplateId**, **ContractRevokedEmailTemplateId**, and **OrgWideEmailAddressId** may be the same for multiple communities. ### Configure Branded Email Templates 1. Navigate to **Setup**, use **Quick Find** to go to **Classic Email Templates**, and navigate to **Folder** > **ACM**. 2. Customize the **Contract Approved** and **Contract Revoked** templates, or create your own templates and configure the **ACM Community Config Metadata** to use them. 3. Configure an email relay as described in the Salesforce documentation page [Send Email Through Email Relay](https://help.salesforce.com/s/articleView?language=en_US&id=emailadmin_email_relay_overview.htm&type=5). If the relay is not configured, notification emails are sent from a Salesforce domain with a sender email address in your organization’s domain. If the actual sender domain and sender email address domain do not match, many email providers mark the notification emails as spam. ## Disable Default Anypoint Email Notifications The JSON Web Token (JWT) authentication mechanism creates Anypoint user records with member email addresses. To prevent a community member from receiving the default Anypoint notification emails, alter these email addresses so the Anypoint user record email is not a valid address. 1. In Salesforce, navigate to **Setup** > **Named Credentials**. 2. Click the **Name** of the named credential `Anypoint` to open it in view mode. `Anypoint` is the default named credential set in the external data source by the guided setup application. If the named credential has been changed manually, use the named credential configured in the Anypoint external data source. 3. Click **Edit**. 4. In the **Per User Subject** formula, add ``& ".donotsend" ` after `$User.Email``. Example: `"v2|8745gh23-590d-4h80-b339-1637854e289f|" & $User.Username & "|" & $User.FirstName & "|" & $User.LastName & "|" & $User.Email & ".donotsend" & "|[\"Community User\"]"` ## Anypoint Permissions Configuration 1. Log in to your API community as an administrative user. 2. In **Access Management**, click **Users**. 3. Click the impersonated Anypoint user with the email address of the Salesforce administrator. 4. Add the Organization Administrator role to the user on each organization and suborganization. 5. Click **Permissions**, click **API Manager**, and for each environment, open the permissions list and enable the **Manage Contracts** permission. 6. In the public side of the community, request access to an API with manual approval. 7. Log in to Anypoint and approve the requested API contract. This creates the Anypoint user named **Automated Process**, which works with the Salesforce user named **Automated Process** to process triggers. 8. Grant the Anypoint user named **Automated Process** the **Organization Administrator** role in the main organization [using Anypoint Access Management](https://docs.mulesoft.com/access-management/roles). This enables the Anypoint user to process API contract events when API contracts are approved or revoked. --- product: API Community Manager --- # Optionally Configure Search in CMS Content > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint API Community Manager stores some content, such as news articles and blog posts, in a content management system or _CMS_. To include this content in search results, enable the Salesforce CMS content manager. ## CMS Application Permissions Open your administrator profile and ensure that it has the following CMS application permissions: - **Manage Content Permissions**: Create, edit, and delete library permissions in Salesforce CRM Content. - **Manage Content Properties**: Create, edit, and delete custom fields in Salesforce CRM Content. - **Manage Record Types and Layouts for Files**: Create, edit, and delete content types in Salesforce CRM Content. - **Manage Salesforce CRM Content**: Create, edit, and delete libraries and library memberships. ## Enable Salesforce CMS To enable Salesforce CMS for API Community Manager: 1. In the administrative interface, open **CMS Administrator**. 2. If the interface shows a message that you have no content available yet, create content: 1. Open the control panel. 2. Click the apps icon in the top left and use the **Search apps and items…​** box to find and open the Salesforce CMS app. 3. Select **CMS Workspaces**. 4. Click **Add Workspace**. 5. Enter the name and description of the workspace. 6. Click **Next**. 7. Select the channel for each community that has CMS content to include in your community’s search results. 8. If you have contributors, add them. 9. Choose the languages for your translated content. 10. Click **Next**. 11. Verify the information. 12. Click **Done**. 13. Create a new collection and upload content. 3. Enable search in the community channel: 1. Open the control panel. 2. Click the apps icon in the top left and use the **Search apps and items…​** box to find and open the Salesforce CMS app. 3. Open the **CMS Home** tab and use the drop-down menu to open **CMS Channels**. 4. Find your site on the list and, in the **Search** column, open the drop-down menu and click **Edit**. 5. In the **Channel Settings** menu, open the **Search** tab and click **Enable Search**. 6. In the **Search By Content Type** menu, select which content types are enabled and disabled for search. 7. Click **Save**. 4. Add your community URL to remote site settings: 1. Open **Setup**. 2. Use the **Quick Find** box to find and open **Remote Site Settings**. 3. Click **New Remote Site**. 4. Choose a **Remote Site Name** for your site. 5. Copy and paste your community’s URL into the **Remote Site URL** field. 6. Click **Save**. 5. Verify that your user has the option **Salesforce CMS Content User** enabled. 6. Open the community builder, open the Lightning component **ACM Search Box**, and enable the option **Search in Managed Content**. 7. Open your community, use the site search, and verify that the **Managed Content** tab is visible. ## See Also - [Salesforce CMS](https://help.salesforce.com/s/articleView?language=en_US&id=community_managed_content_overview.htm&type=5) - [Publish Content and CMS Articles](https://docs.mulesoft.com/api-community-manager/publish-content) --- product: API Community Manager --- # Preview Your Site > For the full documentation index, see: https://docs.mulesoft.com/llms.txt After you edit your Salesforce Experience Cloud site, you can preview the new version to ensure that it meets your expectations: 1. Open the Anypoint API Community Manager control panel. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 2. Click **Shortcuts to applications** and select **Site Builder**. 3. Click **Preview**. 4. Verify that your changes are applied and display correctly. APIs that are visible only to administrators appear in this preview. 5. Click **Back to Builder**. --- product: API Community Manager --- # Publish APIs > For the full documentation index, see: https://docs.mulesoft.com/llms.txt As an Anypoint API Community Manager community administrator, you can add and publish APIs, API groups, and minor and major updates from Anypoint Exchange into your Salesforce Experience Cloud site. This information includes the API documentation stored with the APIs in Exchange. The API documentation is separate from the articles stored in the Salesforce content management system (CMS). The API release process includes API documentation updates, and the CMS article release process is usually separate. Often a development team will lead the API release process and a marketing team will lead the CMS article release process. ## Add Assets from Exchange to Your Site 1. Open the API Community Manager control panel and select **API Curator**. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). From this tab, you can manage the assets in your site, including their metadata and visibility. Assets include APIs and API groups. \+ \* **Assets in Your Site** shows the assets that have been added to your site. \* **Assets in Anypoint Exchange** shows the assets that exist in your Exchange organization but have not been added to your site. . Next to the asset name, click **Add**. \+ Alternatively, select multiple assets and click **Add to your site**. . Set the asset information: name, icon, description, and visibility of APIs on your site, and the visibility of the instances in each API. ## Set Asset Information The asset editing page opens when you add an asset to the site. To open the editing page again, next to the asset name, click the pencil shaped edit icon. 1. Optionally, edit the **Asset Name**, **Asset Icon**, and **Description**. 2. Set **Instances visibility** to **Only Public** so your site will show only public instances of the asset, or **All instances** to show public and private instances. 3. Use **Manage visibility** to set the visibility of all versions as **Administrators only**, or set visibility for some versions to **None**, while you preview the API or API Group as described in the next section. 4. Select **Apply**. ## Preview APIs 1. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Builder**. Site Builder displays a preview of your community’s site and edit options. 2. Select **Preview**. 3. Scroll to the API carousel that displays a card for each API or API Group version in the community. The new API version or API Group shows the message **This is only visible for you**, indicating **Administrators only** visibility. Consumer developers cannot see this API version or API Group preview. If no changes are visible, [refresh the cache](https://docs.mulesoft.com/api-community-manager/troubleshooting#refresh-the-cache). ## Make API Versions Visible 1. In the API Community Manager control panel, click **API Curator**. 2. Click the edit icon next to the asset name. 3. For each version, set **Manage visibility** to **Everyone** if you want it to be publicly available, **Members only** if you want it to be seen only by logged-in members, or **None** if you do not want that version to be visible. At least one version must be visible by having an option other than **None**. 4. Select **Apply**. Consumer developers can now see this asset in the API carousel on the community site. On the **API Curator** tab, the **Visibility** column shows the visibility of the most visible version of that asset. ## Minor API Updates When an API specification or documentation requires nonbreaking corrections, such as changing the text, these changes are given a minor version change, such as from `3.0.0` to `3.0.1`. API Community Manager automatically and immediately imports these updates to all communities in which the API is published, without requiring any action from the API Community Manager administrator. For example, suppose both the text in an API’s documentation and the text in the API Specification description have spelling errors. To make corrections in the API specification: 1. Open the **Design Center**. 2. Open the API project and fix the errors. 3. Select **Publish to Exchange**. 4. In the **Publish API specification to Exchange** dialog box, leave the existing **Name**, **Main file**, and **API Version**, but increment the **Asset version** for a non-breaking change. For example, change `3.0.0` to `3.0.1`. 5. Select **Publish**. To make corrections in the API documentation: 1. Open Exchange. 2. Open the API. 3. Select **Edit** and fix the errors. 4. Select **Save as draft**. 5. Select **Publish**. Consumer developers see the corrected information on the community site immediately. If no changes are visible, [refresh the cache](https://docs.mulesoft.com/api-community-manager/troubleshooting#refresh-the-cache). ## Major API Updates When a new version of the API with breaking changes is created, the API Community Manager community administrator controls when and how to publish the new version in the site, mark the old version as deprecated, and remove the old version. For example, suppose a developer on the API team adds a new resource to an API. 1. In **Design Center**, the developer opens the API project, adds the resource to the specification, and selects **Publish to Exchange**. 2. Because this is a breaking change, the developer changes the **API version** information in **Publish API specification to Exchange**. For example, if the **API version** is `v3`, it becomes `v4`. If the **Asset version** is `3.0.1`, it becomes `4.0.0`. **Name** and **Main file** do not change. 3. The developer selects **Publish**. The previous API version remains in all communities where it was published without any changes. The API Community Manager community administrator must then review and publish the changes: 1. In the API Community Manager control panel, select **API Curator**. The API is still listed in **Assets in Your Site**. The new version has visibility **None**. 2. Next to the API name, click the edit icon. 3. Change the visibility to **Administrators only**. 4. Preview the API. 5. In the API Community Manager control panel, select **API Curator**. 6. Next to the API name, click the edit icon. 7. Change the visibility of the new version from **Administrators only** to **Everyone** if you want it to be publicly available, **Members only** if you want it to be seen only by logged-in members, or **None** if you do not want that version to be visible. If the visibility is **Everyone** or **Members only**, then consumer developers can now see the new API version in the API carousel on the community site. If no changes are visible, [refresh the cache](https://docs.mulesoft.com/api-community-manager/troubleshooting#refresh-the-cache). ## Searching for APIs and API Groups In the API Community Manager control panel, the **API Curator** tab’s **Assets in Your Site** tab shows a filter icon and a search bar. The filter icon opens a menu to filter assets by asset type, visibility, and category. You can filter search results in the search bar with the following filter attributes: - `name` - `version` - `description` - `businessGroup` - `assetType` (`api` or `group`) To use a filter attribute, type the attribute name followed by a colon and the value for that attribute. For example: filtering with `name:order` only shows APIs with names that include "order", such as "Order Status API" or "Received Orders". Search terms without a filter attribute only apply to API fields that are not filtered. For example, the search `businessGroup:Sales banking` shows APIs that include "Sales" in the "Business Group" field and "banking" in any field other than "Business Group". The **API Curator** tab’s **Assets in Anypoint Exchange** tab shows a search bar and filter options for asset type, category, business group, and status. The asset status filter shows only assets that were recently created or recently updated. The tabs show a maximum of 100 results, followed by a message if additional results were omitted. Use the search field to filter the APIs so that no relevant API is omitted. --- product: API Community Manager --- # Publish Content and CMS Articles > For the full documentation index, see: https://docs.mulesoft.com/llms.txt With Anypoint API Community Manager, you can create, organize, and publish content for your community, including news, tutorials, developer blog posts, and events. This content is stored in [Salesforce content management system (CMS)](https://help.salesforce.com/s/articleView?language=en_US&id=community_managed_content_overview.htm&type=5) articles. These articles are separate from the API documentation stored in Exchange. The API release process includes API documentation updates, and the CMS article release process is usually separate. Often a development team will lead the API release process and a marketing team will lead the CMS article release process. ## Create a New Article in Salesforce CMS > [!NOTE] You can also author API Community Manager content in > [an external CMS system through CMS Connect](https://help.salesforce.com/s/articleView?language=en_US&id=communities_cms_connect.htm&type=5). 1. Open the API Community Manager control panel. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 2. Select **Manage CMS Content**. The Salesforce Experience Cloud **Content Management** interface is displayed. The **Content Management** interface is organized into these panels: - **Content**: Lists each article in your community. - **Collections**: Lists collections in your community, such as **News** for news articles and **Blogs** for blog posts. Each collection is a list of articles. - **Topics**: Lists article Topic groupings. Topics are similar to tags. - **Recommendations**: Drives community engagement by recommending videos, trainings, events, and more for your users. 3. Select **Salesforce CMS**. The **Salesforce CMS** interface displays the workspaces in your Salesforce organization. TIP: The **Salesforce CMS** interface enables other teams, such as marketing or business development, to own the creation and publication of content articles in a single place, and reuse content across multiple communities. 4. Select the workspace in which you want to create the new article. A tab for that workspace is displayed that contains a list of the workspace’s content articles. 5. Select **Add Content**. 6. Fill in the article’s **Title**, **Body**, **Featured Image**, and **Excerpt**. The **Excerpt** is the preview text on an article’s carousel tile. 7. When finished with your changes, select **Save Draft**. You can edit and save the draft again any number of times. 8. When you are ready to publish the article, select **Publish**. ## Add the Article to a Collection 1. Open the API Community Manager control panel. 2. Select **Manage CMS Content**. The Salesforce Experience Cloud **Content Management** interface is displayed. It shows a list of your community’s articles. 3. Select **Collections**. 4. Select the appropriate collection for your article. 5. Select **Edit**. Articles selected to be part of the collection have green check marks to the left of their names. 6. Select the plus sign (`+`) next to your new article to add it to the collection. 7. Select **Save**. The collection now lists your new article. The [Salesforce Experience Cloud documentation](https://help.salesforce.com/s/articleView?language=en_US&id=community_managed_content_collections.htm&type=5) describes additional ways to add articles to collections, and includes more advanced categorization capabilities using topics and rules. ## Display the Collection in Your Community 1. Open the API Community Manager control panel. 2. Click **Shortcuts to applications** and select **Site Builder**. A preview of your community’s site is displayed. 3. If the collection containing your new article is already displayed in a **CMS Collection** component, then your new article will be visible there. 4. Your article will be visible in any new **CMS Collection** components displaying the collection containing the article. ## Create Collections to Organize Content 1. Open the API Community Manager control panel. 2. Select **Manage CMS Content**. 3. Select **Collections**. 4. Select **New**. 5. Enter a name for your collection, select the source **CMS Content**, and choose to curate the collection **Manually**. 6. From the list of community articles, select the ones you want to include in the collection by selecting the plus sign (`+`) next to each article. 7. Select **Finish**. 8. To use your new collection on your community site, open the API Community Manager control panel, click **Shortcuts to applications**, and select **Site Builder**. 9. Add a **CMS Collection** component to a page in your community. 10. Select the component to open its configuration menu, and select **Change Collection** to select your new collection. The new collection of articles is now displayed on your community page. ## External CMS Systems You can also author API Community Manager content in [an external CMS system through CMS Connect](https://help.salesforce.com/s/articleView?language=en_US&id=communities_cms_connect.htm&type=5). External CMS systems can include Adobe Experience Manager, Drupal, Wordpress, and others. You can learn more about CMS Connect on Trailhead with the trail [Deploy Fast and Personalize the Experience](https://trailhead.salesforce.com/content/learn/modules/partner-relationship-management/deploy-fast-and-personalize-the-experience). ## See Also - [Manage Your Community’s Pages and Their Properties in Community Builder](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_manage_pages_overview.htm&type=5) - [Salesforce Content Management System (CMS) (Beta)](https://help.salesforce.com/s/articleView?language=en_US&id=community_managed_content_overview.htm&type=5) --- product: API Community Manager --- # Publish Your Site > For the full documentation index, see: https://docs.mulesoft.com/llms.txt After you edit and preview your updated Salesforce Experience Cloud site, you can publish the new version for your users: 1. Open the Anypoint API Community Manager control panel. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 2. Click **Shortcuts to applications** and select **Site Builder**. 3. Click **Settings** > **General**. 4. Select the **Public can access the community** check box. 5. Return to **Site Builder**. 6. Click **Publish**. If your community is not already active, activate it: 1. Open the API Community Manager control panel. 2. Click **Shortcuts to applications** and select **Site Administration**. 3. Click **Settings**. 4. Click **Activate**. After your community is published and active, view the live site: 1. Open the API Community Manager control panel. 2. Click **Shortcuts to applications** and select **Open Site**. --- product: API Community Manager --- # Salesforce Releases and Migrations > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The Salesforce organization dedicated to your API community follows the standard [Salesforce release process](https://trailhead.salesforce.com/content/learn/modules/sf_releases/sf_releases_start). This automatically upgrades your organization to the latest Salesforce release version three times each year. As an organization administrator, you receive email notifications about the changes at least three months in advance, including any guidance, required steps for you to follow, or other resources for the upgrade. Many Salesforce upgrades do not require any additional steps for Anypoint API Community Manager. If you must take steps to prepare API Community Manager for the upgrade, your MuleSoft customer success representative provides them and you can also view them on [trust.mulesoft.com](https://status.salesforce.com/products/Mulesoft). The Salesforce organization dedicated to your API community sometimes moves across instances within a region. These migrations usually have no impact on your API community. If there is any impact, your MuleSoft customer success representative notifies you and you can also view it on [trust.mulesoft.com](https://status.salesforce.com/products/Mulesoft). For help with the Salesforce release or migration process, contact your customer success representative. For outages or operational issues with your API community, contact MuleSoft support. ## See Also - [Salesforce release process](https://trailhead.salesforce.com/content/learn/modules/sf_releases/sf_releases_start) - [trust.mulesoft.com](https://status.salesforce.com/products/Mulesoft) --- product: API Community Manager --- # Sandboxes > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Upgrades are applied automatically to Anypoint API Community Manager versions 2.0 and later. Upgrades with new features are applied to sandbox environments four weeks before they are applied to production environments. Upgrades with only bug fixes are applied to sandbox environments two weeks before they are applied to production environments. ## Sandboxes for Upgrading from Version 1.x After you install an Anypoint API Community Manager upgrade, it is not possible to undo the installation and revert to a previous version. Therefore, be sure to create safe sandbox environments in which you test each upgrade before installing it in your production environment. ### New Sandboxes To create a new sandbox: 1. In **Setup**, search for **Sandboxes** using the **Quick Find** box and click **New Sandbox**. 2. Enter a name and description and create a new developer sandbox. After several minutes to a few hours, sandbox creation completes and sends you a notification email. 3. In **Setup**, search for **Sandboxes** using the **Quick Find** box and log in to your new sandbox with your administrator password. Note that the user name has the sandbox name as a suffix. To validate your new sandbox: 1. Open the application launcher. 2. Open the **API Community Manager** application. 3. Publish a few APIs. 4. Open the builder. 5. Publish your community. 6. Open your community’s live site. 7. Validate the site is operational. After validating your new sandbox, begin the upgrade. ### Upgrade Workflow To test and install each upgrade: 1. Keep a long-term staging environment sandbox with either a partial copy or a full copy of the data in the production environment. 2. Create a short-term developer sandbox. 3. Install the upgrade in the developer sandbox and test it. 4. Discard the developer sandbox. 5. Install the upgrade in the staging sandbox and test it. 6. Install the upgrade in your production environment. ## See Also - [Upgrade API Community Manager](https://docs.mulesoft.com/api-community-manager/update-acm) - [Creating Community Sandboxes](https://videos.mulesoft.com/watch/RjG1iwDhtGNMgyLKmUrPDC) --- product: API Community Manager --- # Security > For the full documentation index, see: https://docs.mulesoft.com/llms.txt 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](https://docs.mulesoft.com/access-management/external-identity) for single sign-on (SSO) in MuleSoft, and supports [LDAP](https://docs.mulesoft.com/access-management/ldap-configuration-index) and other standards. Anypoint API Manager applies [policies](https://docs.mulesoft.com/mule-gateway/policies-included-overview) to APIs for security, and supports [OAuth 2.0](https://docs.mulesoft.com/api-manager/latest/mule-oauth-provider-landing-page) and other standards. If you discover a security vulnerability, follow the steps in [How to Report Vulnerabilities or Security Issues on MuleSoft Products](https://help.salesforce.com/s/articleView?id=001115824&type=1) to send a report to [Salesforce Security](https://security.salesforce.com/contact) with detailed steps to reproduce the vulnerability. ## See Also - [Salesforce Security](https://security.salesforce.com/) --- product: API Community Manager --- # Site Look-and-Feel Customization > For the full documentation index, see: https://docs.mulesoft.com/llms.txt [Experience Builder](https://help.salesforce.com/s/articleView?language=en_US&id=community_designer_overview.htm&type=5) enables you to create a Salesforce Experience Cloud site with your desired brand identity, look and feel, and site structure by providing control over the site’s components, themes, and pages, and its settings for general properties, themes, and SEO. In the Anypoint API Community Manager control panel, click **Shortcuts to applications** and select **Site Builder** to open your site for editing. With Site Builder you can edit each page in your community, create new pages, and add and edit the components in each page. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). Site Builder’s interface contains the pages list, component palette, theme menu, page structure menu, and settings menu. API Community Manager is not certified for use on mobile devices. Some functionality works on mobile devices, but some functionality such as the API console does not. ## Pages List The **Pages** list shows the pages included with API Community Manager and the pages you have added, and enables you to select and edit each page. The included page **Home** is selected by default. The **Pages** list enables you to create new pages by using the **New Page** option. A new page can be an object page or a standard page. Object pages are used only with Salesforce objects, so a custom community page starts as a standard page. A standard page can start from one of the preconfigured pages or as a new blank page. Make a new blank page by selecting the layout and then entering the new page’s name and URL. Use that URL to make links to the new page, including links in menus. The new page displays with placeholders for content based on the layout. Fill in a new page by adding components from the **Components** menu, such as a Headline component in the page header, or an API Community Manager Lightning component such as an API Version Carousel. The **Pages** list shows the editable configuration properties for each page, which are described in [Manage Your Community’s Pages and Their Properties in Experience Builder](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_manage_pages_overview.htm&type=5). ## Components Clicking the **Components** lightning bolt icon displays the component palette, which includes Salesforce Experience Cloud components, such as Headline or Featured Topics, and components specific to API Community Manager, such as API Carousel or API Console. You can drag any component from the component palette to the current page. Select the component on the page to show the component’s configuration options. Detailed component information is available from the page [Description of API Community Manager Lightning Components](https://docs.mulesoft.com/api-community-manager/acm-lightning-components) and the Salesforce Experience Cloud [Components](https://help.salesforce.com/s/articleView?language=en_US&id=rss_component_reference_table.htm&type=5) documentation. Components typically used in home pages include: - [Headline](https://help.salesforce.com/s/articleView?language=en_US&id=rss_headline.htm&type=5) - [CMS Collection](https://help.salesforce.com/s/articleView?language=en_US&id=rss_cms_collection.htm&type=5) - API Carousel Displays APIs and API versions that are available to the community from Anypoint Exchange. - API Details Button Provides details about an API. - [Rich text editor](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_rich_text_component.htm&type=5) - [HTML editor](https://help.salesforce.com/s/articleView?language=en_US&id=rss_html_editor.htm&type=5) - [Navigation Menu](https://help.salesforce.com/s/articleView?language=en_US&id=rss_setup_nav_menu.htm&type=5) The Navigation Menu component provides the menu for navigating the site, with settings for Max Items to Display (2-15) and Menu Item Alignment, and a **Navigation Menu** button to edit the links on the navigation menu. The menu always starts with the **Home** link. Other links can be added, removed, and reordered. Each link other than **Home** can be customized with these options: - **Name** Sets the link name. - **Type** Sets the link type, such as **Community Page** or **External URL**. - **Page** Specifies community page links from a list of all community pages. - **Publicly available** Sets whether the link is available to all page viewers or only logged in community members. Components typically used in API details pages include: - **API Header** Specifies the API name and description. - **Tabs** Contains these components: - **API Documentation Viewer** Displays API Exchange information. - **API Console** Renders information from the API RAML specification. - **API Custom Field Table** or **API Custom Field Pills** Displays custom fields and their values from the API. - **Feed** Displays comments, discussions, and questions. - **API Access Requestor** Registers a client application and requests access to the API. - **Learn More Button** Provides additional information about the API. Components typically used in **My Application** pages include: - Application Listing Lists all client applications that the member has registered and can access. You can drag items on a page to reorder them. ## Theme Clicking the **Theme** paintbrush icon offers these general branding parameters: - **Colors** Sets the site’s general color scheme, including paragraph, heading, and button text. - **Images** Specifies the site’s company logo and the login page’s background Image. - **Fonts** Specifies the site’s fonts, which include a primary font and header fonts, and specifies the site’s text case. - [Theme Settings](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_theme_adjust.htm&type=5) You can adjust community styling by editing the CSS rules. Next to the **Theme** title, click the **Theme** list, and click **Edit CSS**. Refer to [Customize Your Experience Site Theme](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_theme_customize.htm&type=5). ## Page Structure Clicking the **Page Structure** icon, which resembles a bulleted list, shows the components in the current page and enables you to select and remove them. Selecting a component displays its configuration menu. ## Settings Clicking the **Settings** gear icon offers these parameters: - [General](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_general_settings.htm&type=5) - [Theme](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_theme.htm&type=5) - **SEO** Search Engine Optimization (SEO) features define what information can be indexed by external services and discovered through online searches, and can increase traffic to your public community. Refer to the [Experience Builder Settings](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_general_settings.htm&type=5) help topic for additional information. ## See Also You can find further information in the Salesforce Experience Cloud documentation: - [Customize Sites with Experience Builder](https://help.salesforce.com/s/articleView?language=en_US&id=community_designer_customize_templates.htm&type=5) - [Experience Cloud Overview](https://help.salesforce.com/s/articleView?language=en_US&id=networks_resources.htm&type=5) - Salesforce Trailhead training: [Community Branding](https://trailhead.salesforce.com/content/learn/projects/set-up-a-community/brand-the-community) - Salesforce Trailhead training: [Build a Custom Theme Layout Component for Experience Builder Sites](https://trailhead.salesforce.com/content/learn/projects/communities_theme_layout) --- product: API Community Manager --- # Site Structure > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The structure of your Salesforce Experience Cloud site is defined by your site pages, the Lightning components contained in each, and the links between them. You can define your own site structure and user journeys throughout your site with these elements, tailored to your specific needs and desires. ## Typical Site Structure To configure your site according to the typical site structure, organize it into these pages: ![API Community Manager site structure](/mulesoft/current/en-us/api-community-manager/_images/site-structure.png) - Home page Contains welcome information (**Rich Text** component or **HTML** component), selected APIs and API groups (**API Carousel** component), news and announcements (**CMS Collection** component), and the main search bar (**ACM Search Box** component). - Login page Allows a member to log in to your community, or go to the registration page if they are not already a member (**Login Form** component). - Registration page Allows a guest user to register as a member in your community (**Self Register** component). - Search results page Shows results of searches in the community (**ACM Search Results** component). Each search result links to the appropriate page based on the type of the element, such as a content article page, an API details page, or others. - News list page Contains a list of the different content articles, such as news or announcements (**CMS Collection** component). - News detail page Displays the full content of a specific content article (**CMS Single Item** component). - APIs and API groups catalog page Contains the full catalog of APIs and API groups available in your site, for consumers to explore and discover (**API Catalog** component). - API and API groups details page Displays the documentation and technical content of an API or API group, including the API console and a way to request access to the API. The content of this page is tailored to the type of object being accessed by using _page variations_. You can find more information about page variations in the Salesforce Experience Cloud documentation page [Manage Your Site’s Pages and Their Properties in Experience Builder](https://help.salesforce.com/s/articleView?language=en_US&id=community_builder_manage_pages_overview.htm&type=5). - Individual API page variation This default page variation is used when an API object is opened from the **API Card**, **API Carousel**, or **API Catalog** components. The API page variation includes: - The API name, icon, and description (**API Header** component) - The API’s markdown documentation from Exchange (**API Documentation Viewer** component) - The API spec (**API Console** component) - The API’s custom fields and their values (**API Custom Field Table** or **API Custom Field Pills** component) - Links to download the API spec (**Spec Downloader** component) - The button to request access (**API Access Requester** component) - The number of likes and subscriptions for an API and enables users to like and subscribe to the API (**API Engagement** component) - API group page variation This page variation displays an API group when an API group object is opened from the **API Card**, **API Carousel**, or **API Catalog** components. The API group page variation includes: - The API group name, icon, and description (**API Header** component) - The API group’s markdown documentation from Exchange (**API Documentation Viewer** component) - An API carousel displaying the APIs that are part of this API group (**API Carousel** component, with the **Show** setting configured for **Children**) - The button to request access to the API group (**API Access Requester** component) - The number of likes and subscriptions for an API and enables users to like and subscribe to the API (**API Engagement** component) To configure this variation, see the section [Configure the API Group Page Variation](#configure-api-group-page-variation) - API marketing pages These pages are optional. Each page displays content specific to an individual API or API group (**Rich Text** component or **HTML** component). Use one page for each API or API group as required. Each page is explicitly configured on the API or API group details in the community control panel as described in the **Publish APIs** page of the API Community Manager documentation. - My applications page Displays the member’s client applications (**Application Listing** component). - Applications detail page Displays details about one client application (**Application Details** component). - Forums page Displays components for discussion forums (**Feed** component). - Member profile page Displays member profile information and allows the member to update their details (**User Profile** component). The page also shows users their API subscriptions and provides the option to unsubscribe from each API (**User Settings and User Subscriptions** component). ## Configure the API Group Page Variation To configure this variation, assign a new audience to this page variation for the API group record type: 1. In Experience Builder, use the page selector at the top left to open the **Community API Details** page. 2. Click the gear icon next to the page name to open the page properties. 3. Click the **Page variations** tab. 4. Click **New page variation**. 5. Select your preferred layout. 6. Click **Next**. 7. Enter a name for the new variation, such as **API Group**. 8. In the new page variation that displays, click the gear icon next to the page name to open the page properties. 9. Click the **Page variations** tab. 10. On the line item for your new page variation, click the context menu. 11. Under the **Audience** section, click **Assign**. 12. Select **New audience**. 13. Enter an audience name such as **API Group record type**. 14. Complete the **Audience Criteria** section with these values: - **Criteria type**: **Record > CommunityApi > Record Type > Name** - **Operator**: **equals** - **Value**: **ApiGroup** 15. Click **Save** and **Assign**. 16. After the new audience is assigned, use the components palette to add the desired components to your page variation. In the builder, the API Details button always shows the default variation, but when previewing as a guest, when previewing as an authenticated user, and in the published community, the button shows the correct variation. ## See Also - [Description of API Community Manager Lightning Components](https://docs.mulesoft.com/api-community-manager/acm-lightning-components) - [Site Look-and-Feel Customization](https://docs.mulesoft.com/api-community-manager/customize) - [Publish APIs](https://docs.mulesoft.com/api-community-manager/publish-apis) --- product: API Community Manager --- # Troubleshooting > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you encounter errors while you are using API Community Manager, refer to these explanations and instructions for recovery. - [Avoid a Potential Security Vulnerability](https://docs.mulesoft.com/api-community-manager/troubleshooting-avoid-a-potential-security-vulnerability) - [API Documentation Not Displaying in the API Details Page](https://docs.mulesoft.com/api-community-manager/troubleshooting-api-documentation-not-displaying) - [Approved Members Not Created or Emailed](https://docs.mulesoft.com/api-community-manager/troubleshooting-approved-members-not-created-or-emailed) - [Broken Images on Documentation Pages](https://docs.mulesoft.com/api-community-manager/troubleshooting-broken-images-on-documentation-pages) - [Cannot Create Applications When Application Limit is Reached](https://docs.mulesoft.com/api-community-manager/troubleshooting-cannot-create-applications-when-application-limit-is-reached) - [Changes to APIs Are Not Displaying](https://docs.mulesoft.com/api-community-manager/troubleshooting-changes-to-apis-are-not-displaying) - [Connection Not Established](https://docs.mulesoft.com/api-community-manager/troubleshooting-connection-not-established) - [Console Mocking Service Not Loading](https://docs.mulesoft.com/api-community-manager/troubleshooting-console-mocking-service-not-loading) - [Duplicate External Objects](https://docs.mulesoft.com/api-community-manager/troubleshooting-duplicated-external-objects) - [Empty Login Page](https://docs.mulesoft.com/api-community-manager/troubleshooting-empty-login-page) - [Error When Creating New Community from Template](https://docs.mulesoft.com/api-community-manager/troubleshooting-error-when-creating-new-community-from-template) - [Incorrect or Missing Data for One API Version](https://docs.mulesoft.com/api-community-manager/troubleshooting-incorrect-or-missing-data-for-one-api-version) - [Issues with Branded Emails](https://docs.mulesoft.com/api-community-manager/troubleshooting-issues-with-branded-emails) - [Missing Feature Error](https://docs.mulesoft.com/api-community-manager/troubleshooting-missing-feature-error) - [Missing Request Access Button](https://docs.mulesoft.com/api-community-manager/troubleshooting-missing-request-access-button) - [Unauthorized Endpoint Error](https://docs.mulesoft.com/api-community-manager/troubleshooting-unauthorized-endpoint-error) ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Unauthorized Endpoint Error > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If calling a real endpoint from the console shows an **Unauthorized Endpoint** error: 1. Open Salesforce setup. 2. Open your community’s content security policy (CSP) trusted sites list. 3. Ensure that the list includes the endpoint site domain. The console works in the user’s browser and can call only trusted endpoint sites. ## See Also - [Known Issues](https://help.salesforce.com/s/issues) --- product: API Community Manager --- # Upgrades > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. Upgrades are applied automatically to Anypoint API Community Manager versions 2.2.0 and later. Upgrades with new features are applied to sandbox environments four weeks before they are applied to production environments. Upgrades with only bug fixes are applied to sandbox environments two weeks before they are applied to production environments. To ensure that the community administrator controls how their audience receives community changes, new functionality in upgrades is typically disabled until the community administrator enables it. Because API Community Manager follows the standard support policy for MuleSoft cloud offerings, only the latest version of API Community Manager 2.x is supported. Additionally, API Community Manager 1.x reached End of Life (EOL) on August 14, 2021. For information about upgrade notifications, see [important notifications](https://docs.mulesoft.com/api-community-manager/notifications). ## Upgrading to Version 2.7.0 Instead of using user profiles, API Community Manager now uses the following permission sets to define the visibility and access to external objects and Apex classes. - ACM Admin User - ACM Guest User - ACM Member User For more information about using permission sets, see [Permission Sets](https://help.salesforce.com/s/articleView?id=sf.perm_sets_overview.htm&type=5). As part of the API Community Manager package, member user profiles are assigned to permission sets automatically. After the package is installed, a trigger searches for users with a Customer Community Profile and assigns the users to the **ACM Member User** permission set. For guest users, you must assign the **ACM Guest User** permission set using the API Community Manager Diagnostics or by manually adding the guest user profile to the permission set. For custom profiles, you must update to the permission set after each release is installed. To avoid manual updates, assign the permission sets to custom profiles. After the new package is installed, the custom profiles are assigned to the permission sets automatically. To create a new user, you must use API Community Manager Diagnostics or manually set the user profile to the corresponding permission set. ## Upgrading to Version 2.5.0 After installing the package for version 2.5.0, follow these steps: 1. Manually update the administrator profile. 1. Click **Setup** > **Profiles** > **System Admin** > **Apex Class Access**, add **ApiCuratorController** to enable **Apex Classes**, and **Save**. 2. Add the new Member Management tab to Api Curator. 3. Click **Interface Setup** > **User Management Settings** > **Disable Enhanced Profile User Interface**, change the **User Management Settings**, and disable the **Enhanced Profile User**. 4. Click **Setup** > **Profiles** > **Edit**, scroll to **Custom Tab Settings** > **Member Management** > **Default On**, and **Save**. 5. Click **Interface Setup** > **User Management Settings** > and enable **Enhanced Profile User Interface**. 2. In each community, run the [diagnostics](https://docs.mulesoft.com/api-community-manager/diagnostics) and click "Fix all" to set permissions on all new objects. 3. To use the new API discussion forum feeds, enable feed tracking. 1. In each community, open **Setup**, in **Quick Find** search for "Feed Tracking" and select it, select the **CommunityApi** object, enable the option **Enable Feed Tracking**, and **Save**. 2. In the builder, in the **Feed** component set **Feed Type** to **Group or Record**, and in the **Feed Publisher** component set **Feed Type** to **Record**. 3. To configure which users are visible to other users in the API discussion forum feeds, optionally enable portal user visibility, site user visibility, or both. 1. Optionally open **Setup** > **Sharing Settings** > **Organization-Wide Defaults** > **Edit** and enable **Portal User Visibility**. Portal user availability enables portal users in the same customer or partner portal account to see each other, regardless of the organization-wide defaults. 2. Optionally open **Setup** > **Sharing Settings** > **Organization-Wide Defaults** > **Edit** and enable **Site User Visibility**. Site user availability enables site users in the same site to see each other, regardless of the organization-wide defaults. ## Upgrading to Version 2 After you install an Anypoint API Community Manager upgrade, it is not possible to undo the installation and revert to a previous version. Therefore, be sure to create safe sandbox environments in which you test each upgrade before installing it in your production environment. For more information, see [sandboxes](https://docs.mulesoft.com/api-community-manager/sandboxes). Upgrade directly from your current version to the latest version. To upgrade your API community: 1. Before performing any steps, read all the steps, including preinstallation and postinstallation. 2. If necessary, notify your customers and stakeholders of the upgrade, and that APIs, docs, and client app pages may not work during the upgrade during the time after installing the new package and before completing the required configuration changes. 3. Ensure that your Salesforce organizations have the External Data Change Tracking for OData 4.0 Adapter feature enabled: 1. Before upgrading the package in your production or sandbox organization, check that your organization has this feature enabled by going to **Setup** > **External Data Source** and editing the Exchange data source. 2. If you don’t see an **Eligible for External Change Data Capture** checkbox, raise a support case through the MuleSoft support portal and list the IDs of all your Salesforce API Community Manager organizations, including the IDs of all production and sandbox organizations. Attempting to upgrade the package without this feature enabled causes the process to fail with errors due to missing objects and fields related to a missing ChangeEvent object. 4. Open the API Community Manager control panel. If you don’t see **API Community Manager** in **App Launcher**, follow [Enable API Community Manager Control Panel](https://docs.mulesoft.com/api-community-manager/manual-setup#enable-api-community-manager-control-panel). 5. In the same browser session, open the **package upgrade installation link** provided by your MuleSoft representative. 6. Verify the version number and name of the release. 7. If you are upgrading from a package version earlier than 1.26, follow the [Preinstallation Steps When Upgrading from a Version Earlier Than 1.26](#pre-126) and then continue with these instructions. 8. If you are upgrading from a package version earlier than 1.74, follow the [Preinstallation Steps When Upgrading from a Version Earlier Than 1.74](#pre-174) and then continue with these instructions. 9. If you are upgrading from a package version earlier than 1.77, follow the [Preinstallation Steps When Upgrading from a Version Earlier Than 1.77](#pre-177) and then continue with these instructions. 10. Select **Install for admins only**. 11. Select **Upgrade**. This starts the installation process. When the upgrade finishes, you receive a notification email. 12. If you are upgrading from package version 1.62 or earlier, follow the [Postinstallation Steps When Upgrading from Version 1.62 or Earlier](#post-162) and then continue with these instructions. 13. If you are upgrading from a package version earlier than 1.69, follow the [Postinstallation Steps When Upgrading from a Version Earlier Than 1.69](#post-169) and then continue with these instructions. 14. If you are upgrading from a package version earlier than 1.74, follow the [Postinstallation Steps When Upgrading from a Version Earlier Than 1.74](#post-174) and then continue with these instructions. 15. If you are upgrading from a package version earlier than 1.77, follow the [Postinstallation Steps When Upgrading from a Version Earlier Than 1.77](#post-177) and then continue with these instructions. 16. If you are upgrading from a package version earlier than 1.79, follow the [Postinstallation Steps When Upgrading from a Version Earlier Than 1.79](#post-179) and then continue with these instructions. 17. If you are upgrading from a package version earlier than 1.80.1, follow the [Postinstallation Steps When Upgrading from a Version Earlier Than 1.80.1](#post-1801) and then continue with these instructions. 18. If you are upgrading from a package version earlier than 1.82, follow the [Postinstallation Steps When Upgrading from a Version Earlier Than 1.82](#post-182) and then continue with these instructions. 19. If you are upgrading from a package version earlier than 2.0, follow the [Postinstallation Steps When Upgrading from a Version Earlier Than 2.0](#post-20). ## Preinstallation Steps When Upgrading from a Version Earlier Than 1.26 If you are upgrading from a package version earlier than 1.26, follow these steps: 1. Go to Salesforce Workbench: [https://workbench.developerforce.com/](https://workbench.developerforce.com/) 2. Select Standard. 3. Enter your username and password. 4. Click the Login button. 5. In the Queries menu, click SOQL Query. 6. In the Object list, select **NavigationLinkSet**. 7. In the Fields list, select **Id** and **MasterLabel**. 8. Click the Query button. 9. The query results are displayed as a list of records. 10. Find the records with the **MasterLabel** field set to **NTO\_Nav0** and **acm\_template\_Nav0**. 11. Click the **Id** of the record with the **MasterLabel** field **NTO\_Nav0**. 12. Click the Delete button. 13. Click the Confirm delete button. 14. Click the **Id** of the record with the **MasterLabel** field **acm\_template\_Nav0**. 15. Click the Delete button. 16. Click the Confirm delete button. 17. Continue with normal package installation. Return to the main list of upgrade instructions to continue. ## Preinstallation Steps When Upgrading from a Version Earlier Than 1.74 If you are upgrading from a package version earlier than 1.74, follow these steps: 1. Create a new named credential: 1. Click **Setup** > **Named Credentials**. 2. Copy the configuration information from the named credential `anypoint_mulesoft`. 3. Create a new named credential with the name `Anypoint` and matching configuration. 2. Update the external data source: 1. Click **Setup** > **External Data Source** > **Exchange** > **Edit**. 2. Set **URL** to `callout:Anypoint/odatabridge/odata.svc/`. 3. Ensure that **Eligible for External Change Data Capture** is enabled. 4. Save. 3. Update the previous named credential: 1. Click **Setup** > **Named Credentials**. 2. Modify the named credential `anypoint_mulesoft`. 3. Set **Identity Type** to **Named Principal**. 4. Set **Authentication Protocol** to **Password Authentication**. 5. Set **Username** to the placeholder value `user`. 6. Set **Password** to the placeholder value `pass`. 7. In the section **Callout Options**, enable **Generate Authorization Header**, **Allow Merge Fields in HTTP Header**, and **Allow Merge Fields in HTTP Body**. Return to the main list of upgrade instructions to continue. ## Preinstallation Steps When Upgrading from a Version Earlier Than 1.77 If you are upgrading from a package version earlier than 1.77, follow these steps: 1. Open the **Developer Console** and open the **Query Editor**. 2. Enter `SELECT Id, Name, Owner.Name, Owner.IsActive FROM acm_pkg__CommunityApi__c WHERE Owner.IsActive = false` and click **Execute**. 3. If the query lists any users, change their status to active with the [reactivate a user](https://help.salesforce.com/s/articleView?language=en_US&id=000336144&mode=1&type=1) instructions. Return to the main list of upgrade instructions to continue. ## Postinstallation Steps When Upgrading from Version 1.62 or Earlier If you are upgrading from package version 1.62 or earlier, after installing, ensure both `Member` and `Guest` profiles have field-level `Read` access to the `ParentId` field in the `CommunityAPI` object: 1. Configure the `Member` profile: 1. Click **Setup** > **Profiles**. 2. Open the `Member` profile. 3. Click **Object settings** > **CommunityAPI**. 4. Ensure the `ParentId` field has `Read` access. 5. Save. 2. Configure the `Guest` profile: 1. Click **Community builder** > **Settings** > **General**. 2. Open the `Guest` profile. 3. Click **Object settings** > **CommunityAPI**. 4. Ensure the `ParentId` field has `Read` access. 5. Save. Return to the main list of upgrade instructions to continue. ## Postinstallation Steps When Upgrading from a Version Earlier Than 1.69 If you are upgrading from a package version earlier than 1.69, update the permissions of the `Member` and `Guest` profiles on the **SelfRegisterUserRequests** object: 1. Configure the `Member` profile permissions: 1. Click **Setup** > **Profiles**. 2. Open the `Member` profile. 3. Click **Object settings** > **SelfRegisterUserRequests**. 4. Ensure there are no object level permissions and no field level permissions for this profile on this object. 2. Configure the `Guest` profile permissions: 1. Open the community builder. 2. Click **Settings** > **General**. 3. Open the `Guest` profile. 4. Click **Object settings** > **SelfRegisterUserRequests**. 5. Ensure that object level permissions include only `Create` and `Read`. 6. Ensure that field level permissions for all fields include only `Read` and `Edit`. 3. Check that your permissions match those in the [Configure Profiles and Permissions](https://docs.mulesoft.com/api-community-manager/create-community#configure-profiles-and-permissions) documentation. Return to the main list of upgrade instructions to continue. ## Postinstallation Steps When Upgrading from a Version Earlier Than 1.74 If you are upgrading from a package version earlier than 1.74, follow these steps: 1. Click **Setup** > **External Data Source** > **Exchange**. 2. In the section **Custom HTTP Headers**, set **X-Auth-Proto** to the value `'JWT'`, including the single quotes. 3. Save. 4. Upgrading to version 1.74 removes the **Spec Downloader** component from the community API Details page. In the community builder, in **Pages** > **CommunityApi** > **API Detail**, add the **Spec Downloader** component. Return to the main list of upgrade instructions to continue. ## Postinstallation Steps When Upgrading from a Version Earlier Than 1.77 **Potential degraded service of your community**: Upgrading from a package version earlier than 1.77 requires mandatory configuration updates. When the new package is installed, user access to assets in the community is disabled. When the configuration is complete, user access to assets in the community is enabled. If you are upgrading from a package version earlier than 1.77, follow these steps: Configure sharing settings for guests: 1. In **Setup**, search for **Security** using the **Quick Find** box and click **Sharing Settings**. 2. Scroll to the **CommunityAssetVersions Sharing Rules** section near the bottom of the page and click **New**. 3. In the **Rule Name** section, update **Label** with `[Site Name] Sharing Rule`. 4. In the **Select your rule type** section, select `Guest user access, based on criteria`. 5. In the **Select which records to be shared** section, add these criteria. 1. **Field**: `Community Name` **Operator**: `equals` **Value**: `[Site Name]` 2. **Field**: `Visibility` **Operator**: `equals` **Value**: `Public` 6. In **Select the users to share with**, select `[Site Name] Site Guest User`. 7. In **Select the level of access for the users**, select **Read Only**. 8. Save. 9. In the API Community Manager control panel, click **Shortcuts to applications** and select **Site Builder**. Click **Settings** > **General**. 10. In the **Guest user profile** section, click **\[Site Name\] Profile**. 11. For each of the four objects **CommunityAssetVersions**, **AnypointAssetCategories**, **AnypointAssets**, and **AnypointAssetVersion**, in **Object Permissions** ensure **Read** is enabled, and in **Field Permissions** ensure all fields have **Read Access** enabled. 12. For the object **CommunityAssetVersions**, in **Custom Object Permissions** ensure **Read** is enabled. 13. For the object **AnypointApiInstances**, in **Field Permissions** ensure that **Version** and **VersionGroup** have **Read Access** enabled. 14. In **External Object Permissions**, ensure each item has **Read** enabled. 15. Save. Configure sharing settings for members: 1. In **Setup**, search for **Digital Experiences** using the **Quick Find** box, and click **Settings**. 2. Scroll to **Sharing Sets** and click **Edit** next to the set **\[Site Name\] Sharing Set**. 3. In the **Select Objects** section, select **CommunityAssetVersions** from **Available Objects** and add it to **Selected Objects**. 4. In the **Configure Access** section, select **Set Up** under the **Action** column next to **CommunityAssetVersions**. 5. In the **Access Mapping for \*CommunityAssetVersions** page enter these values. 1. **Account** in the **User** list. 2. **acm\_pkg\_\_Account\_c** in the **Target CommunityAssetVersions** list. 3. **Read Only** in the **Access Level** list. 6. Update. 7. Save. 8. In **Setup**, search for **Users** using the **Quick Find** box and click **Profiles**. 9. Repeat the following steps for each of the profiles for your users. There may be one or more user profiles to configure. 10. Click the profile. 11. In the profile page, click **Edit**. 12. For each of the four objects **CommunityAssetVersions**, **AnypointAssetCategories**, **AnypointAssets**, and **AnypointAssetVersion**, in **Object Permissions** ensure **Read** is enabled, and in **Field Permissions** ensure all fields have **Read Access** enabled. 13. For the object **CommunityAssetVersions**, in **Custom Object Permissions** ensure **Read** is enabled. 14. For the object **AnypointApiInstances**, in **Field Permissions** ensure that **Version** and **VersionGroup** have **Read Access** enabled. 15. In **External Object Permissions**, ensure each item has **Read** enabled. 16. Save. > [!NOTE] If you ever change the name of your community, be sure to update this configuration. Return to the main list of upgrade instructions to continue. ## Postinstallation Steps When Upgrading from a Version Earlier Than 1.79 If you are upgrading from a package version earlier than 1.79, update the permissions of the `Member` and `Guest` profiles on the **AnypointClientProviders** object: 1. Configure the `Member` profile permissions: 1. Click **Setup** > **Profiles**. 2. Open the `Member` profile. 3. Click **Object settings** > **AnypointClientProviders**. 4. Ensure **Read** is enabled, and in **Field Permissions** ensure all fields have **Read Access** enabled. 2. Configure the `Guest` profile permissions: 1. Open the community builder. 2. Click **Settings** > **General**. 3. Open the `Guest` profile. 4. Click **Object settings** > **AnypointClientProviders**. 5. Ensure **Read** is enabled, and in **Field Permissions** ensure all fields have **Read Access** enabled. 3. Check that your permissions match those in the [Configure Profiles and Permissions](https://docs.mulesoft.com/api-community-manager/create-community#configure-profiles-and-permissions) documentation. Return to the main list of upgrade instructions to continue. ## Postinstallation Steps When Upgrading from a Version Earlier Than 1.80.1 If you are upgrading from a package version earlier than 1.80.1, update the permissions of the `Member` and `Guest` profiles on the **AnypointGrantTypes** object, and ensure both `Member` and `Guest` profiles have field-level `Read` access to the `GrantTypes` field in the **AnypointApplications** object: 1. Configure the `Member` profile permissions: 1. Click **Setup** > **Profiles**. 2. Open the `Member` profile. 3. Click **Object settings** > **AnypointGrantTypes**. 4. Ensure that **Read** is enabled and, in **Field Permissions**, ensure that all fields have **Read Access** enabled. 5. Click **Object settings** > **AnypointApplications**. 6. Ensure that the `GrantTypes` field has `Read` access. 7. Save. 2. Configure the `Guest` profile permissions: 1. Open the community builder. 2. Click **Settings** > **General**. 3. Open the `Guest` profile. 4. Click **Object settings** > **AnypointGrantTypes**. 5. Ensure that **Read** is enabled and, in **Field Permissions**, ensure that all fields have **Read Access** enabled. 6. Click **Object settings** > **AnypointApplications**. 7. Ensure that the `GrantTypes` field has `Read` access. 8. Save. 3. Verify that your permissions match those in the [Configure Profiles and Permissions](https://docs.mulesoft.com/api-community-manager/create-community#configure-profiles-and-permissions) documentation. Return to the main list of upgrade instructions to continue. ## Postinstallation Steps When Upgrading from a Version Earlier Than 1.82 If you are upgrading from a package version earlier than 1.82, use either the automatic or manual configuration method to update the permissions of the **Member** and **Guest** profiles on the **AnypointAssetCustomFields** and **AnypointCustomFields** objects, and ensure both **Member** and **Guest** profiles have field-level **Read** access to the **AssetVersionId** field in the **AnypointApiInstances** object. Automatic configuration: 1. From the Anypoint API Community Manager control panel, open the Salesforce **App Launcher** and search for **API Community Manager Diagnostics**. 2. In the **User Access** tab, in the section **Guest User**, click **Fix all**. 3. In the **User Access** tab, in the section **Member User**, click **Fix all**. 4. Verify that your permissions match those in the [Configure Profiles and Permissions](https://docs.mulesoft.com/api-community-manager/create-community#configure-profiles-and-permissions) documentation. Manual configuration: 1. Configure the **Member** profile permissions: 1. Click **Setup** > **Profiles**. 2. Open the **Member** profile. 3. Click **Object settings** > **AnypointAssetCustomFields**. 4. Ensure that **Read** is enabled and, in **Field Permissions**, ensure that all fields have **Read Access** enabled. 5. Click **Object settings** > **AnypointCustomFields**. 6. Ensure that **Read** is enabled and, in **Field Permissions**, ensure that all fields have **Read Access** enabled. 7. Click **Object settings** > **AnypointApiInstances**. 8. Ensure that the **AssetVersionId** field has **Read** access. 9. Save. 10. Click **Apex Class Access**. 11. Click **Edit**. 12. Select the class **acm\_pkg.ApiVersionHeader** in the list and click **Add** to make it accessible. 13. Click **Save**. 2. Configure the **Guest** profile permissions: 1. Open the community builder. 2. Click **Settings** > **General**. 3. Open the **Guest** profile. 4. Click **Object settings** > **AnypointAssetCustomFields**. 5. Ensure that **Read** is enabled and, in **Field Permissions**, ensure that all fields have **Read Access** enabled. 6. Click **Object settings** > **AnypointCustomFields**. 7. Ensure that **Read** is enabled and, in **Field Permissions**, ensure that all fields have **Read Access** enabled. 8. Click **Object settings** > **AnypointApiInstances**. 9. Ensure that the **AssetVersionId** field has **Read** access. 10. Save. 11. Click **Apex Class Access**. 12. Click **Edit**. 13. Select the class **acm\_pkg.ApiVersionHeader** in the list and click **Add** to make it accessible. 14. Click **Save**. 3. Verify that your permissions match those in the [Configure Profiles and Permissions](https://docs.mulesoft.com/api-community-manager/create-community#configure-profiles-and-permissions) documentation. Return to the main list of upgrade instructions to continue. ## Postinstallation Steps When Upgrading from a Version Earlier Than 2.0 If you are upgrading from a package version earlier than 2.0, use either the automatic or manual configuration method to update the permissions of the member and guest profiles. Both profiles require field-level read access to the **AssetId** field in the **AnypointApiInstances** object. Automatic configuration: 1. From the Anypoint API Community Manager control panel, open the Salesforce **App Launcher** and search for **API Community Manager Diagnostics**. 2. In the **User Access** tab, in the sections **Guest User** and **Member User**, click **Fix all**. 3. Verify that your permissions match those in the [Configure Profiles and Permissions](https://docs.mulesoft.com/api-community-manager/create-community#configure-profiles-and-permissions) documentation. Manual configuration: 1. Configure the member profile permissions: 1. Click **Setup** > **Profiles**. 2. Open the **Member** profile. 3. Click **Object settings** > **AnypointApiInstances**. 4. Ensure that the **AssetId** field has **Read** access. 5. Save. 2. Configure the guest profile permissions: 1. Open the community builder. 2. Click **Settings** > **General**. 3. Open the **Guest** profile. 4. Click **Object settings** > **AnypointApiInstances**. 5. Ensure that the **AssetId** field has **Read** access. 6. Save. 3. Verify that your permissions match those in the [Configure Profiles and Permissions](https://docs.mulesoft.com/api-community-manager/create-community#configure-profiles-and-permissions) documentation. ## See Also - [Important Notifications](https://docs.mulesoft.com/api-community-manager/notifications) - [Sandboxes](https://docs.mulesoft.com/api-community-manager/sandboxes) - [Product Versioning and Back Support Policy](https://www.salesforce.com/en-us/wp-content/uploads/sites/4/documents/legal/Agreements/versioning-back-support-policy.pdf) --- product: API Community Manager --- # Verify the Installation > For the full documentation index, see: https://docs.mulesoft.com/llms.txt To verify your installation and configuration: 1. Open the Salesforce App Launcher. 2. Use the search bar to find and open **API Community Manager Diagnostics**. 3. Check the information about your Salesforce organization in the **Organization** section. 1. Confirm that **Package Version** shows the version of your currently installed API Community Manager package. 2. Confirm that **Connectivity with Anypoint** shows the URL your API community uses to access Anypoint Platform and a green check. If **Connectivity with Anypoint** does not show the URL and a green check, perform the [prerequisite steps](https://docs.mulesoft.com/api-community-manager/installation-prerequisites) and then repeat the installation. 3. Confirm that **Cache** shows that the cache is configured. If **Cache** shows that the cache is not configured, [configure the platform cache](https://docs.mulesoft.com/api-community-manager/cache). 4. Check the information about each of your communities in the **ACM Communities** section. Each community shows **Community status**, whether the community is **Public**, the **Published assets status**, and options to open the community or open Site Builder. If some of your communities are not public, or some of your communities are not yet implemented, then this information is visible here. If your list of communities is empty, [create a community](https://docs.mulesoft.com/api-community-manager/create-community). 5. Open a community and verify that the API console is rendered correctly. 1. Add any of your Exchange APIs to your community. 2. In the Site Builder preview mode, navigate to the console. 3. Verify that the console is rendered correctly for your API. ![API console](/mulesoft/current/en-us/api-community-manager/_images/api-console.png) If any of these checks is not successful, refer to the [Troubleshooting](https://docs.mulesoft.com/api-community-manager/troubleshooting) section.