Getting started overview

To begin using Quip programmatically, the primary steps involve setting up a Quip account, enabling developer access, obtaining the necessary API credentials, and then executing a basic API request to confirm connectivity. Quip provides a Rich Text API for document and spreadsheet manipulation and a Salesforce Integration API for embedding Quip content within Salesforce workflows. Developers can also extend Quip's functionality through custom Live Apps and integrations with Salesforce Flow.

This guide focuses on the foundational steps required to make an initial API call, providing a pathway to integrating Quip's collaborative capabilities into external applications.

Here is a quick reference table for the getting started process:

Step What to Do Where
1. Create Account Sign up for a Quip account (free trial or paid plan) Quip pricing page
2. Access Developer Program Register for the Quip Developer Program to enable API access Quip Developer API documentation
3. Obtain Credentials Generate an OAuth 2.0 access token Quip developer console (accessed after developer program registration)
4. Make First Request Use the access token to call a simple API endpoint (e.g., list folders) Via cURL, Postman, or a programming language HTTP client

Create an account and get keys

Access to the Quip API requires an active Quip account. Although there is no specific free developer account separate from standard user accounts, Quip offers various paid plans with options for free trials. Once an account is established, developers can register for the Quip Developer Program, which grants access to developer tools and API credential management.

  1. Sign up for a Quip account: Navigate to the Quip pricing page and select a plan that fits your needs. A free trial is often available for evaluation purposes.

  2. Register for the Quip Developer Program: After creating your Quip account, locate the developer registration link, typically found in the support or API documentation sections of the Quip website. Registering will provide access to the developer console, where API applications can be managed. For detailed instructions, refer to the Quip Developer API documentation.

  3. Create an API application: Within the Quip developer console, create a new application. This process usually involves providing a name for your application and specifying a redirect URI for OAuth 2.0 flows.

  4. Obtain OAuth 2.0 credentials: Quip uses OAuth 2.0 for API authentication. After creating your application, you will receive a client ID and client secret. These are used to obtain an access token, which is a temporary credential that authenticates your API requests.

    The standard OAuth 2.0 authorization code flow involves:

    1. Redirecting the user to Quip's authorization endpoint with your client ID and redirect URI.
    2. The user grants permission, and Quip redirects back to your specified URI with an authorization code.
    3. Your application exchanges this authorization code for an access token and optionally a refresh token using your client ID and client secret.

    For development and testing, a client credentials grant or obtaining a personal access token might be available, which simplifies the process of getting an initial access token without a full user authorization flow. Consult the Quip API authentication guide for specific methods.

Your first request

Once you have obtained an OAuth 2.0 access token, you can make your first API call. A common first request is to retrieve a list of folders or documents accessible to the authenticated user. This confirms that your authentication is set up correctly and that you can communicate with the Quip API.

For this example, we will use the curl command-line tool to make a request to the Quip API to list the current user's folders. Replace YOUR_ACCESS_TOKEN with the actual access token you obtained.

Endpoint: https://platform.quip.com/1/folders/

HTTP Method: GET

Headers:

  • Authorization: Bearer YOUR_ACCESS_TOKEN
curl -X GET \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  "https://platform.quip.com/1/folders/"

Expected Successful Response (JSON):

[
  {
    "id": "folder_id_1",
    "title": "My Private Folder",
    "type": "private",
    "member_ids": [
      "user_id_1"
    ],
    "owner_id": "user_id_1",
    "created_usec": 1678886400000000,
    "updated_usec": 1678886400000000,
    "document_ids": [
      "document_id_A",
      "document_id_B"
    ],
    "chat_id": "chat_id_1"
  },
  {
    "id": "folder_id_2",
    "title": "Team Projects",
    "type": "shared_folder",
    "member_ids": [
      "user_id_1",
      "user_id_2"
    ],
    "owner_id": "user_id_1",
    "created_usec": 1678972800000000,
    "updated_usec": 1678972800000000,
    "document_ids": [
      "document_id_C"
    ],
    "chat_id": "chat_id_2"
  }
]

A successful response will return a JSON array of folder objects, each containing details such as the folder ID, title, type, and associated document IDs. If you receive an error, proceed to the troubleshooting section.

Common next steps

After successfully making your first API call, consider these next steps to further integrate with Quip:

  1. Explore Document API Endpoints: Begin creating, updating, and reading Quip documents programmatically. The Quip Rich Text API allows for manipulation of document content using a rich text format, enabling applications to generate reports, notes, or other structured documents.

  2. Integrate with Salesforce: If your organization uses Salesforce, explore the Quip Salesforce integration capabilities. This includes embedding Quip documents directly into Salesforce records, using Quip Live Apps within Salesforce, and automating document creation via Salesforce Flow. Salesforce provides extensive documentation on integrating Quip with its platform.

  3. Develop Live Apps: Extend Quip's functionality by building custom Live Apps. Live Apps are interactive components embedded within Quip documents or spreadsheets that can fetch data from external services, perform calculations, and update content dynamically. This requires knowledge of JavaScript and Quip's Live App development framework, detailed in the Quip developer documentation.

  4. Manage Permissions and Sharing: Understand how to programmatically manage document and folder permissions. The API allows for controlling who can view, edit, or comment on Quip content, ensuring proper access control within integrated workflows.

  5. Implement Webhooks: For real-time updates and reactive applications, investigate Quip's webhook capabilities. Webhooks can notify your application of changes to documents, folders, or other Quip entities, allowing for immediate processing of events without constant polling. For general webhook implementation strategies, consider resources like Stripe's webhook documentation as an architectural reference, although specific Quip webhook details will be in their own developer guides.

Troubleshooting the first call

If your first API request to Quip returns an error, consider the following common issues and resolutions:

  • 401 Unauthorized: This indicates an issue with your access token. Ensure the token is valid, has not expired, and is correctly included in the Authorization: Bearer header. Double-check for typos or extra spaces. If using an OAuth 2.0 flow, verify that the token exchange was successful and refresh the token if necessary.

  • 403 Forbidden: While similar to 401, a 403 error often means your access token is valid but lacks the necessary permissions to access the requested resource. Verify that the authenticated user has access to the folders or documents you are trying to retrieve. This could also indicate that your API application was granted insufficient scopes during the OAuth authorization process. Check the scopes requested and the permissions granted to your application in the Quip developer console.

  • 404 Not Found: This error typically means the requested URL or resource ID does not exist. Confirm the API endpoint URL is correct (e.g., https://platform.quip.com/1/folders/). If you are attempting to retrieve a specific document or folder, ensure its ID is accurate and that it belongs to the authenticated user's accessible resources.

  • Invalid JSON Response: If the response is not valid JSON, there might be an issue with the API endpoint, or the server returned an error page rather than a structured error message. Examine the raw response body for HTML or plain text error messages that could provide more context. This can sometimes happen with unexpected server-side issues.

  • Network Issues: Ensure your network connection is stable and that no firewalls or proxies are blocking access to platform.quip.com. Try making a request to a well-known public API (e.g., https://api.github.com/) to rule out local network problems.

  • Refer to Quip API Documentation: The Quip Developer API documentation contains comprehensive error code explanations and troubleshooting guides specific to their platform. Always cross-reference your errors with the official documentation for the most accurate information.