This integration guide explains how to add data from Amazon MySQL RDS to your Source Medium.
Requirements
- Administrator access for the AWS account
Steps
- Set up the required permissions and privileges in Amazon Web Services (AWS).
- Create/manage Security Groups - to whitelist Source Medium’s IP addresses.
- View database details - to retrieve the database’s connection details.
- CREATE USER privilege for MySQL database - to create a database user for Stitch.
- GRANT OPTION privilege in Amazon MySQL RDS - to grant the necessary privileges to the Stitch database user.
- Configure database server connection settings to allow traffic from Stitch. There are two ways to connect your database:
- A direct connection will work if your database is publicly accessible.
- An SSH tunnel is required if your database isn’t publicly accessible. This method uses a publicly accessible instance, or an SSH server, to act as an intermediary between Source Medium and your database. The SSH server will forward traffic from Source Medium through an encrypted tunnel to the private database.
- Whitelist Source Medium's IP addresses
- This is required only if IP address rules (Setup > Company > Enable Features > Company > Access) are enabled for your NetSuite account.
- Add Source Medium's IP addresses to your NetSuite company information
- Sign into your NetSuite account as an administrator
- Click Setup > Company > Company Information
- In the Allowed IP addresses field, add a comma-delimited list of the Source Medium IP addresses:
52.23.137.21/32,52.204.223.208/32,52.204.228.32/32,52.204.230.227/32
Note: Make sure you don’t overwrite or change any existing IP addresses in this field - doing so may cause access issues for you and other NetSuite users in your account.
d. Click Save
This is an example of what the screen should look like:
- Enable Web Services in NetSuite to extract data using the SuiteTalk API
- Sign into your NetSuite account as an administrator
- Using the global search, type “page: enable” and click the Page: Enable Features result
- From the Enable Features page, go to SuiteCloud > SuiteTalk (Web Services) section, and check the box for Web Services
- Enable token-based authentication settings to extract data using the SuiteTalk API
- From the Enable Features page, go to the Manage Authentication section
- Check the Token-based Authentication box
- Click Save
Your settings should look like this:
If you have trouble with this task, contact Source Medium[link].
[if available] Additional information and related articles:
Step 1:
Step 1.2:
Step 2: C
Step 2.1:
Step 2.2: Enable token-based authentication
Step 3: Create an integration record for Source Medium
Next, you’ll create an integration record for Source Medium. This will uniquely identify Source Medium in your NetSuite account.
- Using the global search, type page: integrations and click the Page: Manage Integrations result. 2. On the Integrations page, click the New button. 3. On the New Integration page, fill in the following fields: 1. Name: Enter a name for the integration. For example: Source Medium 2. State: Select Enabled. 4. In the Authentication tab, select the Token-based Authentication option. 5. Click the Save button. The confirmation page will display a Consumer key/secret section. 6. Copy the Consumer Key and Secret somewhere handy. You’ll need these credentials to complete the setup in Source Medium.
Step 4: Create a Source Medium NetSuite role and configure permissions
We recommend that you create a Source Medium-specific role and user for us. We suggest this to ensure that we don’t encounter issues with replication due to NetSuite’s API limitations.
Currently, a single NetSuite user is allowed to only have a single open API session at a time. If the user connected to Source Medium has another connection elsewhere, replication problems will arise.
Step 4.1: Create a Source Medium NetSuite role
1. Using the global search, type page: new role and click the Page: New Role result. 2. On the Role page, enter a name for the role in the Name field. For example: Source Medium 3. In the Authentication section, check the Web Services Only Role box.
Step 4.2: Configure role permissions
Next, you’ll grant permissions to the role. In the tabs below, you’ll find the following:
- Adding permissions - Step-by-step instructions for adding permissions to the role on the Create Role page.
- Required permissions - The minimum permissions required to successfully connect Source Medium to NetSuite.
These permissions are the minimum required to successfully connect.
Permission | Tab | Level |
---|---|---|
Custom Body Fields | Setup | View |
Custom Fields | Setup | View |
Custom Record Types | Setup | View |
Deleted Records | Setup | Full |
Log in using Access Tokens | Setup | Full |
Perform Search | Lists | View |
User Access Tokens | Setup | Full |
Web Services | Setup | Full |
- Object permissions - The permissions required to access and replicate data for specific objects in NetSuite. We recommend granting only the permissions required for the objects you want to replicate.
In the table below are object-specific permissions and the tables they correspond to. The permissions for a given table must be granted to the Source Medium role in order to access and replicate data for the table.
The columns in the table are as follows:
- Table name - The name of the Source Medium table.
- Tab The tab in the Create Role page that contains the permission.
- Permission The permission required to access and replicate data for the table.
- Level The level of permission required to access and replicate data for the table. This will usually be View.
Table name | Permission | Tab | Level | |
---|---|---|---|---|
Account | Accounts | Lists | View | |
BillingAccount | Customers | Lists | View | |
Budget | Set Up Budgets | Lists | View | |
Charge | Charge | Transactions | View | |
ContactCategory | CRM Lists | Setup | View | |
ContactRole | CRM Lists | Setup | View | |
CostCategory | Accounting Lists | Setup | View | |
CurrencyRate | Currency | Lists | View | |
CustomList | Custom Lists | Setup | View | |
Customer | Customers | Lists | View | |
CustomerCategory | Accounting Lists | Setup | View | |
CustomerStatus | Customer Status | Setup | View | |
Deleted | Deleted Records | Setup | Full | |
ExpenseCategory | Expense Categories | Lists | View | |
FairValuePrice | Fair Value Price | Lists | View | |
InboundShipment | Inbound Shipment | Lists | View | |
InventoryNumber | Items | Lists | View | |
Item | [Item Type] | Lists | View | |
ItemAccountMapping | Item Account Mapping | Setup | View | |
ItemDemandPlan | Item Demand Plan | Lists | View | |
ItemRevision | Item Revisions | Lists | View | |
ItemSupplyPlan | Item Supply Plan | Lists | View | |
Location | Locations | Lists | View | |
ManufacturingCostTemplate | Manufacturing Cost Template | Lists | View | |
ManufacturingOperationTask | Work Orders | Transactions | View | |
ManufacturingRouting | Manufacturing Routing | Lists | View | |
Nexus | Tax Items | Lists | View | |
OtherNameCategory | Accounting Lists | Setup | View | |
PriceLevel | Accounting Lists | Setup | View | |
PricingGroup | Accounting Lists | Setup | View | |
SalesTaxItem | Tax Items | Lists | View | |
SiteCategory | Presentation Categories | Lists | View | |
Subsidiary | Subsidiaries | Lists | View | |
TaxGroup | Tax Groups | Lists | View | |
TaxType | Tax Groups | Lists | View | |
Term | Customer Payment | Transactions | View | |
TimeBill | Track Time | Transactions | View | |
TimeEntry | Track Time | Transactions | View | |
Transaction | [Transaction Type] | Transactions | View | |
UnitsType | Units | Lists | View | |
Usage | Subscriptions | Lists | View | |
Vendor | Vendors | Lists | View | |
VendorCategory | Accounting Lists | Setup | View | |
customrecord_[custom_record_name] | Custom Record Types | Setup | View |
About NetSuite permissions
Depending on which products are enabled in your NetSuite account, you might not see some of these permissions. If you don’t see a permission in your NetSuite account, skip it.
For more info about these permissions and how they work within NetSuite, refer to NetSuite’s Permissions Documentation spreadsheet, which can be downloaded here from their help center. You may need to log into NetSuite to access their documentation.
Step 4.3: Save the role
After you’ve finished granting permissions to the role, click Save to create it.
Step 5: Create a Source Medium NetSuite user
Next, you’ll create a dedicated NetSuite user for Source Medium and assign the Source Medium role to it.
1. Using the global search, type page: new employee and click the Page: New Employees result. 2. In the Employee page, fill in the Name, Email, and any other required fields. 3. Click the Access tab, located in the bottom half of the page. 4. In the Access tab: 1. Check the Give Access box. 2. Check the Manually assign or change password box to create a password for the Source Medium user. 3. Enter a password in the Password field, then again in the Confirm Password field. 4. In the Roles section, search the dropdown menu to locate the Source Medium role you created in Step 4. 5. Click Add once you’ve located the role. 5. When finished, click Save to create the user.
Step 6: Create access tokens for Source Medium
Note: This requires the Setup > Access Token Management permission in NetSuite.
In this step, you’ll generate access tokens for the Source Medium integration record (application) and user role.
1. Using the global search, type page: tokens and click the Page: Access Tokens result. 2. Click the New Access Token button. 3. On the Access Token page, fill in the following fields: 1. Application Name: Select the integration record you created in Step 3. 2. User: Select the Source Medium user you created in Step 5. 3. Role: Select the Source Medium role you created in Step 4. 4. Token Name: Enter a name for the token. For example: Source Medium 4. Click the Save button. The confirmation page will display a Token ID and Secret. 5. Copy the Token ID and Secret somewhere handy. You’ll need these credentials to complete the setup in Source Medium.
Step 7: Locate your NetSuite Account ID
1. Using the global search, type page: web services and click the Page: Web Services Preferences result. 2. In the Primary Information section, locate the Account ID field as shown in the image on the right.
Note: If your Account ID contains a suffix - 1234567_SB2 for example.
If you are having trouble, contact the Source Medium team