Fortinet Document Library

Version:


Table of Contents

1.0.0
Copy Link

About the connector

Box is an enterprise content management platform that solves simple and complex challenges, from sharing and accessing files to building custom applications.

This document provides information about the Box connector, which facilitates automated interactions with a Box server using FortiSOAR™ playbooks. Add the Box connector as a step in FortiSOAR™ playbooks and perform automated operations, such as retrieving information about a file from the Box server and creating a folder on the Box server.

Version information

connector Version: 1.0.0

FortiSOAR™ Version Tested on: 4.11.0-1161

Authored By: Fortinet

Certified: Yes

Installing the connector

All connectors provided by FortiSOAR™ are delivered using a FortiSOAR™ repository. Therefore, you must set up your FortiSOAR™ repository and use the yum command to install connectors:

yum install cyops-connector-box

For the detailed procedure to install a connector, click here.

Prerequisites to configuring the connector

  • You must have the URL of the Box server to which you will connect and perform automated operations.
  • You must have created and configured a JWT application in Box. To configure this connector in FortiSOAR™ you require to upload the JSON file that is downloaded from Box server while you are creating the JWT application.
  • To access the FortiSOAR™ UI, ensure that port 443 is open through the firewall for the FortiSOAR™ instance.

Creating and Configuring JWT Application In Box

To perform operations on Box, you must Create a JWT application on Box, as provided in the following steps: 

  1. Log on to your Box instance and open its Developer Console. 
  2. In the My Apps section, create your own application as follows: 
    1. Select Custom App.
    2. Select the Authentication Method as OAuth 2.0 with JWT (Server Authentication)
    3. Specify a name for your application.
  3.  After creating the JWT application. Go to the Configuration tab of your application. Select Enterprise in the Application Access field. Select All Application Scopes and Advanced Features. In the Add and Manage Public Keys field, click Generate a Public/Private Key pair, which will download the JSON file. The JSON file contains information such as the Client ID and Client Secret of the JWT application. You must provide this JSON file as an input when you are configuring this connector.
  4. To grant access to the application in your enterprise, navigate to Admin Console -> Enterprise Settings -> Apps in the Custom Applications section. Click Authorize New App and enter the API Key i.e., Client ID of your app, and then click Authorize.

    For more information see the link: https://developer.box.com/docs/setting-up-a-jwt-app.

Configuring the connector

For the procedure to configure a connector, click here.

Configuration parameters

In FortiSOAR™, on the Connectors page, click the Box connector row, and in the Configuration tab enter the required configuration details.

Parameter Description
Server URL URL of the Box server to which you will connect and perform the automated operations.
Upload Configuration File JSON file downloaded from Box server while you are creating the JWT application.
Verify SSL Specifies whether the SSL certificate for the server is to be verified or not.
By default, this option is set as True.

Actions supported by the connector

The following automated operations can be included in playbooks, and you can also use the annotations to access operations from FortiSOAR™ release 4.10.0 onwards:

Function Description Annotation and Category
Upload File Adds a new file to a folder that you have specified on the Box server. upload_file
Investigation
Get File Information Retrieves information about a file from the Box server, based on the File ID you have specified. get_file_info
Investigation
Download File Retrieves the actual data of a file from the Box server, based on the File ID you have specified. download_file
Investigation
Get Current User Retrieves information about the user who is currently logged in, i.e., the user for whom the access token was generated from the box server. get_user
Investigation
Get User Retrieves information about the user in the enterprise from the Box server, based on User ID and other parameters you have specified.
Note: You must have enterprise administration authorization to perform this operation.
get_user
Investigation
Create User Creates a new managed user in an enterprise on the Box server, based on name, email address, and other input parameters you have specified.
Note: Only Box administrators can perform this operation.
create_user
Investigation
Update User Updates the information for an existing managed user in an enterprise on the Box server, based on input parameters you have specified. update_user
Investigation
Delete User Deletes an existing user from the Box server, based on User ID you have specified. delete_user
Investigation
Create Folder Creates a new folder on the Box server, based on the name and Parent ID you have specified. create_folder
Investigation
Get Folder Information Retrieves information about a folder from the Box server, based on the Folder ID you have specified. get_folder_info
Investigation
Move Folder Moves a specified folder (by specifying the folder ID) to another specified parent folder (by specifying the Parent ID) on the Box server. move_folder
Investigation
Create Group Creates a new group on the Box server, based on the name and other input parameters you have specified. create_group
Investigation
Get Group Retrieves information about a group from the Box server, based on the Group ID you have specified. get_group
Investigation

