Back

Wrike API Essential Guide

Aug 16, 20246 minute read

What type of API does Wrike provide?

Based on the search results provided, Wrike's API type is not explicitly mentioned. However, here is some general information about common API types:

Key API Types

  1. REST (Representational State Transfer)

    • Most popular and widely used API architecture today
    • Uses standard HTTP methods (GET, POST, PUT, DELETE, etc.)
    • Stateless and resource-based
    • Typically returns data in JSON format
    • Well-suited for web and mobile applications
  2. SOAP (Simple Object Access Protocol)

    • Older protocol that uses XML for data exchange
    • More rigid structure and built-in security features
    • Still used in some enterprise and financial applications
  3. GraphQL

    • Newer query language for APIs developed by Facebook
    • Allows clients to request exactly the data they need
    • Single endpoint with flexible queries
    • Good for complex data requirements and reducing over-fetching
  4. RPC (Remote Procedure Call)

    • Simpler protocol for executing procedures on remote systems
    • Less common for public APIs

Considerations

Without specific information about Wrike's API, we can't definitively say which type they use. However, given current trends:

  • REST is the most likely choice for a modern SaaS platform API
  • GraphQL is gaining popularity but still less common than REST
  • SOAP is less likely unless Wrike has specific enterprise/security needs

To determine Wrike's actual API type, you would need to:

  1. Check Wrike's API documentation
  2. Look at example API requests/responses
  3. Contact Wrike support for clarification

The API type impacts how you would integrate with and use Wrike's API in your applications. Each type has its own best practices and implementation details.

Does the Wrike API have webhooks?

Yes, the official Wrike API does have webhooks. Here are the key points about Wrike's webhook functionality:

Types of Webhooks

Wrike offers three types of webhooks:

  1. Folder webhooks - Fire notifications about changes to tasks within a single folder or project.
  2. Account webhooks - Fire notifications about task, folder, and project-related events across the entire account.
  3. Space webhooks - Fire notifications about changes to tasks, folders, and projects within a single space.

Events You Can Subscribe To

Wrike supports a wide range of events that you can subscribe to with webhooks, including:

  • Task-related events: TaskCreated, TaskDeleted, TaskTitleChanged, TaskStatusChanged, TaskDatesChanged, etc.
  • Folder/Project-related events: FolderCreated, FolderDeleted, FolderTitleChanged, ProjectDatesChanged, etc.
  • Attachment events: AttachmentAdded, AttachmentDeleted
  • Comment events: CommentAdded, CommentDeleted
  • Approval events: TaskApprovalStatusChanged, FolderApprovalDecisionChanged, etc.
  • Custom field events: TaskCustomFieldChanged, FolderCustomFieldChanged
  • And many more

Key Points to Consider

  1. You can specify which events you want to subscribe to when creating a webhook.
  2. Webhooks can be set up to be "recursive", meaning they will listen to events for subfolders or tasks anywhere in the hierarchy.
  3. Wrike supports secure webhooks by signing event payloads with a secret key.
  4. Webhooks can be suspended if your endpoint is not accessible after multiple retries.

Creating a Webhook

To create a webhook, you would use an API call like this:

curl -g -X POST -H 'Authorization: bearer <access_token>' -d 'hookUrl=https://yourwebhookserver.com/event-handler' 'https://www.wrike.com/api/v4/webhooks'

Best Practices

  1. Use secure webhooks to ensure the authenticity of incoming webhook requests.
  2. Monitor the status of your webhooks and restart them if they become suspended.
  3. Be prepared to handle a potentially large volume of events, especially for account-wide webhooks.
  4. Use specific event subscriptions rather than subscribing to all events to reduce unnecessary traffic.

Wrike's webhook functionality provides a powerful way to integrate Wrike with other systems and react to changes in real-time.

Rate Limits and other limitations

The API Rate Limits for the Wrike API are as follows:

Rate Limits

Wrike implements rate limits on their API to ensure fair usage and maintain system stability. However, the specific rate limits are not explicitly stated in the provided search results [4].

Key points to consider:

  • Wrike acknowledges the existence of rate limits or quotas for requests in their FAQ section [4].
  • The exact numbers for these rate limits are not provided in the given information.
  • Rate limits are a common practice in API implementations to prevent abuse and ensure service availability for all users.

Best Practices

When working with the Wrike API, it's advisable to:

  1. Implement proper error handling in your code to deal with potential rate limit errors.
  2. Use efficient querying techniques to minimize the number of API calls.
  3. Consider implementing caching mechanisms to reduce the frequency of API requests.
  4. Contact Wrike support or consult their developer documentation for more specific information about rate limits.

Additional Information

