> ## Documentation Index
> Fetch the complete documentation index at: https://developer.box.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get started with Box Automate

export const MultiRelatedLinks = ({sections = []}) => {
  if (!sections || sections.length === 0) {
    return null;
  }
  return <div className="space-y-8">
      {sections.map((section, index) => <RelatedLinks key={index} title={section.title} items={section.items} />)}
    </div>;
};

export const RelatedLinks = ({title, items = []}) => {
  const getBadgeClass = badge => {
    if (!badge) return "badge-default";
    const badgeType = badge.toLowerCase().replace(/\s+/g, "-");
    return `badge-${badge === "ガイド" ? "guide" : badgeType}`;
  };
  if (!items || items.length === 0) {
    return null;
  }
  return <div className="my-8">
      {}
      <h3 className="text-sm font-bold uppercase tracking-wider mb-4">{title}</h3>

      {}
      <div className="flex flex-col gap-3">
        {items.map((item, index) => <a key={index} href={item.href} className="py-2 px-3 rounded related_link hover:bg-[#f2f2f2] dark:hover:bg-[#111827] flex items-center gap-3 group no-underline hover:no-underline border-b-0">
            {}
            <span className={`px-2 py-1 rounded-full text-xs font-semibold uppercase tracking-wide flex-shrink-0 ${getBadgeClass(item.badge)}`}>
              {item.badge}
            </span>

            {}
            <span className="text-base">{item.label}</span>
          </a>)}
      </div>
    </div>;
};

export const Link = ({href, children, className, ...props}) => {
  const localizedHref = href;
  return <a href={localizedHref} className={className} {...props}>
      {children}
    </a>;
};

## Enable Box Automate

Your Box admin must <Link href="https://support.box.com/hc/en-us/articles/51190675028499-Enabling-Box-Automate"> enable Box Automate </Link> (and any add-on products you use in flows,
such as Box AI Studio) for the enterprise to begin using Automate. If a scope or
feature is not available in the Developer Console, contact Box Support or your
account team with the user or app context you plan to use.

## Manual Start API

You can trigger Manual Start workflows programmatically using the Box API.

| Endpoint                                 | Method | Description                                                                                                                         |
| ---------------------------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------- |
| List workflows with Manual Start trigger | GET    | Retrieve all Automate workflows with a Manual Start trigger set for a given folder. Returns a workflow list. Folder ID is required. |
| Trigger a Manual Start workflow          | POST   | Trigger a specific workflow with chosen files.                                                                                      |

### Request  Parameters:

* `files` - provide file IDs in the request body (optional if triggering on a folder; max 20 files per request)
* `fields defined at start` - when a workflow requires runtime fields (for example, task assignees, notification recipients), include them in the API call. Missing required fields return an error.

Use the Custom HTTP Request outcome to connect your Box Automate workflows to external apps and APIs.

The HTTPS request outcome is available for all Enterprise Advanced users with Automate enabled.
However, your Admin needs to either add Connectors to the allow-list in settings or enable you
to add your own from the builder.

<Note>
  Note: If your admin has turned off the option to add your own connectors,
  you can only select from pre-approved connectors in the dropdown.
</Note>

**To add a Custom HTTP request outcome:**

1. Open Workflow Builder.
2. Add the Custom HTTP request outcome.
3. Fill in the fields:

* URL: Choose a connector, or add a new one if allowed.
* Method: Select GET, POST, DELETE, PUT, or PATCH.
* Query Parameters: Add any key-value pairs you need.
* Authentication: Choose an auth type and enter the required info.
* Headers: Add optional headers.
* Body: Enter the JSON request body.
* Description: Briefly say what the request does.

**Authentication options:**

* OAuth 2.0 Client Credentials: Client ID, Client Secret, Authorization URL, Token URL, Scopes
* Basic Auth: Username and password
* Bearer Token: Token
* API Key: API key
* Custom Header: Header name and value

**Test Your Connection**

1. After configuring your outcome, click the Test button.
2. Review the test response code to confirm the connection works.
3. The builder automatically captures response properties and creates variables for you.
4. Use the JSON path: [https://jsonpath.com/](https://jsonpath.com/) to verify and see the variables from the test response.

<RelatedLinks
  title="RELATED GUIDES"
  items={[
{ label: translate("Box Automate overview"), href: "/guides/box-automate/index", badge: "GUIDE" },
{ label: translate("Triggers, actions, and logic in Box Automate"), href: "/guides/box-automate/triggers-and-logic", badge: "GUIDE" },
]}
/>