operation: Upload File

Input parameters

Parameter Description
Filename Name of the file that you want to upload to the Box server.
File IRI FortiSOAR™ File IRI of the file that you want to upload to the Box server.
Note: The file that you want to submit to the Box server must be part of the Attachment module in FortiSOAR™.
Parent ID ID of the parent folder on the Box server, in which you want to upload the file that you have specified.

Output

The output contains the following populated JSON schema:
{
     "entries": [
         {
             "name": "",
             "content_modified_at": "",
             "item_status": "",
             "created_by": {
                 "login": "",
                 "name": "",
                 "type": "",
                 "id": ""
             },
             "sha1": "",
             "created_at": "",
             "etag": "",
             "description": "",
             "type": "",
             "size": "",
             "shared_link": "",
             "id": "",
             "path_collection": {
                 "entries": [
                     {
                         "name": "",
                         "etag": "",
                         "sequence_id": "",
                         "type": "",
                         "id": ""
                     }
                 ],
                 "total_count": ""
             },
             "trashed_at": "",
             "modified_by": {
                 "login": "",
                 "name": "",
                 "type": "",
                 "id": ""
             },
             "content_created_at": "",
             "file_version": {
                 "sha1": "",
                 "type": "",
                 "id": ""
             },
             "owned_by": {
                 "login": "",
                 "name": "",
                 "type": "",
                 "id": ""
             },
             "parent": {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             },
             "modified_at": "",
             "sequence_id": "",
             "purged_at": ""
         }
     ],
     "total_count": ""
}

To view the uploaded file on Box server go to: Admin Console -> Content -> Content Manager:

operation: Get File Information

Input parameters

Parameter Description
File ID ID of the file whose information you want to retrieve from the Box server.

Output

The output contains the following populated JSON schema:
{
     "name": "",
     "content_modified_at": "",
     "item_status": "",
     "created_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "sha1": "",
     "created_at": "",
     "etag": "",
     "description": "",
     "type": "",
     "size": "",
     "shared_link": "",
     "id": "",
     "path_collection": {
         "entries": [
             {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             }
         ],
         "total_count": ""
     },
     "trashed_at": "",
     "modified_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "content_created_at": "",
     "file_version": {
         "sha1": "",
         "type": "",
         "id": ""
     },
     "owned_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "parent": {
         "name": "",
         "etag": "",
         "sequence_id": "",
         "type": "",
         "id": ""
     },
     "modified_at": "",
     "sequence_id": "",
     "purged_at": ""
}

operation: Download File

Input parameters

Parameter Description
File ID ID of the file whose actual data you want to retrieve from the Box server.

Output

The output of this operation is the contents of the specified file retrieves from the Box server, based on the file ID you have specified.

operation: Get Current User

Input parameters

None.

Output

The output contains the following populated JSON schema:
{
     "space_amount": "",
     "name": "",
     "job_title": "",
     "timezone": "",
     "login": "",
     "phone": "",
     "language": "",
     "status": "",
     "max_upload_size": "",
     "id": "",
     "created_at": "",
     "address": "",
     "type": "",
     "modified_at": "",
     "avatar_url": "",
     "space_used": ""
}

operation: Get User

Input parameters

Parameter Description
User ID ID of the user whose information you want to retrieve from the Box server.
Response Fields (Optional) Select the fields that you want to include in the response of this operation.
Note: If you do not specify any fields, then all fields related to the user that you have specified are retrieved from the Box server.

Output

