Using Anypoint Studio to Configure Azure Cosmos DB 1.0 | MuleSoft Documentation
# Using Anypoint Studio to Configure Azure Cosmos DB 1.0
Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files.
To add and configure a connector in Studio:
  1. Create a Mule project.
  2. Add the connector to your Mule project.
  3. Configure a source for the connector’s flow.
  4. Add a connector operation to the flow.
  5. Configure a global element for the connector.
  6. Configure the other connector fields.


When you run the connector, you can view the app log to check for problems in real time, as described in View the App Log.
If you are new to configuring connectors in Studio, see Using Anypoint Studio to Configure a Connector. If, after reading this topic, you need additional information about the connector fields, refer to the Azure Cosmos DB Connector Reference.
## Create a Mule Project
In Studio, create a new Mule project in which to add and configure the connector:
  1. In Studio, select **File > New > Mule Project**.
  2. Enter a name for your Mule project and click **Finish**.


## Add the Connector to Your Mule Project
Add Anypoint Connector for Azure Cosmos DB (Azure Cosmos DB Connector) to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s `pom.xml` file:
  1. In the **Mule Palette** view, click **(X) Search in Exchange**.
  2. In the **Add Dependencies to Project** window, type `azure cosmos db` in the search field.
  3. Click **Azure Cosmos DB Connector** in **Available modules**.
  4. Click **Add**.
  5. Click **Finish**.


Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace.
## Configure a Source
A source initiates a flow when a specified condition is met. You can configure one of these sources to use with Azure Cosmos DB:
  * HTTP Listener Initiates a flow each time it receives a request on the configured host and port
  * Scheduler Initiates a flow when a time-based condition is met


For example, to configure an HTTP Listener source, follow these steps:
  1. In the **Mule Palette** view, select **HTTP > Listener**.
  2. Drag **Listener** to the Studio canvas.
  3. On the **Listener** configuration screen, optionally change the value of the **Display Name** field.
  4. Specify a value for the **Path** field.
  5. Click the plus sign (**+**) next to the **Connector configuration** field to configure a global element that can be used by all instances of the HTTP Listener source in the app.
  6. On the **General** tab, specify the connection information for the connector.
  7. On the **TLS** tab, optionally specify the TLS information for the connector.
  8. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy.
  9. Click **Test Connection** to confirm that Mule can connect with the specified server.
  10. Click **OK**.


## Add a Connector Operation to the Flow
When you add a connector operation to your flow, you are specifying an action for that connector to perform.
To add an operation for Azure Cosmos DB Connector, follow these steps:
  1. In the **Mule Palette** view, select **Azure Cosmos DB** and then select the desired operation.
  2. Drag the operation onto the Studio canvas to the right of the source.


## Configure a Global Element for the Connector
When you configure a connector, configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials that the connector requires to access the target Azure Cosmos DB system. Azure Cosmos DB Connector supports Key Token authentication and Resource Token authentication.
To configure the global element for Azure Cosmos DB Connector, follow these steps:
  1. Select the operation in the Studio canvas.
  2. In the configuration screen for the operation, click the plus sign (**+**) next to the **Connector configuration** field to access the global element configuration fields.
  3. On the **General** tab, in **Connection** , select the authentication method to configure.
     * Select Key Token Config to configure Key Token authentication.
     * Select Resource Token Config to configure Resource Token authentication.
You can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, refer to Anypoint Connector Configuration.
  4. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy.
  5. Click **Test Connection** to confirm that Mule can connect with the specified server.
  6. Click **OK**.


### Key Token Authentication
Enter the following information on the **General** tab of the **Global Element Properties** screen to configure Key Token authentication:
Field | User Action  
---|---  
Configuration name.  
**Database account url** |  Database account URL.  
All access key token that enables users to have full control of the Cosmos DB resources.  
Version of the Cosmos DB REST service.  
### Resource Token Authentication
Enter the following information on the **General** tab of the **Global Element Properties** screen to configure Resource Token authentication:
Field | User Action  
---|---  
Configuration name.  
**Database account url** |  Database account URL.  
**Resource token** |  Resource token.  
Version of the Cosmos DB REST service.  
## Configure Additional Connector Fields
After you configure a global element for Azure Cosmos DB Connector, configure the other required fields for the connector. The required fields vary depending on which connector operation you use.
## View the App Log
To check for problems, you can view the app log as follows:
  * If you’re running the app from Anypoint Platform, the app log output is visible in the Anypoint Studio console window.
  * If you’re running the app using Mule from the command line, the app log output is visible in your OS console.


Unless the log file path is customized in the app’s log file (`log4j2.xml`), you can also view the app log in the default location `MULE_HOME/logs/<app-name>.log`.
## See Also
  * Introduction to Anypoint Connectors
  * Using Anypoint Studio to Configure a Connector
  * Azure Cosmos DB Reference
  * MuleSoft Help Center