Beginners Guide: Get Data From Wrike’s API Without Coding via Postman

Mastering REST API is not an easy job — for the majority of use cases some advanced technical knowledge is needed, and the ability to code is essential if you want to create custom applications which fit your specific business needs.

But what if you’re not a developer or programmer? What if you’re a business person and you want to use Wrike’s API to access data? Is there a way to use APIs without coding?

The answer is YES! There are plenty of ways to interact with APIs without writing a single line of code. In this post I’ll describe one of the easiest ways to get started with Wrike’s API by using Postman, a popular Chrome add-in (now also a separate application).

Before You Start

You need:

  • The Postman app. Get it here.
  • An active Wrike account. It can be any subscription type.
  • A registered Wrike API application and its permanent token. For more details see our post Get Started with Wrike’s API and our article about the Developer Portal.

Background on Wrike’s API and Postman

Wrike

Wrike’s API supports GET, POST, PUT, and DELETE type requests and produces a JSON response which contains the entity type in the ‘kind’ field and an array of entities in the ‘data field.

HTTP requests are needed to get, post, modify, or delete data tied to a specific endpoint, which is indicated in the request URL. All HTTP requests on Wrike's primary data center start with ‘https://www.wrike.com/api/v4/’ base URL. You can determine your base URL by looking at the URL in the address bar when you access your Wrike instance in a browser. However, the URL endpoints may vary as they are related to specific entities on Wrike’s side (like /tasks, /folders, /contacts, etc).

Additional parameters are required to define or filter data. You can find the list of supported methods and parameters in our API documentation.

Postman

Postman is an application used for interacting with APIs. Postman works by sending HTTP requests and can add request headers and parameters. The request builder is organized by tabs—one tab per request. Responses (from the API or server you're working with) are displayed on a separate section of the same tab, which makes Postman convenient for both sending and receiving data.

Set Up Postman to Access Wrike Data

Before starting we need to authorize Postman so that it can access data in Wrike. To do this we need to pass Postman’s Authorization header to Wrike’s API.

  1. Set up an environment in Postman. Check Postman’s guide on setting up environments to learn how to do this.
  2. Create the ‘access_token’ Key with the Key Value editor and paste your Wrike app’s permanent access token as the Value. Click  ‘Add’ and close the environment editing interface.
  3. Make sure your custom environment is selected in the picker in the top-right corner of your main screen.
  4. You can now add the Authorization header to any request (this step is required for requests to Wrike’s API) by using the key ‘Authorization’ and value: ‘bearer {{access_token}}’.

Use Postman to Get Data from Wrike’s API

All preparations are done, now on to the fun part!

In the example below, we’re going to get a complete list of Timelog-type records from the entire Wrike account

Obtain the list of Timelog entries.

Make a GET call to https://www.wrike.com/api/v4/timelogs . More details on our Query Timelogs page.

A list of Timelog records is generated, with extra parameters in JSON format.

Please note, you won’t be able to obtain data related to Tasks, Folders, or Projects which aren’t shared with the user you are authorized as.  

You can use the same framework to pull the hours logged in the Time Tracker for any Wrike user, Folder, Project, or Task. You can use parameters to narrow down the results, our docs will provide you with the needed information.

Postman also has detailed documentation, which you may find helpful for mastering the possibilities available via API: Postman help docs.

Let me know how this works for your team! Will be happy to answer your questions.

3
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
32 comentarios

Hi Pavel,

This is a great tutorial!  I am running into an error message once I get to the step "Get the list of Wrike accounts your user is a member of."

I created an environment with a key called "access_token" and a value with our specific permanent access token that was obtain through creating our app in Wrike.

I added a header with a key of "Authorization" and a value of "bearer {{access_token}}"

I selected the Wrike environment that was created, entered "https://wrike.com/api/v3/accounts" as the GET url and the response is:

{
"errorDescription": "Access token is unknown or invalid",
"error": "not_authorized"
}

Any trouble shooting ideas to resolve this error?  

Thank you in advance!

Jacob.

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
Avatar
Pavel M

Hi Jacob! Thanks for your question! Based on your description everything looks fine to me.

However, I would again double-check several things here:

  • please make sure your access token is correct (maybe generate a new one)
  • check out the selector for environments https://www.screencast.com/t/BsBZmDCy
  • make sure the syntax for environment key is correct 

Please let me know if you checked everything, but still have no success.



0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

I received the same unauthorized error. I checked and even generated a new access token.

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
Avatar
Pavel M

Hi Gaurav! I've noticed that in some cases this error can be returned if you use https://wrike.com.. instead of https://www.wrike.com... path (although both should be working fine in theory, as there's redirect in place). Could that be your case?

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

