- Upload connector icon images
- Configure user authentication
- Configure selectable reports
- Define how the data is processed
Upload Icon Images
Icons allow users to quickly identify your connector. The four images you need for a connector are:
- Icon with background (512 x 512 pixels, png)
- Icon, no background (512 x 512 pixels, png)
- Logo with background (512 x 512 pixels, png)
- Logo banner, no background (1024 x 512 pixels, png)

Configure User Authentication
The Connector Builder supports four different authentication methods:
- No authentication
- Username and password
- API Key
- OAuth 2.0
Note
The code block needs to determine and set the status of the API credential validation code to either
auth.authenticationSuccess() or auth.authenticationFailed('Insert your message'). The messsage provided to the auth.authenticationFailed method will be displayed to users when the connector is run if the authentication fails.
- Ensure the script runs in ‘strict mode’ to avoid any unexpected behavior.
- If you get errors saying “Expected JSON, but found…”, put your httprequest calls in a ‘try-catch’ block to handle errors gracefully.
Configure Selectable Reports
Each connector can contain multiple reports. Reports allow a developer to call different API endpoints or perform different work on the data received. In this step, you will define the reports that a user can select when using this connector in Domo. These reports will appear in the Report dropdown menu after the connector is published. If you would like the ability for users to provide custom parameters that you can use when making your API calls, click Enable Advanced Mode. See configure Reports for instructions on how to use this feature. For code examples, see Examples.

Define How the Data Is Processed
In this step, you will define how to process the data returned from the API endpoint. This is frequently done per report. Your script will need to retrieve the data, parse it, and store it in Domo. To store the data in Domo, first define the columns with a column name and data type, then add the data, one row at a time, one cell at a time. See Process Data for more detailed instructions. For code examples, see Examples.

- Ensure the script runs in ‘strict mode’ to avoid any unexpected behavior.
- Dates inserted into the table need to be formatted yyyy-MM-dd’T’HH:mm:ss.
- When adding a row, remember to call datagrid.endRow() when then row is complete.
- Click Run Script anytime you want to test your code.
Send Data to Domo
After you have completed defining how the data will be processed, you can ensure the data is correctly represented in Domo by sending your generated data to Domo.
- Click SEND TO DOMO to view the Create/Update Dataset check box.
- Check Create/Update Dataset.
- Click Run Script. A success or error message about the process will appear next to the Run Script button.
- If successful, the dataset will be published in your Domo instance. A pop-up window will provide a link directly to the dataset (this may be blocked by a pop-up blocker).

Note
These datasets cannot be scheduled. The connector must be published to schedule dataset updates.
Note
These datasets cannot be scheduled. The connector must be published to schedule dataset updates.

Connector Submission
After you have completed all four steps and ensured that the connector is behaving the way you want, click Submit For Publishing.

- The review process for a custom connector may take up to 30 days.
- For status inquiries & questions pertaining to these custom connectors, please contact 3rdpartyconnectorhelp@domo.com.
- If you select to self-publish a trial version of the custom connector, it will be available for 30 days for review and refinement.
- The self-publish option is not available for custom connectors that use OAuth 2.o in the authentication process or use discovery parameter types in Configure Reports / Advanced Mode.