Establishing a Connection
This section describes how to connect to Basecamp from your AnyPoint Studio project. You can use wizards or the XML editor in AnyPoint Studio to define connection properties in a global element. Global elements can be reused across other building blocks in your project.
Create a Connection in the Visual Editor
Complete the following steps to visually add the connector to your project and create a connection:
- Create a new Mule Project in Anypoint Studio.
- From the palette, drag the connector into your Mule flow.
- On the Message Flow canvas, double-click the connector icon to open the connector properties in the Properties pane.
- In the General section, click Add and define the Basecamp connection properties. Note that the user name and Password properties always appear here. The user name must be set as it is used as the key for the connection if connection pooling is enabled.
Create a Connection in the XML Editor
Set connection properties in the <cdata-basecamp:config> element in the root of the project's XML.
Note: The user name attribute must always be included here and serves as the key for the connection if connection pooling is enabled.
<cdata-basecamp:config name="CData_Basecamp_Configuration" username="MyName" connectionProperty1="MyProperty" ... doc:name="CData Basecamp: Configuration"/>
Connecting to Basecamp
In addition to authenticating, set the following connection properties to access Basecamp tables.
- Schema: Set this to "V2" or "V3" to connect to a Basecamp 2 or Basecamp 3 account.
- ProjectId: This is a required parameter for most table operations. You can query the Projects table to obtain this value.
If you do not specify the ProjectId connection property, the connector will use the first project Id returned from the Projects table in your first authentication to Basecamp.
- AccountId: You can find the AccountId in the URL after you log in to Basecamp in a web browser:
Authenticating to Basecamp
Basecamp 2 uses basic or OAuth 2.0 authentication. You can use basic authentication to connect to your own account, or you can use OAuth to enable other users to log into their own accounts.
Basecamp 3 requires OAuth 2.0.
Authenticate via Basic Authentication
In basic authentication, you use your login credentials to connect. Set the following properties:
- User: This is the username you use to log in to Basecamp.
- Password: This is the password you use to log in to Basecamp.
- AuthScheme: Set this to Basic.
Authenticate via OAuth Authentication
To use OAuth, set the AuthScheme to OAuth.
You can connect without setting any connection properties for your user credentials. Set InitiateOAuth to GETANDREFRESH to avoid repeating the OAuth exchange and manually setting the OAuthAccessToken.
When you connect, the connector opens the Basecamp OAuth endpoint in your default browser. Log in and grant permissions to the connector. The connector then completes the following OAuth process:
- Extracts the access token from the callback URL and authenticates requests.
- Obtains a new access token when the old one expires.
- Saves OAuth values in OAuthSettingsLocation to be persisted across connections.
See Using OAuth Authentication for other OAuth authentication flows.
Configure Connector Operations
The connector is an operation-based connector; its operations correspond to SQL statements and expose other functionality such as Schema Discovery. See Using the Connector (Mule 3.8+) for more information on executing SQL to Basecamp in Mule applications.