Adding the "Upload Questionnaire" Button to a Custom Object
Overview
Conveyor's Salesforce managed package ships with an "Upload Questionnaire(s)" button on the Account, Opportunity, and Case objects. The Lightning component behind that button, Conveyor:Upload_Questionnaire, is globally accessible, so you can also add the same button to any custom object in your org.
This guide walks you through creating a quick action on your custom object that opens the Conveyor upload form, and adding that action to your page layout.
Before you startThis guide assumes you have already installed the Conveyor managed package (version 1.52 or later) and completed the setup described in Uploading a Questionnaire from Salesforce (Managed Package), including the OAuth integration. If the standard button works on your Account object, you are ready to proceed.
Step 1: Create a Quick Action on Your Custom Object
- In Salesforce, go to Setup.
- Open Object Manager and select your custom object.
- In the left sidebar, click Buttons, Links, and Actions.
- Click New Action.
- Fill in the action details:
- Action Type:
Lightning Component - Lightning Component:
Conveyor:Upload_Questionnaire - Height:
250px - Label:
Upload Questionnaire(s)(or any label you prefer) - Name:
Upload_Questionnaire
- Action Type:
- Click Save.
Step 2: Add the Action to Your Page Layout
- Still in Object Manager for your custom object, click Page Layouts in the left sidebar.
- Select the layout your users see.
- In the layout editor palette, select the Mobile & Lightning Actions category.
- Drag your new Upload Questionnaire(s) action into the Salesforce Mobile and Lightning Experience Actions section of the layout.
- If that section shows predefined actions, hover over it and click the wrench icon to override the predefined actions first.
- Click Save.
The button now appears in the highlights panel of your custom object's record pages. Clicking it opens the same upload form as the standard button: users pick a file (or portal link), enter the customer's web domain, select product lines, and upload straight to Conveyor.
Permissions
Users need the same access required for the standard button:
- Access to the Conveyor Apex classes and Lightning components. If you installed the package for All Users, this is already in place. If you installed for Admins Only, grant access to the Conveyor package components via a profile or permission set.
- Permission to upload files to records of your custom object. The form attaches the uploaded file to the record before sending it to Conveyor.
Differences from the Standard Objects
The upload form works the same way on custom objects, with one difference: field prefilling. On Account, Opportunity, and Case records, the form prefills the customer's web domain (a required field) and customer name from the related account. On a custom object, Conveyor does not know which of your fields hold that information, so:
- Web domain: users must type the customer's web domain (e.g.
google.com) into the form. The upload will not proceed without a valid domain. - Customer name: this optional value is normally read from the related account and sent to Conveyor behind the scenes. On a custom object it is omitted, and the questionnaire displays in Conveyor without it.
Everything else carries over:
- The questionnaire is linked back to your custom object record in Conveyor.
- Uploaded files are attached to the record in Salesforce.
- Product lines, questionnaire type settings, and multi-file RFP uploads all work as they do on standard objects.
Troubleshooting
Conveyor:Upload_Questionnairedoes not appear in the Lightning Component dropdown: Make sure your org is on version 1.52 or later of the Conveyor package. Earlier versions do not expose the component outside the package.- The form opens but the upload fails: Verify the OAuth integration is set up per the main setup guide, and that the user has access to the Conveyor Apex classes.
Updated 2 days ago