The output contains the following populated JSON schema:


     "space_amount": "",
     "name": "",
     "job_title": "",
     "timezone": "",
     "login": "",
     "phone": "",
     "language": "",
     "status": "",
     "max_upload_size": "",
     "id": "",
     "created_at": "",
     "address": "",
     "type": "",
     "modified_at": "",
     "avatar_url": "",
     "space_used": ""
}

operation: Create User

Input parameters

Parameter Description
Name Name of the user that you want to create on the Box server.
Note: Maximum number of characters allowed in the Name field is 50.
Email Address Email address of the user that you want to create on the Box server.
Job Title Job title of the user that you want to create on the Box server.
Note: Maximum number of characters allowed in the Job Title field is 100.
Phone (Optional) Phone number of the user that you want to create on the Box server.
Address (Optional) Address of the user that you want to create on the Box server.
Status (Optional) Status of the user that you want to create on the Box server.
Status can be one of the following: active, inactive, cannot_delete_edit, cannot_delete_edit_upload
Response Fields (Optional) Select the fields that you want to include in the response of this operation.

Output

The output contains the following populated JSON schema:
{
     "space_amount": "",
     "name": "",
     "job_title": "",
     "timezone": "",
     "login": "",
     "phone": "",
     "language": "",
     "status": "",
     "max_upload_size": "",
     "id": "",
     "created_at": "",
     "address": "",
     "type": "",
     "modified_at": "",
     "avatar_url": "",
     "space_used": ""
}

operation: Update User

Input parameters

Parameter Description
User ID ID of the user whose information you want to update on the Box server.
Name Name of the user whose information you want to update on the Box server.
Note: Maximum number of characters allowed in the Name field is 50.
Language Language of the user whose information you want to update on the Box server.
Note: A modified version of the ISO 639-1 Language Code format is used for this field.
Job Title Job title of the user whose information you want to update on the Box server.
Note: Maximum number of characters allowed in the Job Title field is 100.
Phone (Optional) Phone number of the user whose information you want to update on the Box server.
Address (Optional) Address of the user whose information you want to update on the Box server.
Status (Optional) Status of the user whose information you want to update on the Box server.
Status can be one of the following: active, inactive, cannot_delete_edit, cannot_delete_edit_upload
Response Fields (Optional) Select the fields that you want to include in the response of this operation.

Output

The output contains the following populated JSON schema:
{
     "space_amount": "",
     "name": "",
     "job_title": "",
     "timezone": "",
     "login": "",
     "phone": "",
     "language": "",
     "status": "",
     "max_upload_size": "",
     "id": "",
     "created_at": "",
     "address": "",
     "type": "",
     "modified_at": "",
     "avatar_url": "",
     "space_used": ""
}

operation: Delete User

Input parameters

Parameter Description
User ID ID of the user who you want to delete from the Box server.
Notify Select this option, i.e., set to True, to send an email notification to the destination user of this operation.
By default, this is set as True.
Force Select this option, i.e., set toTrue, to delete a user even if the user still owns files on the Box server.
By default, this is set as False.

Output

The output contains the following populated JSON schema:
{
     "message": "",
     "status": ""
}

operation: Create Folder

Input parameters

Parameter Description
Name Name of the folder that you want to create on the Box server.
Parent ID ID of the parent folder on the Box server, in which you want to create the new folder.
Response Fields (Optional) Select the fields that you want to include in the response of this operation.

Output

The output contains the following populated JSON schema:
{
     "name": "",
     "content_modified_at": "",
     "item_status": "",
     "trashed_at": "",
     "id": "",
     "created_at": "",
     "etag": "",
     "description": "",
     "type": "",
     "size": "",
     "shared_link": "",
     "path_collection": {
         "entries": [
             {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             }
         ],
         "total_count": ""
     },
     "created_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "modified_at": "",
     "item_collection": {
         "offset": "",
         "order": [
             {
                 "direction": "",
                 "by": ""
             }
         ],
         "limit": "",
         "entries": [],
         "total_count": ""
     },
     "content_created_at": "",
     "folder_upload_email": "",
     "owned_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "parent": {
         "name": "",
         "etag": "",
         "sequence_id": "",
         "type": "",
         "id": ""
     },
     "modified_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "sequence_id": "",
     "purged_at": ""
}

