Dingtalk Spreadsheet · emploidai Marketplace
emploidai Marketplace
Add-onsAppletsPlugins
Search tools, teams, and capabilitiesPublish
MarketplacePluginsDingtalk Spreadsheet
Plugin
Limited listing

Dingtalk Spreadsheet

by witmeng · v0.0.2

DingTalk Spreadsheet, requires the following permissions (dingtalk-document, user/get.)

1.5k installsUpdated May 29, 2025
Publisher information is incomplete

This community listing does not yet include every recommended support, privacy, pricing, and permission disclosure. Review the available package permissions before installing.

Capabilities

Tools

Available inside your emploidai workspace after installation.

Data sources

Available inside your emploidai workspace after installation.

Category

tool

Version

0.0.2witmeng

Requirements

Maximum memory 1MB

Pricing

Not disclosed by publisher

Security & access

Review before installing

CompatibleRequires emploidai 1.0.0+

Permissions

  • Uses model capability
  • Uses tool capability
  • Requires encrypted tool credentials

Dependencies

No additional dependencies

Resources

Privacy policy
emploidai Marketplace

Discover capabilities. Review access. Install inside your workspace.

DocumentationSecuritySupportPrivacyTerms

DingTalk Spreadsheet Plugin

Introduction

The DingTalk Spreadsheet Plugin is a collection of tools for operating on spreadsheets in DingTalk documents. Through this plugin, you can read, write, and modify DingTalk spreadsheets on the Dify platform without manually opening DingTalk documents to complete data processing.

Prerequisites

Using this plugin requires the following DingTalk permissions:

  • DingTalk spreadsheet permission
  • Personal information permission
  • Permission to obtain member basic information by phone number

Configuration method: Log in to the DingTalk developer backend > Enterprise internal development > Find the application that needs to add permissions > Permission management > Address book management page, check enterprise employee phone number information and email and other personal information, click Apply for permission.

Credential Configuration

The following credentials need to be configured to use this plugin:

  • app_key: The AppKey of the DingTalk application
  • app_secret: The AppSecret of the DingTalk application

Feature List

1. Create Sheet (create_sheet)

Create a new worksheet.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_name: The name of the new worksheet

Example:

# Create a new worksheet named "Sales Data"
{
  "operator_id": "your_operator_id",
  "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh",
  "sheet_name": "Sales Data"
}

Returns:

  • JSON data of the creation result

2. Read Sheet Information (read_sheet)

Get basic information about the worksheet, including the number of rows, columns, and other metadata.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_id: Worksheet ID (choose one between sheet_id and sheet_name)
  • sheet_name: Worksheet name (choose one between sheet_id and sheet_name)

Example:

# Get information about the worksheet named "Sales Data"
{
  "operator_id": "your_operator_id",
  "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh",
  "sheet_id": "your_sheet_id",
  "sheet_name": "Sales Data"
}

Returns:

  • JSON data of worksheet information

3. Read Table Data (read_table)

Read the entire table's data content.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input

Example:

# Read the entire table's data
{
  "operator_id": "your_operator_id",
  "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh"
}

Returns:

  • JSON array of all table data

4. Read Cell Area (read_area)

Read cell data within a specified area.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_id: Worksheet ID (choose one between sheet_id and sheet_name)
  • sheet_name: Worksheet name (choose one between sheet_id and sheet_name)
  • range_address: Cell area, e.g., "A1:C5"

Example:

# Read data within the cell area "A1:C5"
{
  "operator_id": "your_operator_id",
  "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh",
  "sheet_id": "your_sheet_id",
  "sheet_name": "Sales Data",
  "range_address": "A1:C5"
}

Returns:

  • JSON array of cell data within the specified area

5. Update Cell Area (update_area)

Update cell data within a specified area.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_id: Worksheet ID (choose one between sheet_id and sheet_name)
  • sheet_name: Worksheet name (choose one between sheet_id and sheet_name)
  • range_address: Cell area, e.g., "A1:C5"
  • values: Data to update, in two-dimensional array format

Example:

# Update data within the cell area "A1:C2"
{
  "operator_id": "your_operator_id",
  "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh",
  "operator_id": "your_operator_id",
  "sheet_id": "your_sheet_id",
  "sheet_name": "Sales Data",
  "range_address": "A1:C2",
  "values": [
    ["New Data 1", "New Data 2", "New Data 3"],
    ["New Data 4", "New Data 5", "New Data 6"]
  ]
}