I am still having the same unauthorized issue, even when adjusting the settings to use https://www.wrike.com/api/v3/accounts

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hi 

I am receiving a CORS error on attempting to use POST:

{
"errorDescription": "Failed to authorize CORS request",
"error": "not_authorized"
}

I do not receive a similar error on using GET.

I am experiencing this using Postman and also a PHP based script running on a https domain of mine (Note: I have added this domain in the 'HTTP access control (CORS)' section in my Wrike app configuration settings.

Any help on this would be most appreciated.

UPDATE

I recreated the app within Wrike API console and created new access token. The issue is not happening now for the newly created app!

1
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
Avatar
Pavel M

Hi Aonghus! I am glad you had it resolved! If you are not adding CORS domain in Wrike's Dev Console for your App, no validation will happen on Wrike side, so it's better to leave it blank unless you are really intended to use it. 

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

I am total beginner trying to follow this guide, and I am having trouble setting up postman. In your section, "Set Up Postman to Access Wrike Data" I am not sure if I have done the correct thing for step 1, since the linked article has no discrete instructions for creating a new environment. I named a new environment and then saved it. I am now firmly stuck on step 2 of the same section. The linked screenshot will not load and I cannot figure out what you are talking about. Where do I enter this information? I may have found the page by clicking "Params". Is that correct? If so, where do I enter the info? I am also confused by step 4 of the same section, not sure what to ask until I figure out these problems first, though. Please help me get this working so I can figure out what to learn next. Thanks for your time. 

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hi, can anyone please offer some help? If you could get me up and running, I would be happy to write better setup instructions and provide working links; I am a technical writer by profession.

1
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
Avatar
Pavel M

Hi Jay! Sorry to make you wait, I am ready to help you :)

It looks like Postman docs have modified links for Environments instructions, the correct new link for Step 1 is: https://www.getpostman.com/docs/postman/environments_and_globals/manage_environments

The same thing is about the Key Value editor - I could not find any new suitable article.
Do you see something like this when editing your Environment? https://www.screencast.com/t/vOoq9h5SpQN

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Pavel, many thanks for your help. I contacted postman as well and they emailed about the same time you commented. Their support section is throwing a lot of 404's. Also, I was specifically looking for a menu called "Key Value Editor" based on your wording, which I now realize is simply a part of the "Manage Environment" screen. I have now configured postman and was successful running the test for the account information.

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
Avatar
Pavel M

Awesome! I am glad you have figured it out! By the way, the 'Key Value Editor' article is now back, my link should be functioning :)
Thanks for drawing Postman's attention to the issue.

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hi Pavel-

I have exported comments from Asana using Postman and would like to import them into Write where task names match.  Do you know of a guide to import multiple records using Postman instead of just one at a time?  Thanks.

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

It might be a helpful note that you have to adjust the url if your account is hosted in the EU data center. In this case you have to use https://app-eu.wrike.com/api/v3/accounts.

5
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

I want to pull project tasks (including all comments and additional tabs data) from Wrike and push the data to ZD via API using POSTMAN. Does anyone know if this is possible and if there is any documentation out there that could assist me?

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
Avatar
Hugh

Hi Asaf Max!

It is currently not possible to pull comments and tasks into the same call.

Hope this helps! If you have any questions, let me know.

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Thanks for this article. I wish I would have found it a few months ago! It does need to be updated for the current version of Wrike API. I was able to get it to work by adjusting the following:

  • You don't need to put the account id in the request URL if you are using the permanent token
  • An example URL is https://www.wrike.com/api/v4/folders/ (note the v4 in the URL)
  • Add a key to the headers instead of using the Authorization setup with the Authorization as the KEY and VALUE = bearer {{access_token}} 
1
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

I try:

curl -g -X GET -H "Authorization: bearer eyJ0dCI6InAiLCJhbGciOiJIUzI1NiIsInR2IjoiMSJ9.eyJkIjoie1wiYVwiOjUxODY0NTksXCJpXCI6NDcwMSxcImNcIjo0NjAwNTA5LFwidVwiOjEyMTMzMzQxLFwiclwiOlwiVVMyXCIsXCJzXCI6W1wiV1wiLFwiRlwiLFwiSVwiLFwiVVwiLFwiS1wiLFwiQ1wiLFwiRFwiLFwiTVwiLFwiQVwiLFwiTFwiLFwiUFwiXSxcInpcIjpbXSxcInRcIjowfSIsImlhdCI6MTYzOTQ0NTY1OH0._rEOI0RsU5sVfXKd84A4jM9_xn1x5BS5eGOV00TzMp0" "https://www.wrike.com/api/v4/folders"

