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

# Box Webhook Setup Guide

> Configure Box to deliver events to StackOne.

## Prerequisites

Before continuing, you should have already completed the following for this connector:

<Steps>
  <Step title="Configure the Connector">
    Enable the connector and set up its connector profile in your project. See <a href="/guides/explore-connectors">Managing Connectors</a>.

    <Columns cols={2}>
      <Card title="Connector Profile" href="/connectors/box/guides/connector-profile/oauth-2-0" icon="https://stackone-logos.com/api/box/filled/png" horizontal>
        Box - OAuth 2.0
      </Card>
    </Columns>
  </Step>

  <Step title="Link an Account">
    Connect an account using <a href="/guides/embedding-stackone-hub">StackOne Hub</a> or <a href="/guides/auth-link">Auth Link</a>.

    <Columns cols={2}>
      <Card title="Link Account" href="/connectors/box/guides/link-account/oauth-2-0" icon="https://stackone-logos.com/api/box/filled/png" horizontal>
        Box - OAuth 2.0
      </Card>
    </Columns>
  </Step>
</Steps>

<section data-guide-section data-guide-scopes="">
  <h2>Subscribe via the StackOne dashboard</h2>

  <p>This connector uses <strong>Programmatic Webhooks</strong>. When you enable webhook events for a connected Box account, StackOne automatically registers a webhook on each configured folder (via `POST /2.0/webhooks`), subscribed to all the events you selected.</p>

  <Steps>
    <Step title="Ensure webhook permissions">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Your Box Custom App must have the <strong>Manage webhooks</strong> permission enabled.</p>

        <ul>
          <li>Sign in to the <a href="https://app.box.com/developers/console" target="_blank" rel="noopener noreferrer">Box Developer Console</a>.</li>
          <li>Open your Custom App (e.g., "Falcon1").</li>
          <li>Go to the <strong>Configuration</strong> tab.</li>
          <li>Under <strong>Developer Actions</strong>, ensure <strong>Manage webhooks</strong> is checked.</li>
          <li>Click <strong>Save</strong> if you made changes.</li>
        </ul>
      </div>
    </Step>

    <Step title="Find folder IDs to monitor">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Identify the Box folders you want to receive webhook events for. Each folder's ID can be found in the URL when you open it in Box.</p>

        <ul>
          <li>Open <a href="https://app.box.com" target="_blank" rel="noopener noreferrer">Box</a> and navigate to the folder you want to monitor.</li>
          <li>The folder ID is the number at the end of the URL. For example, in `https://app.box.com/folder/391960849645`, the folder ID is `391960849645`.</li>
          <li>To monitor multiple folders, note down each folder ID.</li>
        </ul>
      </div>
    </Step>

    <Step title="Set the Webhook Folder IDs">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>When linking your Box account in StackOne (or via StackOne Hub), enter the folder IDs in the <strong>Webhook Folder IDs</strong> field.</p>

        <ul>
          <li>Enter a single folder ID (e.g., `391960849645`) to monitor one folder.</li>
          <li>Enter multiple folder IDs separated by commas (e.g., `391960849645,392715006683`) to monitor multiple folders. A webhook is registered on each folder.</li>
        </ul>
      </div>
    </Step>

    <Step title="Select event subscriptions in the dashboard">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>In the StackOne dashboard, open the Box connector profile and enable the webhook events you want to receive. See the <strong>Available Webhook Events</strong> section below for the full list.</p>
      </div>
    </Step>

    <Step title="Connect the Box account">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>On account connection (or when event subscriptions change), StackOne registers a webhook on each configured folder on your behalf using the connected account's OAuth 2.0 credentials.</p>
      </div>
    </Step>
  </Steps>
</section>