operation: Get Folder Information

Input parameters

Parameter Description
Folder ID ID of the folder whose information you want to retrieve from the Box server.
Response Fields (Optional) Select the fields that you want to include in the response of this operation.
Note: If you do not specify any fields, then all fields related to the folder that you have specified are retrieved from the Box server.

Output

The output contains the following populated JSON schema:
{
     "name": "",
     "content_modified_at": "",
     "item_status": "",
     "trashed_at": "",
     "id": "",
     "created_at": "",
     "etag": "",
     "description": "",
     "type": "",
     "size": "",
     "shared_link": "",
     "path_collection": {
         "entries": [
             {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             }
         ],
         "total_count": ""
     },
     "created_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "modified_at": "",
     "item_collection": {
         "offset": "",
         "order": [
             {
                 "direction": "",
                 "by": ""
             }
         ],
         "limit": "",
         "entries": [],
         "total_count": ""
     },
     "content_created_at": "",
     "folder_upload_email": "",
     "owned_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "parent": {
         "name": "",
         "etag": "",
         "sequence_id": "",
         "type": "",
         "id": ""
     },
     "modified_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "sequence_id": "",
     "purged_at": ""
}

operation: Move Folder

Input parameters

Parameter Description
Folder ID ID of the folder that you want to move on the Box server.
Parent ID ID of the parent folder on the Box server to which you want to move the specified folder.

Output

The output contains the following populated JSON schema:
{
     "name": "",
     "content_modified_at": "",
     "item_status": "",
     "trashed_at": "",
     "id": "",
     "created_at": "",
     "etag": "",
     "description": "",
     "type": "",
     "size": "",
     "shared_link": "",
     "path_collection": {
         "entries": [
             {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             }
         ],
         "total_count": ""
     },
     "created_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "modified_at": "",
     "item_collection": {
         "offset": "",
         "order": [
             {
                 "direction": "",
                 "by": ""
             }
         ],
         "limit": "",
         "entries": [],
         "total_count": ""
     },
     "content_created_at": "",
     "folder_upload_email": "",
     "owned_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "parent": {
         "name": "",
         "etag": "",
         "sequence_id": "",
         "type": "",
         "id": ""
     },
     "modified_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "sequence_id": "",
     "purged_at": ""
}

operation: Create Group

Input parameters

Parameter Description
Name Name of the group that you want to create on the Box server.
Note: Maximum number of characters allowed in the Name field is 50.
Description (Optional) Description of the group that you want to create on the Box server.
Provenance (Optional) Provenance of the group that you want to create on the Box server.
Note: This field is generally used to track groups coming from external sources.
External Source Group Identifier (Optional) External Source Group Identifier of the group that you want to create on the Box server.
Note: This field is generally used to specify the group identifier groups coming from external sources.
Invitability Level (Optional) Specifies who can invite this newly created group to folders on the Box server.
Member Viewability Level (Optional) Specifies who can view the members of this newly created group on the Box server.

Output

The output contains the following populated JSON schema:
{
     "created_at": "",
     "name": "",
     "group_type": "",
     "type": "",
     "modified_at": "",
     "id": ""
}

operation: Get Group

Input parameters

Parameter Description
Group ID ID of the group whose information you want to retrieve from the Box server.

Output

The output contains the following populated JSON schema:
{
     "created_at": "",
     "name": "",
     "group_type": "",
     "type": "",
     "modified_at": "",
     "id": ""
}

Included playbooks

The Sample - Box - 1.0.0 playbook collection comes bundled with the Box connector. This playbook contains steps using which you can perform all supported actions. You can see the bundled playbooks in the Automation > Playbooks section in FortiSOAR™ after importing the Box connector.

  • Create Folder
  • Create Group
  • Create User
  • Delete User
  • Download File
  • Get Current User
  • Get File Information
  • Get Folder Information
  • Get Group
  • Get User
  • Move Folder
  • Update User
  • Upload File