But I receive the message:

{"errorDescription":"Access token is unknown or invalid","error":"not_authorized"}

What I need to do?

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hi Team,

We are trying to fetch the data from the Wrike using the Python AWS lambda. We have an Wrike URL and trying to fetch the data from that. While doing that it was asking for the body passed that one as well still it shows as an error as body is not passing. Can someone help me on this. Attaching the error.

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hey Lakshmi Mani Sravan Kumar Chilakala, I can see you've chatted about this with our Support team already 👍

Lisa Community Team at Wrike Wrike Product Manager Become a Wrike expert with Wrike Discover

Lisa Wrike Team member Become a Wrike expert with Wrike Discover

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

We are using the ServiceNow Wrike Spoke and pretty regularly (daily or every other day) encounter a connection error such as:  {"errorDescription":"Access token is unknown or invalid","error":"not_authorized"} when using the Get all folders API (v4). When we get new authorization it works. 

My question is, how can we keep this from happening?  Is there a timeout?

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
Avatar
Cansu

Hi Premise Health, our Support agents are in touch with you via email about your question here👍🏼

1
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Once I finally got passed the error:

{"errorDescription":"Access token is unknown or invalid","error":"not_authorized"}

 

I get:

 

 

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Expires"  content="-1"/>
    <meta http-equiv="Pragma" content="no-cache"/>
    <meta http-equiv="Cache-Control" content="no-cache"/>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <title>Something went wrong...</title>
    <style>
        .body{
            font:17px/20px Myriad Pro,Arial;
            color:#333;
            text-align:center;
            padding-top:30px;
        }
        .header{
            padding-top:15px;
            padding-bottom: 15px;
            font-size:33px;
            line-height:33px;
            color:#000;
            font-weight:bold;
        }
        .email{
            color:#0099CC;
            text-decoration:none;
        }
        .email:hover{
            text-decoration:underline;
        }
        hr{
            margin: auto;
            width:255px;
            border-top:#E9E9E9 1px solid;
            border-bottom:#fff 1px solid;
            border-right:0;
            border-left:0;
        }
        .addedpadding {
            padding:0 0 13px 0;
        }
        .backlink {
            background: #24909d; color: #f5f5dc;
        }
        .status {
            color:#999;
            font-size:13px;
        }
    </style>
</head>
<body>
<div class="body">
    <img src="//lst.wrike.com/i/logo.png" width="94" height="33" alt="Wrike logotype"/>
    <hr/>

    <h1 class="header">Something went wrong...</h1>
    <p class="addedpadding">
        This operation can't be performed at the moment.<br>
        We offer our sincere apologies for the inconvenience.<br>
        We're already aware of it and we'll resolve it as soon as we can.<br><br>
        Please, try again. If the glitch persists, please contact our <br>Customer Support Team <a class="email" href="https://help.wrike.com/hc/requests/new">here</a>.
    </p>

    <p class="addedpadding">
        <a href="javascript:history.back();" style="text-decoration: none">
            <span class="email">&laquo; Previous Page</span>
        </a>
    </p>

    <hr/>

    <span class="status">Error 500</span>
</div>
</body>
</html>

C:\Users\fsant>curl -g -X GET -H "Authorization: bearer eyJ0dCI6InAiLCJhbGciOiJIUzI1NiIsInR2IjoiMSJ9.eyJkIjoie1wiYVwiOjUxNDYyNTYsXCJpXCI6MjE1NzEsXCJjXCI6NDYwMTAyMyxcInVcIjoxMjA1MjYwMSxcInJcIjpcIlVTMlwiLFwic1wiOltcIldcIixcIkZcIixcIklcIixcIlVcIixcIktcIixcIkNcIixcIkRcIixcIk1cIixcIkFcIixcIkxcIixcIlBcIl0sXCJ6XCI6W10sXCJ0XCI6MH0iLCJpYXQiOjE2NTg2MDkxNDd9.8ya9WgroWp_tqN4NHtRI6ZFJoy2D9gc2bqoaMOr-aUo" "https://www.wrike.com/api/v4/folders"

 

 

 

 

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Expires"  content="-1"/>
    <meta http-equiv="Pragma" content="no-cache"/>
    <meta http-equiv="Cache-Control" content="no-cache"/>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <title>Something went wrong...</title>
    <style>
        .body{
            font:17px/20px Myriad Pro,Arial;
            color:#333;
            text-align:center;
            padding-top:30px;
        }
        .header{
            padding-top:15px;
            padding-bottom: 15px;
            font-size:33px;
            line-height:33px;
            color:#000;
            font-weight:bold;
        }
        .email{
            color:#0099CC;
            text-decoration:none;
        }
        .email:hover{
            text-decoration:underline;
        }
        hr{
            margin: auto;
            width:255px;
            border-top:#E9E9E9 1px solid;
            border-bottom:#fff 1px solid;
            border-right:0;
            border-left:0;
        }
        .addedpadding {
            padding:0 0 13px 0;
        }
        .backlink {
            background: #24909d; color: #f5f5dc;
        }
        .status {
            color:#999;
            font-size:13px;
        }
    </style>
