Create a sign request with a template

Connector functions are a new addition to Slack automations. We recommend understanding the systems and APIs you're integrating with before setup.

Facts

Create a sign request with a template

Schema: Connectors.BoxSign.functions.CreateSignRequest
Service: Box Sign

Input parameters

Required parameters
Determines whether this connector will use the credentials of the user starting the workflow or the credentials configured by an app collaborator. See the authentication section on this page for details.

Example
{ credential_source: "END_USER" }
The ID of the template to use for this sign request

Example
"123456"
The ID of the folder where signing template exists

Example
"1010101"
The email address to which this sign request will be sent

Example
"scott.slacksalot@salesforce.tld"
Optional parameters
The name of this signing request
The subject of the email containing the sign request that's sent to the recipient
A message added to the body of the sign request email that's sent to the recipient

Output parameters

Required parameters

Authentication

A connector's access token property specifies how the connector handles authentication.

This connector only supports using the credentials of the user running the workflow, so the credential_source of this connector's access token parameter must be set to "END_USER".

End-user authentication

user Workflows that include a connector function relying on end-user authentication can can only be started with a link trigger.

box_access_token: {
    credential_source: "END_USER"
}

End-user experience: User will be prompted to link their external account via OAuth when they first start the workflow that contains this connector.

Developer experience: Developer does not have to implement authentication in app.

How to use

First, import Connectors from deno-slack-hub into your project's import_map.json file, like this:

{
  "imports": {
    "deno-slack-hub/": "https://deno.land/x/deno_slack_hub@2.2.0/",
    "deno-slack-sdk/": "https://deno.land/x/deno_slack_sdk@2.14.2/",
    "deno-slack-api/": "https://deno.land/x/deno_slack_api@2.8.0/",
  }
}

Next, import Connectors at the top of your workflow's definition file:

// my_workflow_file.ts
import { Connectors } from "deno-slack-hub/mod.ts";

Finally, add the connector as a step in your workflow just like you would a built-in Slack function.

SomeWorkflow.addStep(
  Connectors.BoxSign.functions.CreateSignRequest, {
    // The ID of the template to use for this sign request
    template: "123456",

    // The ID of the folder where signing template exists
    parent_folder_id: "1010101",

    // The email address to which this sign request will be sent
    signer_email: "scott.slacksalot@salesforce.tld",

    // (Optional) The name of this signing request
    // name: "Scott's AP approval",

    // (Optional) The subject of the email containing the sign request that's sent to the recipient
    // email_subject: "Urgent: Your signature is required",

    // (Optional) A message added to the body of the sign request email that's sent to the recipient
    // email_message: "Thank you for your help with the budget approvals. This is the last thing we need before moving forward.",

    box_access_token: { credential_source: "END_USER" }
  }
);

🧙🏼 Your admin may need to approve the connector first. If your workspace has been configured to only allow admin-approved apps, the CLI will prompt you to send an admin approval request the first time you try to use a connector that hasn't been approved by an admin yet. While waiting for admin approval, the CLI may report an error like this:

Workflow function... is referring to an unknown step output parameter...

You can safely ignore this error; it will go away as soon as your workspace admin approves your request to use the connector.