Note: If you are planning to use any of the sample playbooks in your environment, ensure that you clone those playbooks and move them to a different collection since the sample playbook collection gets deleted during connector upgrade and delete.

 

 

About the connector

Box is an enterprise content management platform that solves simple and complex challenges, from sharing and accessing files to building custom applications.

This document provides information about the Box connector, which facilitates automated interactions with a Box server using FortiSOAR™ playbooks. Add the Box connector as a step in FortiSOAR™ playbooks and perform automated operations, such as retrieving information about a file from the Box server and creating a folder on the Box server.

Version information

connector Version: 1.0.0

FortiSOAR™ Version Tested on: 4.11.0-1161

Authored By: Fortinet

Certified: Yes

Installing the connector

All connectors provided by FortiSOAR™ are delivered using a FortiSOAR™ repository. Therefore, you must set up your FortiSOAR™ repository and use the yum command to install connectors:

yum install cyops-connector-box

For the detailed procedure to install a connector, click here.

Prerequisites to configuring the connector

Creating and Configuring JWT Application In Box

To perform operations on Box, you must Create a JWT application on Box, as provided in the following steps: 

  1. Log on to your Box instance and open its Developer Console. 
  2. In the My Apps section, create your own application as follows: 
    1. Select Custom App.
    2. Select the Authentication Method as OAuth 2.0 with JWT (Server Authentication)
    3. Specify a name for your application.
  3.  After creating the JWT application. Go to the Configuration tab of your application. Select Enterprise in the Application Access field. Select All Application Scopes and Advanced Features. In the Add and Manage Public Keys field, click Generate a Public/Private Key pair, which will download the JSON file. The JSON file contains information such as the Client ID and Client Secret of the JWT application. You must provide this JSON file as an input when you are configuring this connector.
  4. To grant access to the application in your enterprise, navigate to Admin Console -> Enterprise Settings -> Apps in the Custom Applications section. Click Authorize New App and enter the API Key i.e., Client ID of your app, and then click Authorize.

    For more information see the link: https://developer.box.com/docs/setting-up-a-jwt-app.

Configuring the connector

For the procedure to configure a connector, click here.

Configuration parameters

In FortiSOAR™, on the Connectors page, click the Box connector row, and in the Configuration tab enter the required configuration details.

Parameter Description
Server URL URL of the Box server to which you will connect and perform the automated operations.
Upload Configuration File JSON file downloaded from Box server while you are creating the JWT application.
Verify SSL Specifies whether the SSL certificate for the server is to be verified or not.
By default, this option is set as True.

Actions supported by the connector

The following automated operations can be included in playbooks, and you can also use the annotations to access operations from FortiSOAR™ release 4.10.0 onwards:

Function Description Annotation and Category
Upload File Adds a new file to a folder that you have specified on the Box server. upload_file
Investigation
Get File Information Retrieves information about a file from the Box server, based on the File ID you have specified. get_file_info
Investigation
Download File Retrieves the actual data of a file from the Box server, based on the File ID you have specified. download_file
Investigation
Get Current User Retrieves information about the user who is currently logged in, i.e., the user for whom the access token was generated from the box server. get_user
Investigation
Get User Retrieves information about the user in the enterprise from the Box server, based on User ID and other parameters you have specified.
Note: You must have enterprise administration authorization to perform this operation.
get_user
Investigation
Create User Creates a new managed user in an enterprise on the Box server, based on name, email address, and other input parameters you have specified.
Note: Only Box administrators can perform this operation.
create_user
Investigation
Update User Updates the information for an existing managed user in an enterprise on the Box server, based on input parameters you have specified. update_user
Investigation
Delete User Deletes an existing user from the Box server, based on User ID you have specified. delete_user
Investigation
Create Folder Creates a new folder on the Box server, based on the name and Parent ID you have specified. create_folder
Investigation
Get Folder Information Retrieves information about a folder from the Box server, based on the Folder ID you have specified. get_folder_info
Investigation
Move Folder Moves a specified folder (by specifying the folder ID) to another specified parent folder (by specifying the Parent ID) on the Box server. move_folder
Investigation
Create Group Creates a new group on the Box server, based on the name and other input parameters you have specified. create_group
Investigation
Get Group Retrieves information about a group from the Box server, based on the Group ID you have specified. get_group
Investigation

