Skip to content

Upload Attachment (Salesforce) v3.0.12 Help

Uploads an attachment to a Salesforce record.

How can I use the Step?

You can use the Step to upload an attachment to a Salesforce record. The Step lets you automate uploading attachments without manual entry, saving time and reducing errors. You can use the Step with other applications or systems to streamline your business processes.

How does the Step work?

You authorize the Step and specify the parent record ID and the attachment file in the Step settings. The Step takes these inputs and requests the Salesforce API to upload the attachment to the parent record (see Output example).

Prerequisites

Before you get started, you must do the following:

  • Obtain the Consumer Key and Consumer Secret of the Salesforce Connected App you want to authorize the Step with. For more information about creating and configuring a Connected App, see Create a Connected App documentation.

Authorization

To authorize the Step, you can inherit authorization from a previous Step, select existing authorization or create a new one.

Here are the steps to create a new Salesforce authorization:

  1. For Select authorization in the current Step, choose the Create a new authorization option from the dropdown.

  2. In the Add an authorization popup, do the following:

    • For Your Connected Apps, select an existing Connected App or click Add a new Connected App and provide the required details in a popup:

      • Name this Connected App: Connected App name.
      • Environment: Environment choice for the Connected App in Salesforce. Either production or sandbox.
      • Consumer Key: Consumer Key for Connected App in Salesforce (see Prerequisites).
      • Consumer Secret: Consumer Secret for Connected App in Salesforce (see Prerequisites).
      • Callback URL: OAuth 2.0 redirect URL. You must use it as Callback URL when creating Connected App on Salesforce.
    • Name your new authorization.

    • Choose where to save the authorization.

    • Authorize the Step by clicking Authorize now or pasting the authorization URL into a web browser.

Once the Step is authorized, all related settings are automatically updated, and you can continue with the Step settings.

Attachment information

To attach a file to a specific record, provide the following details:

  • Parent ID: Enter the parent ID of a record to which you want to attach the file. This field is required.
  • Attachments: Select a file from the Files service.

You can also attach files using dynamic values. To do so, click the global code mode button </> and switch to code mode for the Attachments section. The attachment data must be an array of objects, where each object contains the following fields:

  • path: file name, optional
  • content: file location, required

Here's an example of the attachments data that the Step accepts in code mode:

json
[
    {
        "path": "photo.jpg",
        "content": "https://files.api.onereach.ai/attachment.jpg"
    }
]
[
    {
        "path": "photo.jpg",
        "content": "https://files.api.onereach.ai/attachment.jpg"
    }
]

If no path is specified, the Step uses the name from the content field (attachment.jpg).

Advanced settings

You can use this section to configure the following parameter:

  • API version: The Salesforce API version for requests. The value must be in the format 50 or 50.0 and contain at least two characters. The default API version is 50, and the minimum supported version is 21.

Merge field settings

The Step returns the result as a JSON object and stores it in the Merge field variable. So you can use the retrieved data in subsequent Steps or other Flows.

Output example

The output contains the response data for each uploaded attachment and its file name. The response data includes the attachment ID, success status, and upload errors.

Example response for a successful upload of "Matrix.jpg":

json
{
    "response": [
        {
            "value": {
                "id": "00P1r00001qtu0aEAA",
                "success": true,
                "errors": []
            },
            "filename": "Matrix.jpg"
        }
    ]
}
{
    "response": [
        {
            "value": {
                "id": "00P1r00001qtu0aEAA",
                "success": true,
                "errors": []
            },
            "filename": "Matrix.jpg"
        }
    ]
}

Error Handling

By default, the Handle error toggle is on, and the Step handles errors with a separate exit. If any error occurs during the Step execution, the Flow proceeds down the error exit.

If the Handle error toggle is disabled, the Step does not handle errors. In this case, if any error occurs during the Step execution, the Flow fails immediately after exceeding the Flow timeout. To prevent the Flow from being suspended and continue handling errors, you can place the Flow Error Handling Step before the main logic or your Flow.

Reporting

After the Step completes, it generates a report that includes its execution status and other details. You can customize the report by adjusting the Step's log level and adding tags.

Log level

By default, the Step's log level matches that of the Flow. You can change the Step's log level by selecting an appropriate option from the Log level dropdown.

Tags

Tags provide a way to classify and search for sessions based on their attributes. To create a new tag, specify its category, label, and value. You can then use tags to filter and group the sessions in the report.

Service dependencies

  • flow builder v2.28.3
  • event-manager v2.3.0
  • deployer v2.6.0
  • library v2.11.3
  • studio v2.64.1
  • authorizer 2 service v2.1.6
  • salesforce data provider

Release notes

v3.0.12

  • Add API version selection to the Step UI

v3.0.10

  • Update help for dynamic input
  • Redirect to error exit if all attachments fail to upload

v3.0.9

  • Update Authorization Manager v 1.2.10
  • Add Step migration

v3.0.8

  • Update File Manager

v3.0.6

  • Implement Authorization Manager v 1.1.0
  • Replace the asset manager with the new browser component