<section data-guide-section data-guide-scopes="">
  <h2>Available Webhook Events</h2>

  <p>The following Box events can be enabled. Only events selected in StackOne are included in the webhook subscription.</p>

  <Steps>
    <Step title="File events">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Events related to files within monitored folders.</p>

        <ul>
          <li><strong>File Uploaded</strong> (`FILE.UPLOADED`) — Fired when a file is uploaded</li>
          <li><strong>File Previewed</strong> (`FILE.PREVIEWED`) — Fired when a file is previewed</li>
          <li><strong>File Downloaded</strong> (`FILE.DOWNLOADED`) — Fired when a file is downloaded</li>
          <li><strong>File Trashed</strong> (`FILE.TRASHED`) — Fired when a file is moved to the trash</li>
          <li><strong>File Deleted</strong> (`FILE.DELETED`) — Fired when a file is permanently deleted</li>
          <li><strong>File Restored</strong> (`FILE.RESTORED`) — Fired when a file is restored from the trash</li>
          <li><strong>File Copied</strong> (`FILE.COPIED`) — Fired when a file is copied</li>
          <li><strong>File Moved</strong> (`FILE.MOVED`) — Fired when a file is moved to a different folder</li>
          <li><strong>File Locked</strong> (`FILE.LOCKED`) — Fired when a file is locked for editing</li>
          <li><strong>File Unlocked</strong> (`FILE.UNLOCKED`) — Fired when a file lock is released</li>
          <li><strong>File Renamed</strong> (`FILE.RENAMED`) — Fired when a file is renamed</li>
        </ul>
      </div>
    </Step>

    <Step title="Folder events">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Events related to folders within monitored folders.</p>

        <ul>
          <li><strong>Folder Created</strong> (`FOLDER.CREATED`) — Fired when a new folder is created</li>
          <li><strong>Folder Renamed</strong> (`FOLDER.RENAMED`) — Fired when a folder is renamed</li>
          <li><strong>Folder Downloaded</strong> (`FOLDER.DOWNLOADED`) — Fired when a folder is downloaded</li>
          <li><strong>Folder Deleted</strong> (`FOLDER.DELETED`) — Fired when a folder is permanently deleted</li>
          <li><strong>Folder Trashed</strong> (`FOLDER.TRASHED`) — Fired when a folder is moved to the trash</li>
          <li><strong>Folder Restored</strong> (`FOLDER.RESTORED`) — Fired when a folder is restored from the trash</li>
          <li><strong>Folder Copied</strong> (`FOLDER.COPIED`) — Fired when a folder is copied</li>
          <li><strong>Folder Moved</strong> (`FOLDER.MOVED`) — Fired when a folder is moved</li>
        </ul>
      </div>
    </Step>

    <Step title="Comment events">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Events related to comments on files.</p>

        <ul>
          <li><strong>Comment Created</strong> (`COMMENT.CREATED`) — Fired when a comment is added to a file</li>
          <li><strong>Comment Updated</strong> (`COMMENT.UPDATED`) — Fired when a comment is edited</li>
          <li><strong>Comment Deleted</strong> (`COMMENT.DELETED`) — Fired when a comment is deleted</li>
        </ul>
      </div>
    </Step>

    <Step title="Collaboration events">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Events related to shared access on files and folders.</p>

        <ul>
          <li><strong>Collaboration Created</strong> (`COLLABORATION.CREATED`) — Fired when a collaboration is created</li>
          <li><strong>Collaboration Accepted</strong> (`COLLABORATION.ACCEPTED`) — Fired when a collaboration invitation is accepted</li>
          <li><strong>Collaboration Rejected</strong> (`COLLABORATION.REJECTED`) — Fired when a collaboration invitation is rejected</li>
          <li><strong>Collaboration Removed</strong> (`COLLABORATION.REMOVED`) — Fired when a collaboration is removed</li>
          <li><strong>Collaboration Updated</strong> (`COLLABORATION.UPDATED`) — Fired when a collaboration's role or permissions change</li>
        </ul>
      </div>
    </Step>

    <Step title="Shared Link events">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Events related to shared links on files and folders.</p>

        <ul>
          <li><strong>Shared Link Created</strong> (`SHARED_LINK.CREATED`) — Fired when a shared link is created</li>
          <li><strong>Shared Link Deleted</strong> (`SHARED_LINK.DELETED`) — Fired when a shared link is removed</li>
          <li><strong>Shared Link Updated</strong> (`SHARED_LINK.UPDATED`) — Fired when a shared link's settings change</li>
        </ul>
      </div>
    </Step>

    <Step title="Task Assignment events">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Events related to task assignments on files.</p>

        <ul>
          <li><strong>Task Assignment Created</strong> (`TASK_ASSIGNMENT.CREATED`) — Fired when a task is assigned to a user</li>
          <li><strong>Task Assignment Updated</strong> (`TASK_ASSIGNMENT.UPDATED`) — Fired when a task assignment is updated (completed, rejected, etc.)</li>
        </ul>
      </div>
    </Step>

    <Step title="Metadata events">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Events related to metadata on files and folders.</p>

        <ul>
          <li><strong>Metadata Instance Created</strong> (`METADATA_INSTANCE.CREATED`) — Fired when metadata is applied to a file or folder</li>
          <li><strong>Metadata Instance Updated</strong> (`METADATA_INSTANCE.UPDATED`) — Fired when metadata on a file or folder is updated</li>
          <li><strong>Metadata Instance Deleted</strong> (`METADATA_INSTANCE.DELETED`) — Fired when metadata is removed from a file or folder</li>
        </ul>
      </div>
    </Step>

    <Step title="Webhook lifecycle events">
      <div data-guide-step data-guide-scopes="" data-guide-display-scopes-list="">
        <p>Events related to webhook subscriptions themselves.</p>

        <ul>
          <li><strong>Webhook Deleted</strong> (`WEBHOOK.DELETED`) — Fired when a webhook subscription is deleted</li>
        </ul>
      </div>
    </Step>
  </Steps>
</section>

## Verify

Your Connector should now be able to receive and process events. Try triggering an event and you should see an Event appear in the Connector logs.