</head>
<body>
<div class="body">
    <img src="//lst.wrike.com/i/logo.png" width="94" height="33" alt="Wrike logotype"/>
    <hr/>

    <h1 class="header">Something went wrong...</h1>
    <p class="addedpadding">
        This operation can't be performed at the moment.<br>
        We offer our sincere apologies for the inconvenience.<br>
        We're already aware of it and we'll resolve it as soon as we can.<br><br>
        Please, try again. If the glitch persists, please contact our <br>Customer Support Team <a class="email" href="https://help.wrike.com/hc/requests/new">here</a>.
    </p>

    <p class="addedpadding">
        <a href="javascript:history.back();" style="text-decoration: none">
            <span class="email">&laquo; Previous Page</span>
        </a>
    </p>

    <hr/>

    <span class="status">Error 500</span>
</div>
</body>
</html>

 

Can someone please help here?

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos
Avatar
Cansu

Hi Felicia Santoro-Petti, I see that you have an ongoing conversation with our Support team about this. Please let me know if I can help you with anything else. 

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

We are using the ServiceNow Wrike Spoke and pretty regularly (daily or every other day) encounter a connection error such as:  {"errorDescription":"Access token is unknown or invalid","error":"not_authorized"} when using the Get all folders API (v4). When we get new authorization it works. 

My question is, how can we keep this from happening?  Is there a timeout?

Update:  Keep getting the following error when attempting to create a task "Error: <,Detail: Unexpected token: <"

 

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hey Premise Health! I've asked a Support agent to reach out to you to help with this, I can see they have done so 👍 Please let me know if I can help you with anything else! 

Lisa Community Team at Wrike Wrike Product Manager Become a Wrike expert with Wrike Discover

Lisa Wrike Team member Become a Wrike expert with Wrike Discover

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hi! 

Quick question: Is the authorization via Postman possible only when you have a permanent token generated ? 

As I'm trying to set up OAuth2 authorization to be used further in my script, I folowed this guide : https://developers.wrike.com/oauth-20-authorization/ but there is nowhere mentioned how to generate the authorization code as an http request.  I tried making a POST request with the paramenters mentioned in the URL but I get a long response with no code in it. Is it something I'm missing? 

PS: just pasting the URL in the browser as stated in the guide (step 1&2) works just fine to retrieve the code, but i need to be able to do that in my authorization step in the script as well.

Thanks!

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hi Cristina Stir, welcome to the forums 🙂

I've asked our API experts to reach out to you about your question 👍 Please let me know if there's anything else I can help you with! 

Lisa Community Team at Wrike Wrike Product Manager Become a Wrike expert with Wrike Discover

Lisa Wrike Team member Become a Wrike expert with Wrike Discover

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Hello,

I also have problems with the API when using the permanent token.

I downloaded and configured the Postman-Lib you provide, entered the Bearer-Token I got, but it simply says that I am not authorized, just like the others in the comments here mentioned.

Has there been an answer from the API-experts?

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Welcome to the forum, Jeremy Gebauer 👋 Because this can be a different setup for different users, I've asked our specialists to reach out to you too 👍

Lisa Community Team at Wrike Wrike Product Manager Become a Wrike expert with Wrike Discover

Lisa Wrike Team member Become a Wrike expert with Wrike Discover

0
👍 Spot On 💡 Innovative Approach 💪 Stellar Advice ✅ Solved 🪄 Remove Kudos

Folllowing List for Post: Beginners Guide: Get Data From Wrike’s API Without Coding via Postman
[this list is visible for admins and agents only]

Arriba
Didn’t find what you were looking for? Write new post