Returns:

  • JSON data of the operation result

6. Clear Cell Area (clear_area)

Clear cell data within a specified area, preserving cell formatting.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_id: Worksheet ID (choose one between sheet_id and sheet_name)
  • sheet_name: Worksheet name (choose one between sheet_id and sheet_name)
  • range_address: Cell area, e.g., "A1:C5"

Example:

# Clear data within the cell area "A1:C5"
{
  "operator_id": "your_operator_id",
   "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh",
  "sheet_id": "your_sheet_id",
  "sheet_name": "Sales Data",
  "range_address": "A1:C5"
}

Returns:

  • JSON data of the operation result

7. Get Operator ID (get_operator_id)

Get the DingTalk user's operator ID through their phone number.

Parameters:

  • mobile: User's phone number

Example:

# Get the DingTalk user's operator ID through their phone number
{
  "mobile": "12345678901"
}

Returns:

  • User's operator ID (unionId)

8. Insert Data Before Row (insert_data_befor_row)

Insert new rows before a specified row and fill with data.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_id: Worksheet ID (choose one between sheet_id and sheet_name)
  • sheet_name: Worksheet name (choose one between sheet_id and sheet_name)
  • start_row: Specified starting row number
  • row_count: Number of rows to insert
  • start_col: Starting column, default is 'A'
  • values: Data to insert, in two-dimensional array format

Example:

# Insert new rows before row 3 and fill with data
{
  "operator_id": "your_operator_id",
   "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh",
  "sheet_id": "your_sheet_id",
  "sheet_name": "Sales Data",
  "start_row": 3,
  "row_count": 2,
  "start_col": "A",
  "values": [
    ["New Data 1", "New Data 2", "New Data 3"],
    ["New Data 4", "New Data 5", "New Data 6"]
  ]
}

Returns:

  • JSON data of the operation result

9. Insert Data Before Column (insert_data_befor_col)

Insert new columns before a specified column and fill with data.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_id: Worksheet ID (choose one between sheet_id and sheet_name)
  • sheet_name: Worksheet name (choose one between sheet_id and sheet_name)
  • start_col: Specified starting column, such as 'A', 'B', etc.
  • col_count: Number of columns to insert
  • start_row: Starting row number
  • values: Data to insert, in two-dimensional array format

Example:

# Insert new columns before column B and fill with data
{
  "operator_id": "your_operator_id",
   "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh",
  "sheet_id": "your_sheet_id",
  "sheet_name": "Sales Data",
  "start_col": "B",
  "col_count": 2,
  "start_row": 1,
  "values": [
    ["New Data 1", "New Data 2", "New Data 3"],
    ["New Data 4", "New Data 5", "New Data 6"]
  ]
}

Returns:

  • JSON data of the operation result

10. Delete Row (del_row)

Delete specified rows.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_id: Worksheet ID (choose one between sheet_id and sheet_name)
  • sheet_name: Worksheet name (choose one between sheet_id and sheet_name)
  • start_row: Starting row number
  • row_count: Number of rows to delete

Example:

# Delete rows from row 3 to row 5
{
  "operator_id": "your_operator_id",
  "table_id": "https://alidocs.dingtalk.com/i/nodes/AbCdEfGh",
  "sheet_id": "your_sheet_id",
  "sheet_name": "Sales Data",
  "start_row": 3,
  "row_count": 2
}

Returns:

  • JSON data of the operation result

11. Delete Column (del_col)

Delete specified columns.

Parameters:

  • operator_id: The unionId of the operator
  • table_id: The ID of the table, supports table URL input
  • sheet_id: Worksheet ID (choose one between sheet_id and sheet_name)
  • sheet_name: Worksheet name (choose one between sheet_id and sheet_name)
  • start_col: Starting column, such as 'A', 'B', etc.
  • col_count: Number of columns to delete

Example:

# Delete columns from column B to column D

{
  "operator_id": "your_operator_id",
  "table_id": "URL_ADDRESSocs.dingtalk.com/i/nodes/AbCdEfGh",
  "sheet_id": "your_sheet_id",
  "sheet_name": "Sales Data",
  "start_col": "B",
  "col_count": 2
}

Returns:

  • JSON data of the operation result

Contact Us

If you have any questions or suggestions about this, please contact us through the following methods:

  • https://github.com/witmeng/dify_plugin
  • Email:myspsp@gmail.com