# How do I store a bearer token value within a WS

**URL:** <https://forum.katalon.com/t/how-do-i-store-a-bearer-token-value-within-a-ws/54391>\
**Category:** API Testing\
**Tags:** api-testing, katalon-studio\
**Created:** [May 3, 2021, 3:24pm UTC](https://forum.katalon.com/t/how-do-i-store-a-bearer-token-value-within-a-ws/54391 "2021-05-03T15:24:04Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![ross](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/ross/32/16103_2.png) [@ross](https://forum.katalon.com/u/ross)\
**Post date:** [May 3, 2021, 3:24pm UTC](https://forum.katalon.com/t/how-do-i-store-a-bearer-token-value-within-a-ws/54391/1 "2021-05-03T15:24:04Z")

</div>

Hi guys,

How do I store a bearer token value retrieved (value withing the red box in the image) from a POST response in WS?  
I would like to store the value in a Global variable. This value will be used in other test cases

 ![image](https://europe1.discourse-cdn.com/katalon/original/3X/5/5/557a6f5114586982c281dea4f106a22c61b7bdad.png)

---

<div class="post-metadata">

**Author:** ![Andrej\_Podhajsky](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/andrej_podhajsky/32/1055_2.png) [@Andrej\_Podhajsky](https://forum.katalon.com/u/Andrej_Podhajsky)\
**Post date:** [May 4, 2021, 5:08am UTC](https://forum.katalon.com/t/how-do-i-store-a-bearer-token-value-within-a-ws/54391/2 "2021-05-04T05:08:33Z")

</div>

Hello,  
use JSON slurper to parse getResponseText() from there you can access and store value as you wish.  
If you use only TestObject storage i think verify scripts can be utilized for what you want achieve.

---

<div class="post-metadata">

**Author:** ![ross](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/ross/32/16103_2.png) [@ross](https://forum.katalon.com/u/ross)\
**Post date:** [May 4, 2021, 9:33am UTC](https://forum.katalon.com/t/how-do-i-store-a-bearer-token-value-within-a-ws/54391/3 "2021-05-04T09:33:28Z")

</div>

Hi @Andrej_Podhajsky, How would one do this? Could you possibly provide a code snippet example?

Regards

---

<div class="post-metadata">

**Author:** ![Andrej\_Podhajsky](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/andrej_podhajsky/32/1055_2.png) [@Andrej\_Podhajsky](https://forum.katalon.com/u/Andrej_Podhajsky)\
**Post date:** [May 7, 2021, 8:30am UTC](https://forum.katalon.com/t/how-do-i-store-a-bearer-token-value-within-a-ws/54391/4 "2021-05-07T08:30:17Z")

</div>

hello, so to get and store secure part of cookie i created custom keyword:

```auto
package com.swre
import static com.kms.katalon.core.checkpoint.CheckpointFactory.findCheckpoint
import static com.kms.katalon.core.testcase.TestCaseFactory.findTestCase
import static com.kms.katalon.core.testdata.TestDataFactory.findTestData
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject

import com.kms.katalon.core.annotation.Keyword
import com.kms.katalon.core.checkpoint.Checkpoint
import com.kms.katalon.core.checkpoint.CheckpointFactory
import com.kms.katalon.core.mobile.keyword.MobileBuiltInKeywords
import com.kms.katalon.core.model.FailureHandling
import com.kms.katalon.core.testcase.TestCase
import com.kms.katalon.core.testcase.TestCaseFactory
import com.kms.katalon.core.testdata.TestData
import com.kms.katalon.core.testdata.TestDataFactory
import com.kms.katalon.core.testobject.ObjectRepository
import com.kms.katalon.core.testobject.TestObject
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords
import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords

import internal.GlobalVariable

import org.openqa.selenium.WebElement
import org.openqa.selenium.WebDriver
import org.openqa.selenium.By

import com.kms.katalon.core.mobile.keyword.internal.MobileDriverFactory
import com.kms.katalon.core.webui.driver.DriverFactory

import com.kms.katalon.core.testobject.RequestObject
import com.kms.katalon.core.testobject.ResponseObject
import com.kms.katalon.core.testobject.ConditionType
import com.kms.katalon.core.testobject.TestObjectProperty

import com.kms.katalon.core.mobile.helper.MobileElementCommonHelper
import com.kms.katalon.core.util.KeywordUtil

import com.kms.katalon.core.webui.exception.WebElementNotFoundException

import org.openqa.selenium.Cookie

import com.kms.katalon.core.webui.keyword.WebUiBuiltInKeywords as WebUI

class cookie {

	@Keyword
	def setRRCookie() {
		WebUI.navigateToUrl('https://serviceToGrabCookieFrom/')
//in my case LtpaToken2
		def myCookie = DriverFactory.getWebDriver().manage().getCookieNamed("LtpaToken2")

		GlobalVariable.rrCookie = myCookie
	}
}

```

definition of global variable is here:

```auto
   <GlobalVariableEntity>
      <description></description>
      <initValue>null</initValue>
      <name>rrCookie</name>
   </GlobalVariableEntity>

```

and use in script is like this:

```auto
import static com.kms.katalon.core.testobject.ObjectRepository.findTestObject

import com.kms.katalon.core.annotation.Keyword
import com.kms.katalon.core.logging.KeywordLogger
import com.kms.katalon.core.util.KeywordUtil as KU
import com.kms.katalon.core.webservice.keyword.WSBuiltInKeywords as WS

import internal.GlobalVariable

def slurper = new groovy.json.JsonSlurper()

CustomKeywords.'com.swre.cookie.setRRCookie'()
	
def rsp01 = WS.sendRequest(findTestObject('Object Repository/IRAMP-RR/RR_REST/GetCreatedCalcs',[('RRID'): this.RRID]))
assert rsp01.getStatusCode() == 200
KU.logInfo("*** text of rsp01.getResponseText \n${rsp01.getResponseText()}")
def calcsOfRR = slurper.parseText(rsp01.getResponseText())

```

object definition:

 ![image](https://europe1.discourse-cdn.com/katalon/original/3X/0/c/0c44089f99b19de55e61819114fbcf04ead1b3f2.png)

---

<div class="post-metadata">

**Author:** ![ross](https://dub1.discourse-cdn.com/katalon/user_avatar/forum.katalon.com/ross/32/16103_2.png) [@ross](https://forum.katalon.com/u/ross)\
**Post date:** [May 7, 2021, 8:42am UTC](https://forum.katalon.com/t/how-do-i-store-a-bearer-token-value-within-a-ws/54391/5 "2021-05-07T08:42:58Z")

</div>

Many thanks @Andrej_Podhajsky for the comprehensive explanation

Very much appreciated
