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

# Server-Side Open APIs

> Learn about the capabilities and entry points of YiDA server-side open APIs, and follow this guide to complete server-side integration through the DingTalk Open Platform for backend read and write operations on form data.

In addition to open APIs for client-side calls, the YiDA platform also provides open APIs that support server-side calls. For details, see the [DingTalk Open Platform documentation](https://open.dingtalk.com/document/orgapp-server/yida-overview).

## User Guide

Follow the steps below to use the YiDA server-side open APIs:

<Tip>
  The DingTalk Open Platform offers multiple app types, and the way you use server-side open APIs varies by app type. For details, see [Introduction to DingTalk App Types](https://open.dingtalk.com/document/orgapp/untitled-document-1689231271995).
</Tip>

### Step 1: Create a DingTalk App

* To create an internal app, see [Internal App Development Process Overview](https://open.dingtalk.com/document/orgapp/overview-of-development-process).
* To create a third-party enterprise app, see [Third-Party Enterprise App Overview](https://open.dingtalk.com/document/isvapp/isv-cooperation-guide).

### Step 2: Add API Call Permissions

After the app is created, only sign-in and message notification APIs are enabled by default. Add the required API permissions based on your development needs.

* For internal apps, see [Add API Call Permissions](/open/development/add-api-permission).
* For third-party enterprise apps, see [Add API Call Permissions](https://open.dingtalk.com/document/isvapp-server/add-interface-call-permissions?#topic-2149187).

### Step 3: Obtain the access\_token for the App

The access\_token serves as an identity credential. When calling an API, use the access\_token to authenticate the caller's identity.

* For internal apps, see [Obtain the access\_token of an Internal App](https://open.dingtalk.com/document/orgapp-server/obtain-the-access_token-of-an-internal-app#topic-2056397).
* For third-party enterprise apps, see [Obtain the access\_token of the Authorized Enterprise](https://open.dingtalk.com/document/isvapp-server/obtain-the-access_token-of-the-authorized-enterprise?#topic-2056409).

## API List

### Workflow

| API Description                                                                                                | Internal app | Third-party enterprise app | Third-party personal app | Permissions                         |
| :------------------------------------------------------------------------------------------------------------- | :----------- | :------------------------- | :----------------------- | :---------------------------------- |
| [Start a YiDA approval process](https://open.dingtalk.com/document/orgapp/api-startinstance-v2)                | Supported    | Supported                  | Not supported            | YiDA workflow data write permission |
| [Delete a workflow instance](https://open.dingtalk.com/document/orgapp-server/delete-process-instance)         | Supported    | Supported                  | Not supported            | YiDA workflow data write permission |
| [Terminate a workflow instance](https://open.dingtalk.com/document/orgapp-server/terminate-a-process-instance) | Supported    | Supported                  | Not supported            | YiDA workflow data write permission |

### Form

| API Description                                                                                                                                                                                                 | Internal app | Third-party enterprise app | Third-party personal app | Permissions                     |
| :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------- | :------------------------- | :----------------------- | :------------------------------ |
| [Query form instance data](https://open.dingtalk.com/document/orgapp/api-searchformdatas-v2)                                                                                                                    | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Save form data](https://open.dingtalk.com/document/orgapp/api-saveformdata-v2)                                                                                                                                 | Supported    | Supported                  | Not supported            | YiDA form data write permission |
| [Update form data](https://open.dingtalk.com/document/orgapp/api-updateformdata-v2)                                                                                                                             | Supported    | Supported                  | Not supported            | YiDA form data write permission |
| [Query form data](https://open.dingtalk.com/document/orgapp/api-getformdatabyid-v2)                                                                                                                             | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Get the value of an employee component](https://open.dingtalk.com/document/orgapp/gets-the-value-of-the-employee-component)                                                                                    | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Get the form component definition list](https://open.dingtalk.com/document/orgapp/get-a-list-of-form-component-definitions)                                                                                    | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Get subform component data](https://open.dingtalk.com/document/orgapp/obtain-child-table-component-data)                                                                                                       | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Delete form data](https://open.dingtalk.com/document/orgapp/delete-form-data)                                                                                                                                  | Supported    | Supported                  | Not supported            | YiDA form data write permission |
| [Get multiple form instance IDs](https://open.dingtalk.com/document/orgapp/api-searchformdataidlist-v2)                                                                                                         | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Get form instance data in batch](https://open.dingtalk.com/document/orgapp/obtain-multiple-form-instance-data)                                                                                                 | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Delete form instances in batch](https://open.dingtalk.com/document/orgapp/delete-multiple-form-instances)                                                                                                      | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Create form instances in batch](https://open.dingtalk.com/document/orgapp/create-multiple-form-instances)                                                                                                      | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Update component values within form instances in batch](https://open.dingtalk.com/document/orgapp/batch-update-of-component-values-in-form-instances)                                                          | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Create or update a form instance](https://open.dingtalk.com/document/orgapp/api-createorupdateformdata-v2)                                                                                                     | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Get form instance data by advanced query conditions (including subform component data)](https://open.dingtalk.com/document/orgapp/api-searchformdatasecondgeneration-v2)                                       | Supported    | Supported                  | Not supported            | YiDA form data read permission  |
| [Get form instance data by advanced query conditions (excluding subform component data)](https://open.dingtalk.com/document/orgapp/obtain-form-instance-data-using-advanced-query-conditions-excluding-subform) | Supported    | Supported                  | Not supported            | YiDA form data write permission |
| [Update form instances in batch using form instance data](https://open.dingtalk.com/document/orgapp/update-multiple-form-instances-with-the-form-instance-data)                                                 | Supported    | Supported                  | Not supported            | YiDA form data write permission |
| [Query form change records](https://open.dingtalk.com/document/orgapp/change-records-of-query-forms)                                                                                                            | Supported    | Supported                  | Not supported            | YiDA form data write permission |
| [Get the workflow design structure](https://open.dingtalk.com/document/orgapp/api-getprocessdesign)                                                                                                             | Supported    | Supported                  | Not supported            | YiDA form data write permission |
| [Get the component alias list](https://open.dingtalk.com/document/orgapp/api-getformcomponentaliaslist)                                                                                                         | Supported    | Supported                  | Not supported            | YiDA form data write permission |

### Task

| API Description                                                                                                                                              | Internal app | Third-party enterprise app | Third-party personal app | Permissions                         |
| :----------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------- | :------------------------- | :----------------------- | :---------------------------------- |
| [Get approval records](https://open.dingtalk.com/document/orgapp/queries-an-approval-record)                                                                 | Supported    | Supported                  | Not supported            | YiDA workflow data read permission  |
| [Accept or decline a YiDA approval task](https://open.dingtalk.com/document/orgapp/execute-approval-tasks)                                                   | Supported    | Supported                  | Not supported            | YiDA workflow data write permission |
| [Get tasks submitted by a user within the organization](https://open.dingtalk.com/document/orgapp/obtains-the-tasks-submitted-by-someone-in-an-organization) | Supported    | Supported                  | Not supported            | YiDA workflow data read permission  |
| [Get completed approval tasks in the organization](https://open.dingtalk.com/document/orgapp/obtains-the-completed-approval-tasks-in-an-organization)        | Supported    | Supported                  | Not supported            | YiDA task read permission           |
| [Transfer a task](https://open.dingtalk.com/document/orgapp/transfer-tasks)                                                                                  | Supported    | Supported                  | Not supported            | YiDA task write permission          |
| [Query running workflow tasks (VPC)](https://open.dingtalk.com/document/orgapp/query-process-running-tasks-vpc)                                              | Supported    | Supported                  | Not supported            | YiDA task read permission           |
| [Get the task list (organization scope)](https://open.dingtalk.com/document/orgapp/query-tasks-from-the-organization-dimension)                              | Supported    | Supported                  | Not supported            | YiDA task read permission           |
| [Get notifications sent to a user](https://open.dingtalk.com/document/orgapp/get-notifications-sent-to-users)                                                | Supported    | Supported                  | Not supported            | YiDA task read permission           |
| [Query the task list of items CC'd to me (app scope)](https://open.dingtalk.com/document/orgapp/query-copied-my-task-list-application-dimension)             | Supported    | Supported                  | Not supported            | YiDA task read permission           |
| [Submit a comment](https://open.dingtalk.com/document/orgapp/submit-comment)                                                                                 | Supported    | Supported                  | Not supported            | YiDA comment write permission       |
| [Execute YiDA approval tasks in batch](https://open.dingtalk.com/document/orgapp/batch-execution-should-take-the-lead-of-approval-tasks)                     | Supported    | Supported                  | Not supported            | YiDA comment write permission       |
| [Query comments on YiDA form instances in batch](https://open.dingtalk.com/document/orgapp/batch-query-of-comments-appropriate-for-form-instances)           | Supported    | Supported                  | Not supported            | YiDA comment write permission       |

### Attachment

| API Description                                                                                                                                                     | Internal app | Third-party enterprise app | Third-party personal app | Permissions                        |
| :------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :----------- | :------------------------- | :----------------------- | :--------------------------------- |
| [Get the temporary silent login URL of a YiDA attachment](https://open.dingtalk.com/document/orgapp/obtain-the-temporary-free-access-address-of-yixian-accessories) | Supported    | Supported                  | Not supported            | YiDA workflow data read permission |