operation: Upload File

Input parameters

Parameter Description
Filename Name of the file that you want to upload to the Box server.
File IRI FortiSOAR™ File IRI of the file that you want to upload to the Box server.
Note: The file that you want to submit to the Box server must be part of the Attachment module in FortiSOAR™.
Parent ID ID of the parent folder on the Box server, in which you want to upload the file that you have specified.

Output

The output contains the following populated JSON schema:
{
     "entries": [
         {
             "name": "",
             "content_modified_at": "",
             "item_status": "",
             "created_by": {
                 "login": "",
                 "name": "",
                 "type": "",
                 "id": ""
             },
             "sha1": "",
             "created_at": "",
             "etag": "",
             "description": "",
             "type": "",
             "size": "",
             "shared_link": "",
             "id": "",
             "path_collection": {
                 "entries": [
                     {
                         "name": "",
                         "etag": "",
                         "sequence_id": "",
                         "type": "",
                         "id": ""
                     }
                 ],
                 "total_count": ""
             },
             "trashed_at": "",
             "modified_by": {
                 "login": "",
                 "name": "",
                 "type": "",
                 "id": ""
             },
             "content_created_at": "",
             "file_version": {
                 "sha1": "",
                 "type": "",
                 "id": ""
             },
             "owned_by": {
                 "login": "",
                 "name": "",
                 "type": "",
                 "id": ""
             },
             "parent": {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             },
             "modified_at": "",
             "sequence_id": "",
             "purged_at": ""
         }
     ],
     "total_count": ""
}

To view the uploaded file on Box server go to: Admin Console -> Content -> Content Manager:

operation: Get File Information

Input parameters

Parameter Description
File ID ID of the file whose information you want to retrieve from the Box server.

Output

The output contains the following populated JSON schema:
{
     "name": "",
     "content_modified_at": "",
     "item_status": "",
     "created_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "sha1": "",
     "created_at": "",
     "etag": "",
     "description": "",
     "type": "",
     "size": "",
     "shared_link": "",
     "id": "",
     "path_collection": {
         "entries": [
             {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             }
         ],
         "total_count": ""
     },
     "trashed_at": "",
     "modified_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "content_created_at": "",
     "file_version": {
         "sha1": "",
         "type": "",
         "id": ""
     },
     "owned_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "parent": {
         "name": "",
         "etag": "",
         "sequence_id": "",
         "type": "",
         "id": ""
     },
     "modified_at": "",
     "sequence_id": "",
     "purged_at": ""
}

operation: Download File

Input parameters

Parameter Description
File ID ID of the file whose actual data you want to retrieve from the Box server.

Output

The output of this operation is the contents of the specified file retrieves from the Box server, based on the file ID you have specified.

operation: Get Current User

Input parameters

None.

Output

The output contains the following populated JSON schema:
{
     "space_amount": "",
     "name": "",
     "job_title": "",
     "timezone": "",
     "login": "",
     "phone": "",
     "language": "",
     "status": "",
     "max_upload_size": "",
     "id": "",
     "created_at": "",
     "address": "",
     "type": "",
     "modified_at": "",
     "avatar_url": "",
     "space_used": ""
}

operation: Get User

Input parameters

Parameter Description
User ID ID of the user whose information you want to retrieve from the Box server.
Response Fields (Optional) Select the fields that you want to include in the response of this operation.
Note: If you do not specify any fields, then all fields related to the user that you have specified are retrieved from the Box server.

Output

The output contains the following populated JSON schema:


     "space_amount": "",
     "name": "",
     "job_title": "",
     "timezone": "",
     "login": "",
     "phone": "",
     "language": "",
     "status": "",
     "max_upload_size": "",
     "id": "",
     "created_at": "",
     "address": "",
     "type": "",
     "modified_at": "",
     "avatar_url": "",
     "space_used": ""
}