While the search results don't provide detailed information about the rate limits, they do offer some useful insights for working with the Wrike API:

  • Wrike provides different versions of their API, and it's important to understand the differences between these versions [4].
  • The API supports users on the European Data Center (EU DC) [4].
  • OAuth2 is used for authentication in the Wrike API [4].
  • If you have specific questions not covered in their FAQ, Wrike encourages reaching out for additional support [4].

For the most up-to-date and accurate information about API rate limits, it's recommended to consult the official Wrike API documentation or contact their support team directly.

Latest API Version

Based on the search results provided, here is the answer to your question:

The most recent version of the Wrike API is version 4 (v4).

Key points:

  • Wrike API v4 was announced and made immediately available as of March 30, 2015 [2].

  • API v4 is described as "a new generation of REST APIs that is designed for improved security and scalability" [2].

  • The previous version, API v3, was deprecated and reached its end of life on June 30, 2019 [2].

Important differences between v3 and v4:

  1. API v4 can only access data from one account at a time, while v3 could access multiple accounts [5].

  2. The method URIs have changed in v4 compared to v3 [5].

  3. Authorization flows have been updated to allow account selection during the login process [5].

Migration:

If you are still using API v3, it is crucial to migrate to v4 as soon as possible, as v3 is no longer supported and API calls are not guaranteed to work [2]. Wrike provides a migration guide and assistance through their Developer Community [2][5].

To migrate from v3 to v4, you'll need to:

  1. Change the version identifier from "v3" to "v4" in all request URIs.
  2. Use the new authorization URI.
  3. Update your code to handle single-account access.
  4. Migrate existing API v3 permanent tokens to v4 [5].

For any questions or help regarding the migration, you can post on the Wrike API community forum [5].

How to get a Wrike developer account and API Keys?

To get a developer account for Wrike and create an API integration, you need to follow these steps:

1. Register in Wrike

The first step is to register for a Wrike account if you don't already have one. This is necessary to work with the Wrike API.

2. Authenticate

Once you have a Wrike account, you need to get familiar with OAuth 2.0, which is the authentication method used by Wrike's API.

Key points to consider:

  • Every API request must contain an Authorization header or an access_token parameter with the OAuth 2.0 access token.
  • Access scopes may be requested during the authorization process.

3. Make API Requests

After setting up authentication, you can start making API requests.

Key points:

  • The API methods are organized in a RESTful way and support GET, POST, PUT, and DELETE requests.
  • If a client can't execute all types of requests, GET requests can be used with an additional 'method' parameter.
  • Each API method requires specific scopes, which should be requested during authorization.

4. Use Available Resources

Wrike provides several resources to help developers:

  • A Postman collection of API requests, including most API endpoints and sample requests.
  • A Wrike environment file for Postman containing authentication token and API URL.
  • A guide on how to set up Postman for use with the Wrike API.

What can you do with the Wrike API?

Based on the search results provided, here is a list of data models that can be interacted with using the Wrike API, along with what is possible for each:

  1. Tasks
  • Create, read, update, and delete tasks
  • Assign tasks to users
  • Set due dates and priorities
  • Add comments and attachments
  1. Folders and Projects
  • Create, read, update, and delete folders and projects
  • Organize tasks within folders and projects
  • Set permissions and sharing settings
  1. Users
  • Retrieve user information
  • Manage user roles and permissions
  • Add or remove users from tasks and projects
  1. Comments
  • Add, read, update, and delete comments on tasks
  • Mention users in comments
  1. Attachments
  • Upload, download, and delete attachments
  • Associate attachments with tasks or folders
  1. Custom Fields
  • Create, read, update, and delete custom fields
  • Assign custom field values to tasks and projects
  1. Workflows
  • Create and manage custom workflows
  • Transition tasks through different workflow stages
  1. Timelines
  • Retrieve and update task schedules
  • Manage dependencies between tasks
  1. Time Entries
  • Log and retrieve time entries for tasks
  • Generate time reports
  1. Request Forms
  • Create and manage custom request forms
  • Process incoming requests
  1. Dashboards
  • Retrieve dashboard data
  • Create and update dashboard widgets
  1. Groups
  • Create and manage user groups
  • Assign permissions to groups

It's important to note that the specific capabilities for each data model may vary depending on the API version and the user's access rights. The Wrike API uses OAuth 2.0 for authorization, and access scopes may be requested during the authorization process.

For developers looking to interact with these data models, Wrike provides a Postman collection of API requests, which includes examples for most of the Wrike API calls. This can be a helpful tool for testing and understanding the API's capabilities.

When working with the Wrike API, it's crucial to consider data security and compliance. Wrike implements various security measures, including data encryption, role-based access control, and continuous data backup. Developers should be aware of these security features and ensure their integrations adhere to best practices for data protection.