---
keyword: Extend
nav: wcp_docs
parent_url: /wcp_docs/
title: API Decision Guidance for Extend Apps
layout: subsection
---

To read and write Workday data in Extend, you can use Graph, REST, WQL, RaaS, and SOAP APIs. Extend apps are intended for human interactive use cases, so they require optimized APIs for low-volume, typically self-service transactions initiated by end users. As a result, avoid building Extend apps that involve the import and export of large quantities of data. Use this decision tree to help you select the type of API to call in your Extend app:

![](GUID-f1c190c0-8233-4574-8fc6-7f14c514e27a-enHYPHENus.png "Interactive API decision tree for Extend apps")

For Workday REST and Graph APIs, consider these general guidelines:

-   Response page limit default is 20, maximum is 100.
-   Doesn't perform change detection.
-   Requires user-based security.
-   All Workday API calls from Extend and Integration apps go through [WCP API Gateway](/wcp_docs/GUID-6141e955-7cfe-4bee-b736-73a108d19d9f-enHYPHENus.html). Workday APIs have a client timeout of 5 minutes, except for Graph API, which is 3 minutes.


<b>Note:</b> For Integrations, see the API Decision Tree on [Community: Workday APIs](https://community.workday.com/api).

## <a id="section_1"></a>Reading Data

-   Workday recommends Graph API, which enables you to get the exact shape of the Workday data you need through a unified schema, using a single endpoint.

    See [Workday Graph API Fundamentals](/wcp_docs/uiy1557767007800.html).

-   If Graph API queries aren't available but Workday REST APIs are available, we recommend the Workday REST APIs.

    See [Call Workday REST APIs in Extend Apps](/wcp_docs/gya1560920237072.html).

-   If Workday REST APIs aren’t available, we recommend Workday Query Language with pagination. Carefully design performant WQL queries.

    See [Concept: Pagination of WQL Query Results](/wcp_docs/GUID-c4a11fa0-44b9-49ef-bb37-49f3b601b3bd-enHYPHENus.html).

-   If WQL doesn't provide the required objects, we recommend Report-as-a-Service. Carefully design performant RaaS queries.

    See [Reference: WQL and RaaS Comparisons](/wcp_docs/GUID-8f1d3acf-87ba-4de7-9dc5-84e3991be6a2-enHYPHENus.html).

-   If you can't use any of the preceding options for low volume data, use synchronous Workday SOAP web services through orchestrations. See Send WWS Pagination API Request in [Concept: Data Requests Components in Extend Apps](/wcp_docs/GUID-8d2c15ae-9551-425b-8a56-36546fc33cac.html).


## <a id="section_2"></a>Writing Data

-   Workday recommends Graph API, which enables you to update Workday data through a unified schema using a single endpoint. You can also get the exact data you need within the same call.

    See [Workday Graph API Fundamentals](/wcp_docs/uiy1557767007800.html).

-   If Graph API mutations aren't available, use Workday REST APIs.
-   If Workday REST APIs aren't available, use synchronous Workday SOAP web services through orchestrations.