operation: Create User

Input parameters

Parameter Description
Name Name of the user that you want to create on the Box server.
Note: Maximum number of characters allowed in the Name field is 50.
Email Address Email address of the user that you want to create on the Box server.
Job Title Job title of the user that you want to create on the Box server.
Note: Maximum number of characters allowed in the Job Title field is 100.
Phone (Optional) Phone number of the user that you want to create on the Box server.
Address (Optional) Address of the user that you want to create on the Box server.
Status (Optional) Status of the user that you want to create on the Box server.
Status can be one of the following: active, inactive, cannot_delete_edit, cannot_delete_edit_upload
Response Fields (Optional) Select the fields that you want to include in the response of this operation.

Output

The output contains the following populated JSON schema:
{
     "space_amount": "",
     "name": "",
     "job_title": "",
     "timezone": "",
     "login": "",
     "phone": "",
     "language": "",
     "status": "",
     "max_upload_size": "",
     "id": "",
     "created_at": "",
     "address": "",
     "type": "",
     "modified_at": "",
     "avatar_url": "",
     "space_used": ""
}

operation: Update User

Input parameters

Parameter Description
User ID ID of the user whose information you want to update on the Box server.
Name Name of the user whose information you want to update on the Box server.
Note: Maximum number of characters allowed in the Name field is 50.
Language Language of the user whose information you want to update on the Box server.
Note: A modified version of the ISO 639-1 Language Code format is used for this field.
Job Title Job title of the user whose information you want to update on the Box server.
Note: Maximum number of characters allowed in the Job Title field is 100.
Phone (Optional) Phone number of the user whose information you want to update on the Box server.
Address (Optional) Address of the user whose information you want to update on the Box server.
Status (Optional) Status of the user whose information you want to update on the Box server.
Status can be one of the following: active, inactive, cannot_delete_edit, cannot_delete_edit_upload
Response Fields (Optional) Select the fields that you want to include in the response of this operation.

Output

The output contains the following populated JSON schema:
{
     "space_amount": "",
     "name": "",
     "job_title": "",
     "timezone": "",
     "login": "",
     "phone": "",
     "language": "",
     "status": "",
     "max_upload_size": "",
     "id": "",
     "created_at": "",
     "address": "",
     "type": "",
     "modified_at": "",
     "avatar_url": "",
     "space_used": ""
}

operation: Delete User

Input parameters

Parameter Description
User ID ID of the user who you want to delete from the Box server.
Notify Select this option, i.e., set to True, to send an email notification to the destination user of this operation.
By default, this is set as True.
Force Select this option, i.e., set toTrue, to delete a user even if the user still owns files on the Box server.
By default, this is set as False.

Output

The output contains the following populated JSON schema:
{
     "message": "",
     "status": ""
}

operation: Create Folder

Input parameters

Parameter Description
Name Name of the folder that you want to create on the Box server.
Parent ID ID of the parent folder on the Box server, in which you want to create the new folder.
Response Fields (Optional) Select the fields that you want to include in the response of this operation.

Output

The output contains the following populated JSON schema:
{
     "name": "",
     "content_modified_at": "",
     "item_status": "",
     "trashed_at": "",
     "id": "",
     "created_at": "",
     "etag": "",
     "description": "",
     "type": "",
     "size": "",
     "shared_link": "",
     "path_collection": {
         "entries": [
             {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             }
         ],
         "total_count": ""
     },
     "created_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "modified_at": "",
     "item_collection": {
         "offset": "",
         "order": [
             {
                 "direction": "",
                 "by": ""
             }
         ],
         "limit": "",
         "entries": [],
         "total_count": ""
     },
     "content_created_at": "",
     "folder_upload_email": "",
     "owned_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "parent": {
         "name": "",
         "etag": "",
         "sequence_id": "",
         "type": "",
         "id": ""
     },
     "modified_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "sequence_id": "",
     "purged_at": ""
}

operation: Get Folder Information

Input parameters

Parameter Description
Folder ID ID of the folder whose information you want to retrieve from the Box server.
Response Fields (Optional) Select the fields that you want to include in the response of this operation.
Note: If you do not specify any fields, then all fields related to the folder that you have specified are retrieved from the Box server.

Output

The output contains the following populated JSON schema:
{
     "name": "",
     "content_modified_at": "",
     "item_status": "",
     "trashed_at": "",
     "id": "",
     "created_at": "",
     "etag": "",
     "description": "",
     "type": "",
     "size": "",
     "shared_link": "",
     "path_collection": {
         "entries": [
             {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             }
         ],
         "total_count": ""
     },
     "created_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "modified_at": "",
     "item_collection": {
         "offset": "",
         "order": [
             {
                 "direction": "",
                 "by": ""
             }
         ],
         "limit": "",
         "entries": [],
         "total_count": ""
     },
     "content_created_at": "",
     "folder_upload_email": "",
     "owned_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "parent": {
         "name": "",
         "etag": "",
         "sequence_id": "",
         "type": "",
         "id": ""
     },
     "modified_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "sequence_id": "",
     "purged_at": ""
}

operation: Move Folder

Input parameters

Parameter Description
Folder ID ID of the folder that you want to move on the Box server.
Parent ID ID of the parent folder on the Box server to which you want to move the specified folder.

Output

The output contains the following populated JSON schema:
{
     "name": "",
     "content_modified_at": "",
     "item_status": "",
     "trashed_at": "",
     "id": "",
     "created_at": "",
     "etag": "",
     "description": "",
     "type": "",
     "size": "",
     "shared_link": "",
     "path_collection": {
         "entries": [
             {
                 "name": "",
                 "etag": "",
                 "sequence_id": "",
                 "type": "",
                 "id": ""
             }
         ],
         "total_count": ""
     },
     "created_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "modified_at": "",
     "item_collection": {
         "offset": "",
         "order": [
             {
                 "direction": "",
                 "by": ""
             }
         ],
         "limit": "",
         "entries": [],
         "total_count": ""
     },
     "content_created_at": "",
     "folder_upload_email": "",
     "owned_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "parent": {
         "name": "",
         "etag": "",
         "sequence_id": "",
         "type": "",
         "id": ""
     },
     "modified_by": {
         "login": "",
         "name": "",
         "type": "",
         "id": ""
     },
     "sequence_id": "",
     "purged_at": ""
}

operation: Create Group

Input parameters

Parameter Description
Name Name of the group that you want to create on the Box server.
Note: Maximum number of characters allowed in the Name field is 50.
Description (Optional) Description of the group that you want to create on the Box server.
Provenance (Optional) Provenance of the group that you want to create on the Box server.
Note: This field is generally used to track groups coming from external sources.
External Source Group Identifier (Optional) External Source Group Identifier of the group that you want to create on the Box server.
Note: This field is generally used to specify the group identifier groups coming from external sources.
Invitability Level (Optional) Specifies who can invite this newly created group to folders on the Box server.
Member Viewability Level (Optional) Specifies who can view the members of this newly created group on the Box server.

Output

The output contains the following populated JSON schema:
{
     "created_at": "",
     "name": "",
     "group_type": "",
     "type": "",
     "modified_at": "",
     "id": ""
}

operation: Get Group

Input parameters

Parameter Description
Group ID ID of the group whose information you want to retrieve from the Box server.

Output

The output contains the following populated JSON schema:
{
     "created_at": "",
     "name": "",
     "group_type": "",
     "type": "",
     "modified_at": "",
     "id": ""
}

Included playbooks

The Sample - Box - 1.0.0 playbook collection comes bundled with the Box connector. This playbook contains steps using which you can perform all supported actions. You can see the bundled playbooks in the Automation > Playbooks section in FortiSOAR™ after importing the Box connector.

Note: If you are planning to use any of the sample playbooks in your environment, ensure that you clone those playbooks and move them to a different collection since the sample playbook collection gets deleted during connector upgrade and delete.